* Makefile.def (target_modules): Remove stage parameter,
it is always true now.
* Makefile.tpl (configure-build-[+module+],
configure-target-[+module+]): Always build symlink tree
for the directory and for include. BUILD_SUBDIR and
TARGET_SUBDIR cannot be . anymore.
* Makefile.in: Regenerate.
Mark Kettenis [Thu, 23 Dec 2004 22:34:23 +0000 (22:34 +0000)]
* i386-nto-tdep.c: Reorder include files.
(i386nto_svr4_fetch_link_map_offsets): Remove function.
(init_i386nto_ops, i386nto_init_abi): Use
svr4_ilp32_fetch_link_map_offsets instead of
i386nto_svr4_fetch_link_map_offsets.
Kris Warkentin [Wed, 22 Dec 2004 14:43:44 +0000 (14:43 +0000)]
* elf.c (elfcore_grok_nto_gregs): Change name to elfcore_grok_nto_regs.
Add 'base' argument for constructing register sections. Reformat.
(elfcore_grok_nto_note): Call elfcore_grok_nto_regs for both
gp and fp regs. Reformat.
Nick Clifton [Wed, 22 Dec 2004 11:04:44 +0000 (11:04 +0000)]
readelf.c (last_pointer_size, warned_about_missing_comp_units):
New variables associated with obtaining the pointer size for a comp_unit.
(get_pointer_size_of_comp_unit): Add an extra parameter - the name of the
section requesting the pointer size. Use this name in error messages. If
there are not enough comp_units available produce a warning message, but
return the last known pointer size so that section dumping can continue.
(get_debug_info): Reset the new variables.
(display_debug_lines): Add extra parameter to invocation of
get_pointer_size_of_comp_unit and remove error message when it returns 0.
(display_debug_loc): Likewise.
Alan Modra [Wed, 22 Dec 2004 03:59:26 +0000 (03:59 +0000)]
* elflink.c (_bfd_elf_merge_symbol): Treat old definitions from
as-needed dynamic libs as undefined.
(elf_link_add_object_symbols): Remove DYN_AS_NEEDED from as-needed
libs when finding they are needed.
* gas/elf/section5.e, gas/elf/section5.l: Replace [:digit:],
[:xdigit:] and {N} in regexps with [0-9], [0-9a-fA-F] and N
copies, to cater to tcl versions before Tcl 8.2.3.
* ada-lang.c (ada_print_subexp): Remove i18n markup from Ada code
output.
* ada-typeprint.c (ada_typedef_print): Ditto.
(print_unchecked_union_type): Ditto.
(print_record_type): Ditto, and correct output for non-derived
types that was inadvertently left off during the markup.
Alan Modra [Sun, 19 Dec 2004 23:24:46 +0000 (23:24 +0000)]
* elf64-ppc.c (struct ppc64_elf_obj_tdata): Add opd_relocs.
(opd_entry_value): Use opd_relocs if available.
(ppc64_elf_relocate_section): Don't set reloc_done. Instead
copy .opd relocations to opd_relocs.
(ppc64_elf_edit_toc): Set rel_hdr.sh_size after editing relocs.
Mark Kettenis [Sun, 19 Dec 2004 22:09:26 +0000 (22:09 +0000)]
* hppa-hpux-tdep.c (hppa64_hpux_search_dummy_call_sequence): Check
whether the name returned by find_pc_partial_function is a null
pointer, not whether it is an empty string.
Mark Kettenis [Sun, 19 Dec 2004 21:09:40 +0000 (21:09 +0000)]
* hppa-tdep.h (hppa_regnum): Add HPPA_DP_REGNUM, HPPA_RET0_REGNUM,
HPPA_RET1_REGNUM and HPPA64_FP4_REGNUM.
* hppa-tdep.c (hppa64_integral_or_pointer_p)
(hppa64_floating_p) New functions.
(hppa64_push_dummy_call): Re-implement.
(hppa32_register_type): Rename argument reg_nr to regnum.
(hppa64_register_type): Likewise. Use HPPA64_FP4_REGNUM instead
of HPPA_FP4_REGNUM.
(hppa32_cannot_store_register): Renamed from
hppa_cannot_store_register.
(hppa64_cannot_store_register): New function.
(hppa_gdbarch_init): Set cannot_store_register and
cannot_fetch_register to hppa32_cannot_store_register or
hppa64_cannot_store_register when appropriate.
Mark Kettenis [Sat, 18 Dec 2004 14:53:39 +0000 (14:53 +0000)]
* config/djgpp/fnchange.lst: Resolve name clash between
../bfd/elf32-arm.c and ../bfd/elf32-arc.c, i386-sol2-nat.c and
i386-sol2-tdep.c, mips64obsd-nat.c and mips64obsd-tdep.c,
testsuite/gdb.base/bitfields.c and
testsuite/gdb.base/bitfields2.c, testsuite/gdb.base/bitfields.exp
and testsuite/gdb.base/bitfields2.exp. Remove entry for
config/m88k/xm-delta88v4.h.
* hppa-hpux-tdep.c (IS_32BIT_TARGET): New.
(in_opd_section): New.
(hppa32_hpux_find_global_pointer): Rename from
hppa_hpux_som_find_global_pointer.
(hppa64_hpux_find_global_pointer): New.
(ldsid_pattern): New.
(hppa_hpux_search_pattern): New.
(hppa32_hpux_search_dummy_call_sequence): New.
(hppa64_hpux_search_dummy_call_sequence): New.
(hppa_hpux_find_import_stub_for_addr): New.
(hppa_hpux_sr_for_addr): New.
(hppa_hpux_find_dummy_bpaddr): New.
(hppa_hpux_init_abi): Use IS_32BIT_TARGET predicate.
(hppa_hpux_som_init_abi): Set find_global_pointer method to
hppa32_hpux_find_global_pointer instead of
hppa_hpux_som_find_global_pointer.
(hppa_hpux_elf_init_abi): Set find_global_pointer method.
* hppa-tdep.c (hppa_init_objfile_priv_data): New.
(read_unwind_info): Use function to initialize objfile-private data.
(hppa32_push_dummy_call): Don't automatically set the RP if there is
a push_dummy_code method.
(hppa64_push_dummy_call): Retrieve and set the global pointer.
Don't automatically set the RP if there is a push_dummy_code method.
* hppa-tdep.h (hppa_objfile_private): Add dummy_call_sequence_reg and
dummy_call_sequence_addr members.
(hppa_init_objfile_priv_data): New prototype.
Jakub Jelinek [Fri, 17 Dec 2004 15:50:02 +0000 (15:50 +0000)]
* ldexp.h (exp_data_seg): Add min_base and maxpagesize fields.
* ldexp.c (fold_binary) <case DATA_SEGMENT_ALIGN>: Initialize them.
* ldlang.c (lang_size_sections): Use them to avoid wasting virtual
address space at DATA_SEGMENT_ALIGN. Fix computation of expected
PT_GNU_RELRO segment end.
Joel Brobecker [Fri, 17 Dec 2004 07:42:48 +0000 (07:42 +0000)]
* hppa-tdep.c (hppa_lookup_stub_minimal_symbol): New function.
* hppa-tdep.h (hppa_lookup_stub_minimal_symbol): Add declaration.
* solib-som.c (som_solib_create_inferior_hook): Replace stub
msymbol search by call to hppa_lookup_stub_minimal_symbol. This
extends the search to all objfiles, not just shared libraries.
Remove unused variable.
include/elf/
* v850.h (R_V850_LO16_SPLIT_OFFSET): New reloc.
bfd/
* reloc.c (BFD_RELOC_V850_LO16_SPLIT_OFFSET): New bfd_reloc_code_type.
* elf32-v850.c (v850_elf_howto_table): Add entry for
R_V850_LO16_SPLIT_OFFSET.
(v850_elf_reloc_map): Map it to BFD_RELOC_V850_LO16_SPLIT_OFFSET.
(v850_elf_perform_lo16_relocation): New function, extracted from...
(v850_elf_perform_relocation): ...here. Use it to handle
R_V850_LO16_SPLIT_OFFSET.
(v850_elf_check_relocs, v850_elf_final_link_relocate): Handle
R_V850_LO16_SPLIT_OFFSET.
* libbfd.h, bfd-in2.h: Regenerate.
gas/
* config/tc-v850.c (handle_lo16): New function.
(v850_reloc_prefix): Use it to check lo().
(md_assemble, md_apply_fix3): Handle BFD_RELOC_V850_LO16_SPLIT_OFFSET.
gas/testsuite/
* gas/v850/split-lo16.{s,d}: New test.
* gas/v850/v850.exp: Run it.
* config/obj-elf.c (obj_elf_change_section): Only set type and
attributes on new sections. Emit warning when type of re-declared
section doesn't match.
* doc/binutils.texi: Document --strip-unneeded-symbol and
--strip-unneeded-symbols.
* objcopy.c (strip_unneeded_list): New.
(enum command_line_switch): Add OPTION_STRIP_UNNEEDED_SYMBOL
and OPTION_STRIP_UNNEEDED_SYMBOLS.
(copy_options): Add --strip-unneeded-symbol and
--strip-unneeded-symbols.
(copy_usage): Likewise.
(filter_symbols): Suppress copying of symbol if in strip_unneeded_list
and the symbol is not needed.
(copy_main): Handle OPTION_STRIP_UNNEEDED_SYMBOL and
OPTION_STRIP_UNNEEDED_SYMBOLS.
* dw2gencfi.c (output_cfi_insn): Adjust DW_CFA_def_cfa_sf generation
to emit a signed and factored offset. Adjust DW_CFA_def_cfa_offset_sf
generation to emit a factored offset.