Eli Zaretskii [Mon, 19 Feb 2001 11:47:16 +0000 (11:47 +0000)]
* demangle.c (demangling_style_names): New variable.
(_initialize_demangler): Fill demangling_style_names with the
names of known demangling styles from libiberty_demanglers[]. Use
add_set_enum_cmd instead of add_set_cmd, to get completion on
demangling style names.
* proc-api.c (_initialize_proc_api): Make `procfs-file' use
file-name completion.
* remote-rdi.c (_initialize_remote_rdi): Ditto for `rdilogfile'.
* solib.c (_initialize_solib): Ditto for `solib-search-path' and
`solib-absolute-prefix'.
* tracepoint.c (_initialize_tracepoint): Ditto for
`save-tracepoints'.
* win32-nat.c (_initialize_inftarg): Ditto for `dll-symbols'.
* cli/cli-cmds.c (init_cli_cmds): Make `shell' and `make' use
file-name completion.
* infcmd.c (_initialize_infcmd): Make the following commands use
the file-name completer: `tty', `args', `path', `paths', and
`run'.
David O'Brien [Mon, 19 Feb 2001 06:40:29 +0000 (06:40 +0000)]
001-02-18 David O'Brien <obrien@FreeBSD.org>
* configure.in (cpu_type, arch): Add a generic FreeBSD specification as
all FreeBSD platforms should look the same at this level.
* configure: Rebuilt.
* config/tc-i386.c: Add support for old FreeBSD a.out hosts.
Approved by: Philip Blundell <philb@gnu.org>
Message-Id: <E14URxF-00023n-00@kings-cross.london.uk.eu.org>
David O'Brien [Mon, 19 Feb 2001 06:33:41 +0000 (06:33 +0000)]
2001-02-18 David O'Brien <obrien@FreeBSD>
* configure.in: Recognize FreeBSD/arm, FreeBSD/PowerPC, and treat
FreeBSD/i386-CURRENT differently until I can figure out the needed
corefile changes.
* configure: Regenerate.
* config.bfd: Recognize FreeBSD/x86-64, FreeBSD/ia64, FreeBSD/arm,
FreeBSD/PowerPC, and FreeBSD/sparc64.
Approved by: Philip Blundell <philb@gnu.org>
Message-Id: <E14URxF-00023n-00@kings-cross.london.uk.eu.org>
Michael Chastain [Sun, 18 Feb 2001 19:59:57 +0000 (19:59 +0000)]
2001-02-18 Michael Chastain <chastain@redhat.com>
* gdb.c++/classes.exp (do_tests): Change runto statements
from "runto 'foo(void)'" to "runto 'foo'". This makes the
statements demangler agnostic.
* gdb.c++/virtfunc.exp (do_tests): Likewise.
(gdb_virtfunc_restart): Likewise.
Eli Zaretskii [Sun, 18 Feb 2001 07:22:17 +0000 (07:22 +0000)]
* go32-nat.c: Include i387-nat.h.
(fetch_register): New function, uses some of the guts of
go32_fetch_registers and i387_supply_register.
(go32_fetch_registers): Most of the code moved into
fetch_register. Use i387_supply_fsave.
(store_register): Use i387_fill_fsave instead of custom code.
(go32_store_registers): Use i387_fill_fsave.
Eli Zaretskii [Sun, 18 Feb 2001 07:04:11 +0000 (07:04 +0000)]
* completer.c (gdb_completer_file_name_break_characters): Remove
slash from file-name break characters.
[__MSDOS__]: Special definition for DOS/Windows file names.
(line_completion_function): When completing on file names, bump
`p' to the first file-name constituent character of `word', before
invoking the completer.
David O'Brien [Sun, 18 Feb 2001 02:17:24 +0000 (02:17 +0000)]
2001-02-17 David O'Brien <obrien@FreeBSD.org>
* configure.host: Add a generic FreeBSD configuration entry such that
all [modern] FreeBSD systems on all platforms will look the same.
Approved by: Alan Modra <alan@linuxcare.com.au>
<Pine.LNX.4.21.0102172155140.30011-100000@front.linuxcare.com.au>
Mark Kettenis [Sat, 17 Feb 2001 09:01:14 +0000 (09:01 +0000)]
* i387-nat.c: Include "i387-nat.h". Use regnum instead of regno
consistently for parameter names. Fix comments accordingly.
(i387_supply_register): New function.
(i387_supply_fsave): Implement using i387_supply_register.
* i387-nat.h: Use regnum instead of regno consistently for
parameter names. Fix comments accordingly.
(i387_supply_register): New prototype.
Michael Chastain [Fri, 16 Feb 2001 18:03:22 +0000 (18:03 +0000)]
2001-02-12 Michael Chastain <chastain@redhat.com>
* gdb/somsolib.c (som_solib_add_solib_objfile): Do not use
section relocation feature of syms_from_objfile. Do my own
section relocation, offsetting each section of the som by
either text_addr - text_link_addr or data_start.
Michael Chastain [Wed, 14 Feb 2001 19:54:04 +0000 (19:54 +0000)]
2001-02-11 Michael Chastain <chastain@redhat.com>
* gdb.c++/cplusfuncs.cc (dm_type_char_star): New function.
Helps the test script figure out which demangler is in use.
(dm_type_foo_ref): Ditto.
(dm_type_int_star): Ditto.
(dm_type_long_star): Ditto.
(dm_type_unsigned_int): Ditto.
(dm_type_void): Ditto.
(dm_type_void_star): Ditto.
* gdb.base/cplusfuncs.exp (probe_demangler): New function.
Probe the gdb demangler and set variables to accommodate
formatting differences.
(info_func_regexp): New function. Same as info_func, but
matches against a regexp.
(info_func): Match against a literal string.
(print_addr_2): New function. Match against a literal string,
which can be different from the input to gdb.
(print_addr): Simply call print_addr_2 with the same argument twice.
(test_lookup_operator_functions): Use demangler formatting variables.
Blow away the xfails and workarounds for gnats gdb bug gdb/18. Sort
the tests in the same order as the C++ class declaration.
(test_paddr_operator_functions): Ditto.
(test_paddr_overloaded_functions): Ditto.
(test_paddr_hairy_functions): Use demangler formatting variables.
Add reference to gdb/19 for related tests.
(do_tests): Call probe_demangler.
Andreas Jaeger [Wed, 14 Feb 2001 10:57:47 +0000 (10:57 +0000)]
2001-02-14 Bo Thorsen <bo@suse.de>
* elf64-x86-64.c: Small formatting fixes and rearrangements of code.
(elf64_86_64_size_info): Struct added to fix a problem
with the hashtable string entries.
(elf64_x86_64_adjust_dynamic_symbol): Add generation of .got.plt.
(elf64_x86_64_size_dynamic_sections): A FIXME removed.
(elf64_x86_64_size_dynamic_sections): Fix a dynamic entry and
remove the FIXME for this.
(elf64_x86_64_adjust_dynamic_symbol): Fix check for unneeded .plt
section. Also removed the FIXME for it.
(x86_64_elf_howto_table): Use bfd_elf_generic_reloc.
(ELF_DYNAMIC_INTERPRETER): Fix the name of the dynamic linker.
(elf64_x86_64_finish_dynamic_sections): Enable .got.plt writing.
Jim Wilson [Wed, 14 Feb 2001 01:46:10 +0000 (01:46 +0000)]
Address comment from Richard about relocs always needing a type.
* config/tc-ia64.c (operand_match, case TAG13): Make a BFD_RELOC_UNUSED
reloc instead of a 0 reloc.
(md_apply_fix3): Check for BFD_RELOC_UNUSED instead of 0, and mark it
as done.
* config/tc-ia64.h (TC_RELOC_RTSYM_LOC_FIXUP): Likewise.
H.J. Lu [Tue, 13 Feb 2001 22:23:33 +0000 (22:23 +0000)]
2001-02-13 H.J. Lu <hjl@gnu.org>
* ldexp.h (node_type): Add etree_provided.
* ldexp.c (exp_fold_tree): Handle etree_provided. Set the node
type to etree_provided if defined by PROVIDE. Allow updating
for etree_provided.
(exp_print_tree): Handle etree_provided.
* mpw-elfmips.c (gldelf32ebmip_find_exp_assignment): Handle
etree_provided.
Ian Lance Taylor [Tue, 13 Feb 2001 21:27:52 +0000 (21:27 +0000)]
* write.c (is_dnrange): Stop as soon as the address becomes
larger.
(relax_frag): Add segment parameter. Only call symbol_get_frag
once. Only call is_dnrange if the symbol is in the same segment,
and the symbol address is larger.
(relax_segment): Pass segment to md_relax_frag and relax_frag.
* write.h (relax_frag): Update declaration.
* config/tc-fr30.c (fr30_relax_frag): Add segment parameter. Pass
it to relax_frag.
* config/tc-m32r.c (m32r_relax_frag): Likewise.
* config/tc-m32r.h (md_relax_frag): Add segment parameter.
(m32r_relax_frag): Update declaration.
* config/tc-mips.h (md_relax_frag): Add segment parameter.
* config/tc-tic54x.h (md_relax_frag): Likewise.
* doc/internals.texi (CPU backend): Update documentation for
md_relax_frag.
DJ Delorie [Tue, 13 Feb 2001 19:23:08 +0000 (19:23 +0000)]
* peicode.h (coff_swap_filehdr_out) [COFF_IMAGE_WITH_PE]: Define
as _bfd_XXi_only_swap_filehdr_out.
(pe_mkobject) [PEI_FORCE_MINIMUM_ALIGNMENT]: Set
pe->force_minimum_alignment to TRUE.
(pe_mkobject) [PEI_TARGET_SUBSYSTEM]: Set pe->target_subsystem to
PEI_TARGET_SUBSYSTEM.
(pe_print_private_bfd_data): Call
_bfd_XX_print_private_bfd_data_common() instead of
_bfd_pe_print_private_bfd_data_common().
(pe_bfd_copy_private_bfd_data): Call
_bfd_XX_bfd_copy_private_bfd_data_common() instead of
_bfd_pe_bfd_copy_private_bfd_data_common().
(coff_bfd_copy_private_section_data): Define as
_bfd_XX_bfd_copy_private_section_data instead of
_bfd_pe_bfd_copy_private_section_data.
(coff_get_symbol_info): Define as _bfd_XX_get_symbol_info instead
of a _bfd_pe_get_symbol_info.
* peigen.c: Delete.
* peXXigen.c: Renamed from peigen.c.
(COFF_WITH_XX): Define this macro (will get expanded into
COFF_WITH_pep or COFF_WITH_pe, depending on whether this is being
compiled as peigen.c or pepigen.c.
[COFF_WITH_pep]: Include "coff/ia64.h" instead of "coff/i386.h" to
define the canonical PEP structures and definitions.
(_bfd_XXi_swap_aouthdr_out): If pe->force_minimum_alignment is in
effect, enforce minimum file and section alignments. If
extra->Subsystem is IMAGE_SUBSYSTEM_UNKNOWN, set it to
pe->target_subsystem (this defaults to IMAGE_SUBSYSTEM_UNKNOWN,
so, by default, this is a no-op).
* libpei.h: Rename COFF_WITH_PEP to COFF_WITH_pep.
(_bfd_XX_bfd_copy_private_bfd_data_common): Add macros to map
_bfd_XXfoo to _bfd_pepfoo if COFF_WIT_PEP is defined and to
_bfd_pefoo if it's not defined. Use these macros to define
coff swap macros.
* libcoff.h (pe_tdata): Add members target_subsystem and
force_minimum_alignment.
* efi-app-ia64.c (COFF_WITH_pep): Rename COFF_WITH_PEP to
COFF_WITH_pep.
(PEI_TARGET_SUBSYSTEM): Rename from PEI_DEFAULT_TARGET_SUBSYSTEM.
* configure.in (bfd_efi_app_ia64_vec): Use pepigen.lo instead of
peigen.lo.
* coff-ia64.c: Rename COFF_WITH_PEP to COFF_WITH_pep.
(AOUTSZ): Rename PEP64AOUTSZ and PEP64AOUTHDR to PEPAOUTSZ and
PEPAOUTHDR.
* Makefile.in (BFD64_BACKENDS): Mention pepigen.lo.
(BFD64_BACKENDS_CFILES): Mention pepigen.c
(peigen.c): Add rule to generate from peXXigen.c.
(pepigen.c): Ditto.
(pepigen.lo): List dependencies for pepigen.lo.
Alan Modra [Tue, 13 Feb 2001 12:44:19 +0000 (12:44 +0000)]
Handle long jumps for .code16 and .arch < 386 by using a two
instruction sequence consisting of a conditional jump of the
opposite sense around an unconditional jump to the target.
Add jumps/nojumps .arch modifier.
Michael Sokolov [Sun, 11 Feb 2001 23:11:39 +0000 (23:11 +0000)]
* readelf.c (struct unw_aux_info): Remove const from the info member.
(process_unwind): Don't type-cast the third argument to the
GET_DATA_ALLOC macro.
Eli Zaretskii [Sun, 11 Feb 2001 13:37:32 +0000 (13:37 +0000)]
* gdb.texinfo (Environment): Document that `path' does not change
the value of PATH in GDB's own environment (it did in the past,
but that was changed on March 15, 1994). Reported by Doug Evans
<dje@transmeta.com>.
Chris Demetriou [Sat, 10 Feb 2001 22:25:10 +0000 (22:25 +0000)]
2001-02-10 Chris Demetriou <cgd@broadcom.com>
* configure.in: Make 'mipself' and 'mipsecoff' emulations
map to MIPS-specific files, as they used to do before the
change on 2000-05-21.
* configure: Regerate.
Peter Schauer [Sat, 10 Feb 2001 12:01:11 +0000 (12:01 +0000)]
Get rid of AIX specific PC_LOAD_SEGMENT, replace with PC_SOLIB.
* xcoffsolib.c (xcoff_solib_address): Renamed from
pc_load_segment_name. Return NULL if address is not in a shared
library. Cleanup shared library name construction, using xasprintf.
Format shared library member names consistent with format in exec.c.
(solib_info): Format shared library member names consistent with
format in exec.c.
* config/rs6000/nm-rs6000.h: Replace PC_LOAD_SEGMENT with PC_SOLIB,
using xcoff_solib_address for PC_SOLIB definition.
* stack.c (print_frame): Remove PC_LOAD_SEGMENT code, no longer
needed.
* emulparams/elf64_ia64.sh (OTHER_READONLY_SECTIONS): Add
.IA_64.unwind.* pattern to unwind table section and
.IA_64.unwind_info* pattern to unwind info section.
* config/tc-ia64.h (md_elf_section_type): New macro.
(ELF_TC_SPECIAL_SECTIONS): Drop .IA_64.unwind and .IA_64.unwind_info
(they're now handled via ia64_elf_section_type.
* config/tc-ia64.c (unwind): New members saved_text_seg,
saved_text_subseg, and force_unwind_entry.
(optimize_unw_records): New function to optimize away unnecessary
unwind directives.
(ia64_elf_section_type): New function.
(output_unw_records): Generate unwind info only if the size is
non-zero or if it's forced for some other reason (e.g.,
handlerdata or a personality routine).
(generate_unwind_image): Don't switch back to previous
section---stay inside the unwind info section instead so that
handlerdata that may follow goes into the right place.
(dot_handlerdata): Force generation of unwind entry and save the
current active text segment before generating unwind image.
(dot_unwentry): Force generation of unwind entry.
(dot_personality): Ditto.
(dot_endp): Generate unwind table entry only if there is
some unwind info or the unwind entry was forced.
* config/tc-ia64.c (make_unw_section_name): New macro to form
unwind section name.
(generate_unwind_image): Add "text_name" argument. Use it to
form unwind section name.
(dot_handlerdata): Determine current segment (section) name and
pass it to generate_unwind_image().
(dot_endp): Determine current segment (section) name and use
it to determine the appropriate unwind section name.
(ia64_md_do_align): Add missing ATTRIBUTE_UNUSED declarations to
n, fill, and max arguments.
* elfxx-ia64.c (is_unwind_section_name): New function. Returns
true if section name is an unwind table section name.
(elfNN_ia64_additional_program_headers): Count each unwind section
separately.
(elfNN_ia64_modify_segment_map): Install one unwind program header
for each unwind separate section. Note: normally the linker
script merges the unwind sections that go into a single segment,
so this still generates at most one unwind program header per
segment.
* elfxx-ia64.c (elfNN_ia64_section_from_shdr): Accept any section
name for SHT_IA_64_UNWIND, not just .IA_64.unwind.
(elfNN_ia64_fake_sections): Mark sections with names that start
with .IA_64.unwind but not with .IA_64.unwind_info as an IA-64
unwind section.
* elfxx-ia64.c (elfNN_ia64_final_write_processing): New function.
Use it to make sh_info in unwind section point to the text section
it applies to.