aboutsummaryrefslogtreecommitdiff
path: root/bfd
AgeCommit message (Collapse)AuthorFilesLines
2011-05-04 PR ld/12727Alan Modra2-0/+8
* elf64-ppc.c (ppc_build_one_stub <ppc_sub_plt_call>): Clear was_undefined on dot-symbols.
2011-05-04daily updateAlan Modra1-1/+1
2011-05-032011-05-03 Paul Brook <paul@codesourcery.com>Paul Brook2-2/+37
bfd/ * elf32-tic6x.c (elf32_tic6x_howto_table, elf32_tic6x_howto_table_rel, (elf32_tic6x_gc_sweep_hook, elf32_tic6x_relocate_section, elf32_tic6x_check_relocs): Add R_C6000_EHTYPE. gas/ * config/tc-tic6x.c (s_ehtype): New function. (md_pseudo_table): Add "ehtype". (tic6x_fix_adjustable, md_apply_fix): BFD_RELOC_C6000_EHTYPE. * doc/c-tic6x.texi: Document .ehtype directive. ld/testsuite/ * ld-tic6x/ehtype-reloc-1-rel.d: New test. * ld-tic6x/ehtype-reloc-1.d: New test. * ld-tic6x/ehtype-reloc-1.s: New test.
2011-05-03daily updateAlan Modra1-1/+1
2011-05-02daily updateAlan Modra1-1/+1
2011-05-01 PR ld/12718Alan Modra3-2/+13
* elf32-i386.c (elf_i386_check_relocs): Ensure dynobj set before creating ifunc sections. * elf64-x86-64.c (elf_x86_64_check_relocs): Likewise.
2011-05-01daily updateAlan Modra1-1/+1
2011-04-30Correct parameter names for elf_x86_64_merge_symbol.H.J. Lu2-6/+11
2011-04-30 H.J. Lu <hongjiu.lu@intel.com> * elf64-x86-64.c (elf_x86_64_merge_symbol): Correct parameter names.
2011-04-30daily updateAlan Modra1-1/+1
2011-04-29daily updateAlan Modra1-1/+1
2011-04-28 * bfdio.c (memory_bstat): Pass correct size to memset.Tom Tromey2-2/+6
2011-04-28bfd: constify a few arraysMike Frysinger5-4/+11
2011-04-28daily updateAlan Modra1-1/+1
2011-04-27daily updateAlan Modra1-1/+1
2011-04-26 * dw2gencfi.c (dwcfi_seg_list): New struct.Nick Clifton2-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-262011-04-26 Tristan Gingold <gingold@adacore.com>Tristan Gingold2-215/+143
* coff64-rs6000.c: Convert to ISO-C. Remove PARAMS and PTR macros.
2011-04-26daily updateAlan Modra1-1/+1
2011-04-25daily updateAlan Modra1-1/+1
2011-04-24 PR ld/12365Alan Modra4-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.
2011-04-24daily updateAlan Modra1-1/+1
2011-04-23Warn relocation in readonly section in a shared object.H.J. Lu3-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.
2011-04-23daily updateAlan Modra1-1/+1
2011-04-22daily updateAlan Modra1-1/+1
2011-04-21Skip local IFUNC symbols when checking dynamic relocs in read-only sections.H.J. Lu3-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.
2011-04-21Return false on dynamic symbol error.H.J. Lu3-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.
2011-04-21daily updateAlan Modra1-1/+1
2011-04-202011-04-20 Tristan Gingold <gingold@adacore.com>Tristan Gingold2-0/+6
* config.bfd (alpha*-*-*vms*, ia64*-*-*vms*): Define targ_selvecs.
2011-04-20bfd/Alan Modra4-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.
2011-04-20bfd/Jan Kratochvil2-1/+6
* elf-bfd.h (RELOC_AGAINST_DISCARDED_SECTION): Fix +1 overrun of memmove elements.
2011-04-20 * libbfd.c (bfd_log2): Do return rounded up value.Alan Modra3-3/+14
* elflink.c (bfd_elf_size_dynsym_hash_dynstr): Replace bfd_log2 call with expanded old round down version of the function.
2011-04-20 * archive.c (_bfd_get_elt_at_filepos): Don't release n_nfd.Alan Modra3-8/+6
* elflink.c (elf_link_add_object_symbols): Delete redundant code.
2011-04-20 PR ld/12365Alan Modra4-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.
2011-04-20 PR ld/12365Alan Modra5-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.
2011-04-20daily updateAlan Modra1-1/+1
2011-04-19daily updateAlan Modra1-1/+1
2011-04-182011-04-18 Tristan Gingold <gingold@adacore.com>Tristan Gingold2-374/+227
* coff-rs6000.c: Convert to ISO-C. Remove PARAMS macro.
2011-04-18daily updateAlan Modra1-1/+1
2011-04-17 PR ld/12365Alan Modra1-0/+10
PR ld/12672 missing changelog entries
2011-04-17 PR ld/12365Alan Modra4-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.
2011-04-17bfd/Jan Kratochvil2-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.
2011-04-17daily updateAlan Modra1-1/+1
2011-04-16daily updateAlan Modra1-1/+1
2011-04-15 * elf-bfd.h (struct sdt_note): New struct.Nick Clifton3-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.
2011-04-15daily updateAlan Modra1-1/+1
2011-04-14daily updateAlan Modra1-1/+1
2011-04-13daily updateAlan Modra1-1/+1
2011-04-12 * elf64-alpha.c (elf64_alpha_size_dynamic_sections): Do notRichard Henderson2-1/+7
exclude empty .got sections.
2011-04-12daily updateAlan Modra1-1/+1
2011-04-11Fix the array access for BFD_RELOC_386_IRELATIVE.H.J. Lu2-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.
2011-04-11 * elf32-tic6x.c (elf32_tic6x_check_relocs): Initialize pc_count field.Bernd Schmidt2-0/+5