X-Git-Url: http://drtracing.org/?a=blobdiff_plain;f=bfd%2FChangeLog;h=360736185dc78bb909a4209524cd13429add379a;hb=0bf60745767d2465c81ee57ae7705a62d6d8fafe;hp=4983c7aeb5b4a464cf83e69cf0d1efa790f07da8;hpb=3241278ac7d447abd0c795fa00d9568551ae11f2;p=deliverable%2Fbinutils-gdb.git diff --git a/bfd/ChangeLog b/bfd/ChangeLog index 4983c7aeb5..360736185d 100644 --- a/bfd/ChangeLog +++ b/bfd/ChangeLog @@ -1,3 +1,309 @@ +2005-06-07 Zack Weinberg + + * coff-i386.c: Change md_apply_fix3 to md_apply_fix in comment. + +2005-06-07 Alan Modra + + * coff-rs6000.c (rs6000coff_vec, pmac_xcoff_vec): Init _bfd_find_line. + * coff64-rs6000.c (rs6000coff64_vec, aix5coff64_vec): Likewise. + +2005-06-06 H.J. Lu + + PR 990 + * bfd.c (bfd_find_line): New. + + * dwarf2.c (comp_unit): Add variable_table. + (funcinfo): Add file, line, and sec. + (varinfo): New. + (lookup_symbol_in_function_table): New. + (lookup_symbol_in_variable_table): New. + (scan_unit_for_functions): Renamed to ... + (scan_unit_for_symbols): This. Handle DW_TAG_entry_point and + DW_TAG_variable. + (comp_unit_find_nearest_line): Updated. + (comp_unit_find_line): New. + (_bfd_dwarf2_find_line): New. + + * elf-bfd.h (_bfd_elf_find_line): New. + (_bfd_generic_find_line): New. Defined. + + * elf.c (_bfd_elf_find_line): New. + + * libbfd-in.h (_bfd_dwarf2_find_line): New. + (_bfd_generic_find_line): New. + + * bfd-in2.h: Regenerated. + * libbfd.h: Likewise. + + * libbfd.c (_bfd_generic_find_line): New. + + * targets.c (BFD_JUMP_TABLE_SYMBOLS): Initialize _bfd_find_line + with _bfd_generic_find_line. + (bfd_target): Add _bfd_find_line. + +2005-06-06 H.J. Lu + + * dwarf2.c (decode_line_info): Properly set low_pc. + +2005-06-06 Alan Modra + + * elf64-pcc.c (ppc64_elf_gc_mark_hook): For the local sym in .opd + case, include addend when indexing .opd section map. + (ppc64_elf_edit_opd): Add no_opd_opt param. Do nothing besides + clear opd_adjust array if no_opd_opt set. Tidy code. + Ignore zero size .opd. Check bfd_alloc return value. + (ppc_stub_name): Return immediately on bfd_malloc fail. + * elf64-ppc.h (ppc64_elf_edit_opd): Update prototype. + +2005-06-04 H.J. Lu + + * dwarf2.c (comp_unit): Fix a typo in comment. + +2005-06-03 Jan-Benedict Glaw + + * elf32-vax.c (rtype_to_howto): Remove PARAMS. + (reloc_type_lookup): Dito. + (elf_vax_discard_copies): Dito. + (elf_vax_instantiate_got_entries): Dito. + (elf_vax_link_hash_traverse): Dito. + (elf_vax_link_hash_newfunc): Dito. + (elf_vax_link_hash_table_create): Dito. + (elf32_vax_set_private_flags): Dito. + (elf32_vax_merge_private_bfd_data): Dito. + (elf32_vax_print_private_bfd_data): Dito. + (elf_vax_check_relocs): Dito. + (elf_vax_gc_mark_hook): Dito. + (elf_vax_gc_sweep_hook): Dito. + (elf_vax_size_dynamic_sections): Dito. + (elf_vax_discard_copies): Dito. + (elf_vax_instantiate_got_entries): Dito. + (elf_vax_relocate_section): Dito. + (elf_vax_finish_dynamic_symbol): Dito. + (elf_vax_finish_dynamic_sections): Dito. + (elf_vax_hash_table): Break-up of line isn't needed. + (elf_vax_check_relocs): Remove leading whitespace + (elf_vax_relocate_section): Remove redundant whitespace + (elf_vax_link_hash_newfunc): Don't cast NULL. + (elf_vax_link_hash_table_create): Dito. + * cpu-vax.c (bfd_vax_arch) Remove a trailing space. + +2005-06-03 Alan Modra + + PR 568 + * configure.in: Bump version + * configure: Regenerate. + * elflink.c (elf_link_input_bfd): Use einfo linker callback to print + discarded section sym refs and kill linker output. + * simple.c (simple_dummy_einfo): New function. + (bfd_simple_get_relocated_section_contents): Init callbacks.einfo. + + * elf32-i386.c (elf_i386_relocate_section): Handle zero symndx + for all reloc types. + +2005-06-02 Alan Modra + + * elf64-ppc.c (add_symbol_adjust): Set sym visibility to most + restrictive of func code and func descr for undefined syms as well + as defined. + +2005-05-31 Jim Blandy + + * Makefile.am: Regenerate dependencies with 'make dep-am'. + * Makefile.in: Regenerate. + +2005-05-31 Richard Henderson + + * elf64-alpha.c (ALPHA_ELF_LINK_HASH_LU_JSRDIRECT): New. + (ALPHA_ELF_LINK_HASH_TLS_IE): Renumber to 0x80. + (ALPHA_ELF_LINK_HASH_LU_PLT): Rename from ALPHA_ELF_LINK_HASH_LU_FUNC. + (elf64_alpha_want_plt): Update to match. + (elf64_alpha_check_relocs): Collect JSRDIRECT in gotent_flags. + (elf64_alpha_relax_with_lituse): Likewise. Handle JSRDIRECT. + +2005-05-31 Zack Weinberg + + * elf32-arm.c (elf32_arm_reloc_type_lookup) + (elf32_arm_nabi_grok_prstatus, elf32_arm_nabi_grok_psinfo): + Use ISO C90 function declaration style. + +2005-05-31 James E Wilson + + * elfcode.h (NAME(bfd_elf,bfd_from_remote_memory)): Check for program + header PF_R flag on PT_LOAD segments. + +2005-05-30 Richard Henderson + + * elf64-alpha.c (elf64_alpha_relocate_section): Use dtp_base for + the zero index relocs produced by elf64_alpha_relax_tls_get_addr. + +2005-05-29 Richard Henderson + + * configure.in (--enable-secureplt): New. + * elf64-alpha.c (INSN_LDA, INSN_LDAH, INSN_LDQ, INSN_BR): New. + (INSN_SUBQ, INSN_S4SUBQ, INSN_JMP): New. + (INSN_A, INSN_AB, INSN_ABC, INSN_ABO, INSN_AD): New. + (elf64_alpha_use_secureplt): New. + (OLD_PLT_HEADER_SIZE, OLD_PLT_ENTRY_SIZE): New. + (NEW_PLT_HEADER_SIZE, NEW_PLT_ENTRY_SIZE): New. + (PLT_HEADER_SIZE, PLT_ENTRY_SIZE): Conditionalize on secureplt. + (ALPHA_ELF_LINK_HASH_PLT_LOC): Remove. + (struct alpha_elf_link_hash_entry): Add plt_offset. + (PLT_HEADER_WORD1, PLT_HEADER_WORD2, PLT_HEADER_WORD3): Remove. + (PLT_HEADER_WORD4, PLT_ENTRY_WORD1, PLT_ENTRY_WORD2): Remove. + (PLT_ENTRY_WORD3): Remove. + (elf64_alpha_create_dynamic_sections): If secureplt, set SEC_READONLY + on .plt and create .got.plt. + (elf64_alpha_output_extsym): Remove .plt frobbing for symbol values. + (get_got_entry): Initialize plt_offset. + (elf64_alpha_want_plt): New. + (elf64_alpha_check_relocs): Use it. + (elf64_alpha_adjust_dynamic_symbol): Likewise. Don't allocate + plt entries here. + (elf64_alpha_calc_got_offsets_for_symbol): Don't report internal + error as user error. + (elf64_alpha_size_plt_section_1): Allocate one plt entry per + got subsection. + (elf64_alpha_size_plt_section): Size .got.plt section. + (elf64_alpha_size_rela_got_1): Don't allocate relocations if + plt entries used. + (elf64_alpha_size_dynamic_sections): Call elf64_alpha_size_plt_section. + Add PLTRO DYNAMIC entry. + (elf64_alpha_finish_dynamic_symbol): Generate secureplt format. + (elf64_alpha_finish_dynamic_sections): Likewise. + +2005-05-28 David Daney + + * elfxx-mips.c (_bfd_mips_elf_finish_dynamic_sections): Move + calculation of DT_RELSZ to occur after all dynamic relocations + are created. + +2005-05-28 Eli Zaretskii + + * configure.in: Add snprintf and vsnprintf to AC_CHECK_DECLS. + * config.in, configure: Regenerate. + +2005-05-26 Mark Kettenis + Maciej W. Rozycki + + * elfxx-mips.c (_bfd_mips_elf_section_processing): Warn and + stop processing of options if one of invalid size is + encountered. + (_bfd_mips_elf_section_from_shdr): Likewise. + (_bfd_mips_elf_fake_sections): Reset the type of empty special + sections. + +2005-05-26 Richard Henderson + + * elf64-alpha.c (struct alpha_elf_link_hash_entry): Remove + plt_old_section, plt_old_value. + (elf64_alpha_adjust_dynamic_symbol): Don't set it. + (elf64_alpha_size_plt_section_1): Don't use it. + +2005-05-26 Jakub Jelinek + + * elfcode.h (elf_object_p): Fail if e_shoff != 0, e_shnum == 0 and + first shdr has sh_size == 0. Fail if e_shnum is large to cause + arithmetic overflow when allocating the i_shdr array. + Sanity check sh_link and sh_info fields. Fix e_shstrndx sanity check. + +2005-05-25 Richard Henderson + + * elf64-alpha.c: Update all function definitions to ISO C. Remove + all function prototypes; rearrange functions into def-use order. + +2005-05-25 Richard Henderson + + * elf64-alpha.c (elf64_alpha_merge_gots): Fix gotent iteration + in the presence of deleting elements. + (elf64_alpha_size_got_sections): Zero dead got section size. + +2005-05-23 Fred Fish + + * dwarf2.c (struct dwarf2_debug): Add inliner_chain member. + (struct funcinfo): Add caller_func, caller_file, caller_line. + tag, and nesting_level members. + (lookup_address_in_function_table): Change first passed parameter + from "struct funcinfo *" to "struct comp_unit *". + (lookup_address_in_function_table): Dereference unit to find function + table. + (lookup_address_in_function_table): Traverse the function list to + create a chain of inlined functions back to the first non inlined + function. + (scan_unit_for_functions): Remember tag and nesting level. Handle + DW_AT_call_file and DW_AT_call_line. + (comp_unit_find_nearest_line): Adjust lookup_address_in_function_table + call to pass unit pointer instead of function table pointer. For + inlined functions, save pointer to the inliner chain. + (_bfd_dwarf2_find_nearest_line): Initialize inliner_chain to NULL. + (_bfd_dwarf2_find_inliner_info): New function that returns information + from the inliner chain after a call to bfd_find_nearest_line. + + * bfd.c (bfd_find_inliner_info): Define using BFD_SEND. + * targets.c (BFD_JUMP_TABLE_SYMBOLS): Add entry for + NAME##_find_inliner_info. + (bfd_target): Add _bfd_find_inliner_info. + * bfd-in2.h: Regenerate. + + * libbfd-in.h (_bfd_nosymbols_find_inliner_info): Define as + macro that always returns bfd_false. + (_bfd_dwarf2_find_inliner_info): Declare. + * libbfd.h: Regenerate. + + * elf32-arm.c (elf32_arm_find_inliner_info): New function + that calls _bfd_dwarf2_find_inliner_info. + (bfd_elf32_find_inliner_info): Define to elf32_arm_find_inliner_info. + + * elfxx-mips.c (_bfd_mips_elf_find_inliner_info): New function + that calls _bfd_dwarf2_find_inliner_info. + * elfxx-mips.h (_bfd_mips_elf_find_inliner_info): Declare. + * elfn32-mips.c (bfd_elf32_find_inliner_info): Define to + _bfd_mips_elf_find_inliner_info. + * elf64-mips.c (bfd_elf64_find_inliner_info): Ditto. + * elf32-mips.c (bfd_elf32_find_inliner_info): Ditto. + + * elf.c (_bfd_elf_find_inliner_info): New function that calls + _bfd_dwarf2_find_inliner_info. + * elf-bfd.h (_bfd_elf_find_inliner_info): Declare. + * elfxx-target.h (bfd_elfNN_find_inliner_info): Define to + _bfd_elf_find_inliner_info. + + * coffgen.c (coff_find_inliner_info): New function that + calls _bfd_dwarf2_find_inliner_info. + * libcoff-in.h (coff_find_inliner_info): Declare. + * libcoff.h: Regenerate. + * coff-rs6000.c (rs6000coff_vec): Add coff_find_inliner_info. + (pmac_xcoff_vec) Ditto. + * coff64-rs6000.c (rs6000coff64_vec): Ditto. + (aix5coff64_vec): Ditto. + + * aout-target.h (MY_find_inliner_info): Define as + _bfd_nosymbols_find_inliner_info. + * aout-tic30.c (MY_find_inliner_info): Ditto. + * binary.c (binary_find_inliner_info): Ditto. + * i386msdos.c (msdos_find_inliner_info): Ditto. + * ihex.c (ihex_find_inliner_info): Ditto. + * libaout.h (aout_32_find_inliner_info): Ditto. + * libecoff.h (_bfd_ecoff_find_inliner_info): Ditto. + * mach-o.c (bfd_mach_o_find_inliner_info): Ditto. + * mmo.c (mmo_find_inliner_info): Ditto. + * nlm-target.h (nlm_find_inliner_info): Ditto. + * pef.c (bfd_pef_find_inliner_info): Ditto. + * ppcboot.c (ppcboot_find_inliner_info): Ditto. + * srec.c (srec_find_inliner_info): Ditto. + * tekhex.c (tekhex_find_inliner_info): Ditto. + * versados.c (versados_find_inliner_info): Ditto. + * xsym.c (bfd_sym_find_inliner_info): Ditto. + + * ieee.c (ieee_find_inliner_info): New function that always + returns FALSE. + * oasys.c (oasys_find_inliner_info): Ditto. + * vms.c (vms_find_inliner_info): Ditto. + +2005-05-24 Alan Modra + + * elf32-ppc.c (ppc_elf_check_relocs): For old gcc -fPIC code + force old plt layout. + 2005-05-22 Richard Henderson * elf64-alpha.c (elf64_alpha_relax_section): Ignore non-allocated @@ -8,7 +314,7 @@ 2005-05-22 Richard Henderson - * elf64-alpha.c (elf64_alpha_relax_with_lituse): Relax jsr to + * elf64-alpha.c (elf64_alpha_relax_with_lituse): Relax jsr to undefweak to use zero register. Call elf64_alpha_relax_got_load if not all uses removed. (elf64_alpha_relax_got_load): Relax undefweak to lda zero.