summaryrefslogtreecommitdiff
path: root/bfd
Commit message (Collapse)AuthorAgeFilesLines
* daily updateAlan Modra2011-04-281-1/+1
|
* daily updateAlan Modra2011-04-271-1/+1
|
* * dw2gencfi.c (dwcfi_seg_list): New struct.Nick Clifton2011-04-262-1/+9
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | (dwcfi_hash): New static hash variable. (get_debugseg_name): New. (alloc_debugseg_item): New. (make_debug_seg): New. (dwcfi_hash_insert): New. (dwcfi_hash_find): New. (dwcfi_hash_find_or_make): New. (cfi_insn_data): New member cur_seg. (cie_entry): Likewise. (fde_entry): New cseg and handled members. (alloc_fde_entry): Initialize cseg member. (alloc_cfi_insn_data): Initialize cur_seg member. (dot_cfi_sections): Compare for beginning of section names via strncmp. (get_cfi_seg): New. (cfi_finish): Treat link-once sections. (is_now_linkonce_segment): New local helper. (output_cie): Ignore cie entries not member of current segment. (output_fde): Likewise. (select_cie_for_fde): Likewise. (cfi_change_reg_numbers): Add new argument for current segment and ignore insn elements, if not part of current segment. * ehopt.c (get_cie_info): Use strncmp for section name matching. (heck_eh_frame): Likewise. * coffcode.h (sec_to_styp_flags): Allow linkonce for debugging sections. * scripttempl/pe.sc: Handle .eh_frame($|.)* sections. * scripttempl/pep.sc: Likewise. * ld-pe/pe.exp: Add cfi/cfi32 tests. * ld-pe/cfi.d: New. * ld-pe/cfi32.d: New. * ld-pe/cfia.s: New. * ld-pe/cfib.s: New.
* 2011-04-26 Tristan Gingold <gingold@adacore.com>Tristan Gingold2011-04-262-215/+143
| | | | * coff64-rs6000.c: Convert to ISO-C. Remove PARAMS and PTR macros.
* daily updateAlan Modra2011-04-261-1/+1
|
* daily updateAlan Modra2011-04-251-1/+1
|
* PR ld/12365Alan Modra2011-04-244-9/+19
| | | | | | | | | | | | | | | | | | | | | | | PR ld/12696 include/ * bfdlink.h (ENUM_BITFIELD): Define. (struct bfd_link_hash_entry): Make "type" a bitfield. Add "non_ir_ref". (struct bfd_link_callbacks <notice>): Pass bfd_link_hash_entry pointer rather than "name". bfd/ * coff-aux.c (coff_m68k_aux_link_add_one_symbol): Update "notice" call. * linker.c (_bfd_link_hash_newfunc): Clear bitfields. (_bfd_generic_link_add_one_symbol): Update "notice" call. * elflink.c (_bfd_elf_merge_symbol): Don't skip weak redefs when it is a redef of an IR symbol in a real BFD. ld/ * ldmain.c (notice): Delete "name" param, add "h". * plugin.c (plugin_notice): Likewise. Set non_ir_ref. Handle redefinitions of IR symbols in real BFDs. (plugin_multiple_definition, plugin_multiple_common): Delete. (non_ironly_hash, init_non_ironly_hash): Delete. (is_visible_from_outside): Traverse entry_symbol chain. (get_symbols): Use non_ir_ref flag rather than hash lookup.
* daily updateAlan Modra2011-04-241-1/+1
|
* Warn relocation in readonly section in a shared object.H.J. Lu2011-04-233-2/+32
| | | | | | | | | | 2011-04-22 H.J. Lu <hongjiu.lu@intel.com> * elf32-i386.c (elf_i386_readonly_dynrelocs): Warn relocation in readonly section in a shared object. (elf_i386_size_dynamic_sections): Likewise. * elf64-x86-64.c (elf_x86_64_readonly_dynrelocs): Likewise. (elf_x86_64_size_dynamic_sections): Likewise.
* daily updateAlan Modra2011-04-231-1/+1
|
* daily updateAlan Modra2011-04-221-1/+1
|
* Skip local IFUNC symbols when checking dynamic relocs in read-only sections.H.J. Lu2011-04-213-0/+15
| | | | | | | | | | | | | | | | | | | | | bfd/ 2011-04-21 H.J. Lu <hongjiu.lu@intel.com> PR ld/12694 * elf32-i386.c (elf_i386_readonly_dynrelocs): Skip local IFUNC symbols. * elf64-x86-64.c (elf_x86_64_readonly_dynrelocs): Likewise. ld/testsuite/ 2011-04-21 H.J. Lu <hongjiu.lu@intel.com> PR ld/12694 * ld-ifunc/ifunc-14-i386.d: New. * ld-ifunc/ifunc-14-x86-64.d: Likewise. * ld-ifunc/ifunc-14a.s: Likewise. * ld-ifunc/ifunc-14b.s: Likewise.
* Return false on dynamic symbol error.H.J. Lu2011-04-213-2/+8
| | | | | | | | 2011-04-21 H.J. Lu <hongjiu.lu@intel.com> * elf32-i386.c (elf_i386_finish_dynamic_symbol): Return false on dynamic symbol error. * elf64-x86-64.c (elf_x86_64_finish_dynamic_symbol): Likewise.
* daily updateAlan Modra2011-04-211-1/+1
|
* 2011-04-20 Tristan Gingold <gingold@adacore.com>Tristan Gingold2011-04-202-0/+6
| | | | * config.bfd (alpha*-*-*vms*, ia64*-*-*vms*): Define targ_selvecs.
* bfd/Alan Modra2011-04-204-11/+27
| | | | | | | | | | | | | | | * hash.c (bfd_default_hash_table_size): Make it an unsigned long. (bfd_hash_table_init_n): Overflow checking. (bfd_hash_set_default_size): Return current size. Take unsigned long arg. Add 65537 to hash_size primes. * bfd-in.h (bfd_hash_set_default_size): Update prototype. * bfd-in2.h: Regenerate. gas/ * hash.c (set_gas_hash_table_size): Use bfd_hash_set_default_size. (hash_new_sized): New function, split out from.. (hash_new): ..here. ld/ * ld.h (ld_config_type <hash_table_size>): Make it an unsigned long.
* bfd/Jan Kratochvil2011-04-202-1/+6
| | | | | * elf-bfd.h (RELOC_AGAINST_DISCARDED_SECTION): Fix +1 overrun of memmove elements.
* * libbfd.c (bfd_log2): Do return rounded up value.Alan Modra2011-04-203-3/+14
| | | | | * elflink.c (bfd_elf_size_dynsym_hash_dynstr): Replace bfd_log2 call with expanded old round down version of the function.
* * archive.c (_bfd_get_elt_at_filepos): Don't release n_nfd.Alan Modra2011-04-203-8/+6
| | | | * elflink.c (elf_link_add_object_symbols): Delete redundant code.
* PR ld/12365Alan Modra2011-04-204-13/+50
| | | | | | | | | | | | | | | | | | | | | bfd/ * elfcode.h (elf_slurp_symbol_table): Put common plugin IR symbols in their own common section. * elflink.c (elf_link_add_object_symbols): Likewise. * linker.c (generic_link_check_archive_element): Don't lose flags if common section is pre-existing. (_bfd_generic_link_add_one_symbol): Likewise. ld/ * ldfile.c (ldfile_try_open_bfd): Move code creating and switching to plugin IR BFD.. * ldmain.c (add_archive_element): ..and similar code here.. * plugin.c (plugin_maybe_claim): ..to here. New function. (plugin_call_claim_file): Make static. (asymbol_from_plugin_symbol): Set ELF st_shndx for common syms. (plugin_multiple_common): New function. (plugin_call_all_symbols_read): Hook in plugin_multiple_common. * plugin.h (plugin_call_claim_file): Don't declare. (plugin_maybe_claim): Declare.
* PR ld/12365Alan Modra2011-04-205-78/+30
| | | | | | | | | | | | | | | | | | | | | | | include/ * bfdlink.h (struct bfd_link_callbacks): Modify multiple_definition and multiple_common parameters to pass in a bfd_link_hash_entry pointer rather than name,bfd etc. found in the hash entry. bfd/ * elflink.c (_bfd_elf_merge_symbol): Update multiple_common calls. * linker.c (_bfd_generic_link_add_one_symbol): Likewise. Call multiple_definition regardless of allow_multiple_definition. * simple.c (simple_dummy_multiple_definition): Update. * xcofflink.c (xcoff_link_add_symbols): Update multiple_definition calls. ld/ * ldmain.c (multiple_definition): Take a bfd_link_hash_entry pointer arg rather than "name", "obfd", "osec", "oval". Add code removed from linker.c. Hack around xcofflink.c oddity in passing NULL nbfd. (multiple_common): Similarly. * plugin.c (orig_allow_multiple_defs): Delete. (plugin_call_all_symbols_read): Don't twiddle allow_multiple_definition. (plugin_multiple_definition): Update.
* daily updateAlan Modra2011-04-201-1/+1
|
* daily updateAlan Modra2011-04-191-1/+1
|
* 2011-04-18 Tristan Gingold <gingold@adacore.com>Tristan Gingold2011-04-182-374/+227
| | | | * coff-rs6000.c: Convert to ISO-C. Remove PARAMS macro.
* daily updateAlan Modra2011-04-181-1/+1
|
* PR ld/12365Alan Modra2011-04-171-0/+10
| | | | | PR ld/12672 missing changelog entries
* PR ld/12365Alan Modra2011-04-174-5/+16
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | PR ld/12672 bfd/ * bfd.c (BFD_PLUGIN): Define. (BFD_FLAGS_SAVED, BFD_FLAGS_FOR_BFD_USE_MASK): Add BFD_PLUGIN. * bfd-in2.h: Regenerate. * elflink.c (elf_link_output_extsym): Strip undefined plugin syms. * opncls.c (bfd_make_readable): Don't lose original bfd flags. ld/ * ldfile.c (ldfile_try_open_bfd): Don't attempt any plugin action when no_more_claiming. * ldmain.c (add_archive_element): Likewise. (multiple_definition): Remove plugin_multiple_definition call. (notice): Remove plugin_notice call. * ldlang.c (lang_list_insert_after, void lang_list_remove_tail): Move. Delete prototype. (plugin_insert): New static var. (open_input_bfds): Only rescan libs after plugin insert point. (lang_gc_sections): Omit plugin claimed files. (lang_process): Set plugin_insert. Only rescan when plugin adds objects. * plugin.h (no_more_claiming): Declare. (plugin_notice, plugin_multiple_definition): Don't declare. * plugin.c: Formatting. (orig_notice_all, orig_allow_multiple_defs, orig_callbacks, plugin_callbacks): New static vars. (no_more_claiming): Make global. (plugin_cached_allow_multiple_defs): Delete. (plugin_get_ir_dummy_bfd): Set SEC_EXCLUDE on dummy .text section, use newer bfd_make_section variant. Make COMMON section too. Error handling. Correct setting of gp size. (asymbol_from_plugin_symbol): Properly cast last arg of concat. (message): Likewise for ACONCAT. (asymbol_from_plugin_symbol): Use our COMMON section. (get_symbols): When report_plugin_symbols, show visibility too. (init_non_ironly_hash): Move. Don't test non_ironly_hash. (plugin_load_plugins): Save state of linker callbacks, set up to call plugin_notice instead. Call init_non_ironly_hash here. (plugin_call_all_symbols_read): Set plugin_multiple_definition in plugin callbacks. (plugin_notice): Rewrite. (plugin_multiple_definition): Make static, call original callback. ld/testsuite/ * ld-plugin/plugin-7.d: Adjust for plugin changes. * ld-plugin/plugin-8.d: Likewise. * ld-plugin/plugin.exp: Pass --verbose=2 for visibility test, and compare ld output to.. * ld-plugin/plugin-12.d: New.
* bfd/Jan Kratochvil2011-04-172-2/+8
| | | | | | | | | | | | | | | | | | | | | | | | | | * elf64-ppc.c (ppc64_elf_get_synthetic_symtab): Do not check for SEC_LOAD. gdb/ Fix convert_code_addr_to_desc_addr for ppc64 files after eu-strip. * elfread.c (elf_symfile_read): New variable synth_abfd, pass it to bfd_get_synthetic_symtab. * jit.c (jit_register_code): Pass NULL to the new parameter parent. * machoread.c (macho_add_oso_symfile): Pass main_objfile to the new parameter parent, remove the call to add_separate_debug_objfile. * solib.c (solib_read_symbols): Pass NULL to the new parameter parent. * symfile-mem.c (symbol_file_add_from_memory): Likewise. * symfile.c (symbol_file_add_with_addrs_or_offsets): New parameter parent, new comment for it, call add_separate_debug_objfile for it. (symbol_file_add_separate): Pass objfile as the parameter parent, remove the call to add_separate_debug_objfile. (symbol_file_add_from_bfd): New parameter parent, pass it. (symbol_file_add): Pass NULL to the new parameter parent. * symfile.h (symbol_file_add_from_bfd): New parameter parent. gdb/testsuite/ * gdb.base/eu-strip-infcall.c: New file. * gdb.base/eu-strip-infcall.exp: New file.
* daily updateAlan Modra2011-04-171-1/+1
|
* daily updateAlan Modra2011-04-161-1/+1
|
* * elf-bfd.h (struct sdt_note): New struct.Nick Clifton2011-04-153-0/+58
| | | | | | | | | (struct elf_obj_tdata) <sdt_note_head>: New field. * elf.c (elfobj_grok_stapsdt_note_1): New function. (elfobj_grok_stapsdt_note): Likewise. (elf_parse_notes): Added code to treat SystemTap note sections. * common.h (NT_STAPSDT): New define.
* daily updateAlan Modra2011-04-151-1/+1
|
* daily updateAlan Modra2011-04-141-1/+1
|
* daily updateAlan Modra2011-04-131-1/+1
|
* * elf64-alpha.c (elf64_alpha_size_dynamic_sections): Do notRichard Henderson2011-04-122-1/+7
| | | | exclude empty .got sections.
* daily updateAlan Modra2011-04-121-1/+1
|
* Fix the array access for BFD_RELOC_386_IRELATIVE.H.J. Lu2011-04-112-1/+6
| | | | | | | 2011-04-11 H.J. Lu <hongjiu.lu@intel.com> * elf32-i386.c (elf_i386_reloc_type_lookup): Fix the out of bound array access for BFD_RELOC_386_IRELATIVE.
* * elf32-tic6x.c (elf32_tic6x_check_relocs): Initialize pc_count field.Bernd Schmidt2011-04-112-0/+5
|
* PR 10549Nick Clifton2011-04-1110-18/+43
| | | | | | | | | | | | | | | | | | | | * elf-bfd.h (has_ifunc_symbols): Renamed to has_gnu_symbols. (has_gnu_symbols): Renamed from has_ifunc_symbols. * elf.c (_bfd_elf_set_osabi): Use new has_gnu_symbols name. * elf32-arm.c (elf32_arm_add_symbol_hook): Set has_gnu_symbols also if STB_GNU_UNIQUE symbol binding was seen. * elf32-i386.c (elf_i386_add_symbol_hook): Likewise. * elf32-ppc.c (ppc_elf_add_symbol_hook): Likewise. * elf32-sparc.c (elf32_sparc_add_symbol_hook): Likewise. * elf64-ppc.c (ppc64_elf_add_symbol_hook): Likewise. * elf64-sparc.c (elf64_sparc_add_symbol_hook): Likewise. * elf64-x86-64.c (elf_x86_64_add_symbol_hook): Likewise. * ld-unique: New directory. * ld-unique/unique.exp: New file: Run the UNIQUE tests. * ld-unique/unique.s: New test file. * ld-unique/unique_empty.s: Likewise. * ld-unique/unique_shared.s: Likewise.
* * bfd-in.h (bfd_get_section_limit): Don't use rawsize with outputAlan Modra2011-04-119-25/+62
| | | | | | | | | | | | | | sections. * libbfd.c (_bfd_generic_get_section_contents): Likewise. (_bfd_generic_get_section_contents_in_window): Likewise. * section.c (bfd_get_section_contents): Likewise. * compress.c (bfd_get_full_section_contents): Likewise. * elf32-rx.c (rx_final_link): Ignore rawsize. * elf32-microblaze.c (microblaze_elf_relocate_section): Use correct bfd with bfd_get_section_limit. * elfxx-ia64.c (elfNN_ia64_choose_gp): Add "final" parameter. Use os->size during final link. Update callers. * bfd-in2.h: Regenerate.
* daily updateAlan Modra2011-04-111-1/+1
|
* bfd/Richard Sandiford2011-04-102-7/+17
| | | | | | PR ld/12637 * elfxx-mips.c (mips_elf_merge_got_with): Use arg->global_count as the number of global entries when merging with the primary GOT.
* daily updateAlan Modra2011-04-101-1/+1
|
* Update copyright year.H.J. Lu2011-04-093-2/+9
| | | | | | | 2011-04-09 H.J. Lu <hongjiu.lu@intel.com> * elf32-i386.c: Update copyright year. * elf64-x86-64.c: Likewise.
* Revert accidential committed file.Kai Tietz2011-04-091-1/+1
|
* 2011-04-09 Kai Tietz <ktietz@redhat.com>Kai Tietz2011-04-094-9/+26
| | | | | | | * peXXigen.c (_bfd_XXi_final_link_postscripte): Sort pdata in temporary buffer and use rawsize for sorting. * coffcode.h (coff_compute_section_file_positions): Set rawsize before doing alignment.
* Revert the accidental checkin.H.J. Lu2011-04-091-1/+1
|
* Return relocation error on unsupported relocation.H.J. Lu2011-04-093-3/+19
| | | | | | | | 2011-04-09 H.J. Lu <hongjiu.lu@intel.com> * elf32-i386.c (elf_i386_relocate_section): Return relocation error on unsupported relocation. * elf64-x86-64.c (elf_x86_64_relocate_section): Likewise.
* Replace __pid_t with pid_t.H.J. Lu2011-04-092-5/+12
| | | | | | | | 2011-04-09 H.J. Lu <hongjiu.lu@intel.com> PR binutils/12657 * hosts/x86-64linux.h (elf_prstatus32): Replace __pid_t with pid_t.
* daily updateAlan Modra2011-04-091-1/+1
|