summaryrefslogtreecommitdiff
Commit message (Collapse)AuthorAgeFilesLines
* Add copyright noticesNick Clifton2012-12-10121-105/+897
|
* * powerpc.cc (Target_selector_powerpc::Target_selector_powerpc):Alan Modra2012-12-102-23/+8
| | | | | Set EM_PPC64 or EM_PPC here. (Target_selector_powerpc::do_recognize): Delete.
* * powerpc.cc (Powerpc_relobj::Powerpc_relobj): Init has14_ andAlan Modra2012-12-102-1/+9
| | | | | stub_table_. (Target_powerpc::Branch_info::make_stub): Don't omit addend.
* daily updateAlan Modra2012-12-091-1/+1
|
* Properly check indicies bigger than 4GbH.J. Lu2012-12-092-4/+9
| | | | | | PR binutils/14933 * archive.c (bsd_write_armap): Properly check indicies bigger than 4Gb.
* daily updateAlan Modra2012-12-081-1/+1
|
* * config.sub: Merge from config repo.Jan-Benedict Glaw2012-12-082-2/+10
|
* daily updateAlan Modra2012-12-071-1/+1
|
* Use "readelf -S --wide" on ld-elf/pr14926.dH.J. Lu2012-12-072-9/+6
| | | | * ld-elf/pr14926.d: Use "readelf -S --wide".
* gold/Roland McGrath2012-12-072-2/+8
| | | | | * testsuite/binary_unittest.cc (Sized_binary_test): Use open_descriptor rather than ::open.
* Mention PRs in ChangeLog entries for LTO testsH.J. Lu2012-12-071-0/+20
|
* Add LTO testsH.J. Lu2012-12-0786-0/+1011
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * ld-plugin/dummy.c: New file. * ld-plugin/dummy.s: Likewise. * ld-plugin/lto-11.out: Likewise. * ld-plugin/lto-11a.c: Likewise. * ld-plugin/lto-11b.c: Likewise. * ld-plugin/lto-11c.c: Likewise. * ld-plugin/lto-12.out: Likewise. * ld-plugin/lto-12a.c: Likewise. * ld-plugin/lto-12b.c: Likewise. * ld-plugin/lto-12c.c: Likewise. * ld-plugin/lto-13.out: Likewise. * ld-plugin/lto-13a.c: Likewise. * ld-plugin/lto-13b.c: Likewise. * ld-plugin/lto-13c.c: Likewise. * ld-plugin/lto-14.out: Likewise. * ld-plugin/lto-14a.c: Likewise. * ld-plugin/lto-14b.c: Likewise. * ld-plugin/lto-14c.c: Likewise. * ld-plugin/lto-15.out: Likewise. * ld-plugin/lto-15a.c: Likewise. * ld-plugin/lto-15b.c: Likewise. * ld-plugin/lto-16a.c: Likewise. * ld-plugin/lto-16a.d: Likewise. * ld-plugin/lto-16b.c: Likewise. * ld-plugin/lto-16b.d: Likewise. * ld-plugin/lto-17a.c: Likewise. * ld-plugin/lto-17a.d: Likewise. * ld-plugin/lto-17b-1.d: Likewise. * ld-plugin/lto-17b-2.d: Likewise. * ld-plugin/lto-17b.c: Likewise. * ld-plugin/lto-1a.c: Likewise. * ld-plugin/lto-1b.c: Likewise. * ld-plugin/lto-2.c: Likewise. * ld-plugin/lto-3.d: Likewise. * ld-plugin/lto-3.out: Likewise. * ld-plugin/lto-3a.c: Likewise. * ld-plugin/lto-3b.c: Likewise. * ld-plugin/lto-3c.c: Likewise. * ld-plugin/lto-3r.d: Likewise. * ld-plugin/lto-5.d: Likewise. * ld-plugin/lto-5.out: Likewise. * ld-plugin/lto-5a.c: Likewise. * ld-plugin/lto-5b.c: Likewise. * ld-plugin/lto-5r.d: Likewise. * ld-plugin/lto-6.c: Likewise. * ld-plugin/lto-7.out: Likewise. * ld-plugin/lto-7a.c: Likewise. * ld-plugin/lto-7b.c: Likewise. * ld-plugin/lto-7c.c: Likewise. * ld-plugin/lto-7d.c: Likewise. * ld-plugin/lto-8.out: Likewise. * ld-plugin/lto-8a.c: Likewise. * ld-plugin/lto-8b.c: Likewise. * ld-plugin/lto-9.cc: Likewise. * ld-plugin/lto-9.d: Likewise. * ld-plugin/lto.exp: Likewise. * ld-plugin/pr12696-1.cc: Likewise. * ld-plugin/pr12758a.s: Likewise. * ld-plugin/pr12758b.c: Likewise. * ld-plugin/pr12760a.c: Likewise. * ld-plugin/pr12760b.c: Likewise. * ld-plugin/pr12942.out: Likewise. * ld-plugin/pr12942a.cc: Likewise. * ld-plugin/pr12942a.h: Likewise. * ld-plugin/pr12942b.cc: Likewise. * ld-plugin/pr12942c.cc: Likewise. * ld-plugin/pr12975.c: Likewise. * ld-plugin/pr12975.d: Likewise. * ld-plugin/pr12975.t: Likewise. * ld-plugin/pr12982.c: Likewise. * ld-plugin/pr12982.d: Likewise. * ld-plugin/pr13066.cc: Likewise. * ld-plugin/pr13066.out: Likewise. * ld-plugin/pr13183.d: Likewise. * ld-plugin/pr13183a.c: Likewise. * ld-plugin/pr13183b.c: Likewise. * ld-plugin/pr13201.c: Likewise. * ld-plugin/pr13201.out: Likewise. * ld-plugin/pr13229.cc: Likewise. * ld-plugin/pr13229.d: Likewise. * ld-plugin/pr13244.c: Likewise. * ld-plugin/pr13244.d: Likewise. * ld-plugin/pr13287.cc: Likewise. * ld-plugin/run-ie.c: Likewise. * ld-plugin/run-ie.out: Likewise.
* Add plugin visibility testH.J. Lu2012-12-075-2/+42
| | | | | | | | | * ld-plugin/func1p.c: New file. * ld-plugin/func2i.c: Likewise. * ld-plugin/func3h.c: Likewise. * ld-plugin/plugin.exp (plugin_extra_elf_tests): Add plugin visibility test.
* Add check_lto_availableH.J. Lu2012-12-072-0/+33
| | | | | * lib/ld-lib.exp (check_lto_available): New. Check if compiler supports LTO.
* Properly check linker warningsH.J. Lu2012-12-072-6/+16
| | | | | * lib/ld-lib.exp (run_cc_link_tests): Properly check linker warnings.
* Pass -rc to arH.J. Lu2012-12-072-1/+5
| | | | * lib/ld-lib.exp (ar_simple_create): Pass -rc to ar.
* Add a testase for PR ld/14926H.J. Lu2012-12-073-0/+29
| | | | | | PR ld/14926 * ld-elf/pr14926.d: New file. * ld-elf/pr14926.s: Likewise.
* * ld-elf/comm-data.exp: Revert last change.Alan Modra2012-12-073-3/+6
| | | | * ld-elf/comm-data5.d: xfail frv-linux.
* * ld-elf/shared.exp (libneeded1a.so): Override any systemAlan Modra2012-12-072-1/+6
| | | | supplied --as-needed or --add-needed flag.
* * configure.ac (HAVE_ZLIB): Use AM_ZLIB instead of AC_SEARCH_LIBS.Ian Lance Taylor2012-12-071-0/+9
| | | | | | | | Use $ac_cv_header_zlib_h = yes as the condition in AM_CONDITIONAL. * aclocal.m4: Regenerate. * configure: Regenerate. * Makefile.in: Regenerate. * testsuite/Makefile.in: Regenerate.
* PR ld/14926Alan Modra2012-12-072-0/+7
| | | | | * elf.c (_bfd_elf_map_sections_to_segments): Include elf header size when determining phdr_in_segment.
* * configure.ac (HAVE_ZLIB): Use AM_ZLIB instead of AC_SEARCH_LIBS.Ian Lance Taylor2012-12-075-4/+26
| | | | | | | | Use $ac_cv_header_zlib_h = yes as the condition in AM_CONDITIONAL. * aclocal.m4: Regenerate. * configure: Regenerate. * Makefile.in: Regenerate. * testsuite/Makefile.in: Regenerate.
* * powerpc.cc (Stub_table::do_write): Delete redundant AddressAlan Modra2012-12-072-3/+17
| | | | | | typedef and invalid_address constant. (Output_data_glink, Stub_table, Target_powerpc): Explicitly instantiate constants.
* * options.h (General_options): Add no_toc_optimize.Alan Modra2012-12-073-0/+105
| | | | | * powerpc.cc (ok_lo_toc_insn): New function. (Target_powerpc::Relocate::relocate): Optimize toc access sequences.
* daily updateAlan Modra2012-12-061-1/+1
|
* bfd/Yufeng Zhang2012-12-062-0/+41
| | | | | | | 2012-12-06 Yufeng Zhang <yufeng.zhang@arm.com> * elf64-aarch64.c (elf64_aarch64_grok_prstatus): New function. (elf_backend_grok_prstatus): Define to elf64_aarch64_grok_prstatus.
* gas/Yufeng Zhang2012-12-067-39/+50
| | | | | | | | | | | | | | | | | | | 2012-12-06 Yufeng Zhang <yufeng.zhang@arm.com> * config/tc-aarch64.c (exp_has_bignum_p): Remove. (my_get_expression): Not get rid of bignums. (s_ltorg): Increase the range of 'align'. (programmer_friendly_fixup): Allow bignum expression. gas/testsuite/ 2012-12-06 Yufeng Zhang <yufeng.zhang@arm.com> * gas/aarch64/illegal.s: Add test for unaccepted LDR literal. * gas/aarch64/illegal.l: Update. * gas/aarch64/programmer-friendly.s: Add tests for LDR literal with the auto-generation of literal in pool. * gas/aarch64/programmer-friendly.d: Update.
* * options.h (General_options): Add plt_align, plt_static_chain,Alan Modra2012-12-063-92/+266
| | | | | | | | | | | | | | | | | | | | | | | plt_thread_safe. Update stub_group_size help text. * powerpc.cc (Target_powerpc::plt_thread_safe): New access function for new plt_thread_safe_ var. (use_plt_offset): Correct comments. (Target_powerpc::do_relax): Look for thread creation symbols to determine default plt_thread_safe value. Clear plt call stubs as well as branch stubs each iteration. (add_2_2_11, add_12_12_11, bnectr_p4, cmpldi_2_0, xor_11_11_11): New insn constants. (l, hi, ha, write_insn): Move earlier. (Stub_table): Delete prev_size, add last_plt_size and last_branch_size. (Stub_table::clear_stubs): Rename from clear_long_branch_stubs, clear plt stubs too. (Stub_table::update_size): Adjust. (Stub_table::prev_size, set_prev_size): Delete. (Stub_table::stub_align): Let --plt-align affect result. (Stub_table::plt_call_size): Calculate sizes for various stubs. (Stub_table::branch_stub_size): Use last_plt_size in address calc. (Stub_table::add_plt_call_stub): Pass iterator to plt_call_size. (Stub_table::do_write): Support more stub variants.
* Extend --copy-dt-needed-entries to creating DSOH.J. Lu2012-12-064-4/+51
| | | | | | | | | | | | | | | | | | ld/ PR ld/14915 * emultempl/elf32.em (gld${EMULATION_NAME}_after_open): Also check DT_NEEDED entries when creating shared object with --copy-dt-needed-entries. ld/testsuite/ PR ld/14915 * ld-elf/shared.exp (build_tests): Test --add-needed, --copy-dt-needed-entries, --no-add-needed and --no-copy-dt-needed-entries with -shared. Add tests for --no-add-needed and --no-copy-dt-needed-entries with -shared.
* * ld-elf/comm-data4.d, ld-elf/comm-data4.s: New test.Alan Modra2012-12-066-0/+51
| | | | | * ld-elf/comm-data5.d, ld-elf/comm-data5.s: New test. * ld-elf/comm-data.exp: Run them.
* * elfxx-mips.c (allocate_dynrelocs): Correct test for symbolAlan Modra2012-12-062-1/+6
| | | | defined in a regular file to include common symbols.
* daily updateAlan Modra2012-12-051-1/+1
|
* Add x86_64-*-rdos.Alan Modra2012-12-054-0/+14
|
* * elf64-ppc.c (build_plt_stub): Fix off by one error in branchAlan Modra2012-12-052-2/+7
| | | | to glink.
* daily updateAlan Modra2012-12-041-1/+1
|
* Add tests for --add-needed/--copy-dt-needed-entriesH.J. Lu2012-12-046-0/+69
| | | | | | | | | | | | * ld-elf/shared.exp (build_tests): Build libneeded1b.so, libneeded1a.so and libneeded1c.o. (run_tests): Test --add-needed and --copy-dt-needed-entries. Add tests for --no-add-needed and --no-copy-dt-needed-entries. * ld-elf/needed1.out: New file. * ld-elf/needed1a.c: Likewise. * ld-elf/needed1b.c: Likewise. * ld-elf/needed1c.c: Likewise.
* * powerpc.cc (Powerpc_relobj::do_scan_relocs): Delete.Alan Modra2012-12-042-11/+12
| | | | (Target_powerpc::do_define_standard_symbols): New function.
* daily updateAlan Modra2012-12-031-1/+1
|
* PR ld/10629Maciej W. Rozycki2012-12-032-3/+11
| | | | | | | * elfxx-mips.c (mips_elf_link_hash_table): Update comment for use_rld_obj_head. (_bfd_mips_elf_create_dynamic_sections): Always create a .rld_map section if no __rld_obj_head symbol has been seen.
* * elf32-mips.c (mips_elf32_object_p): Return right away when theMaciej W. Rozycki2012-12-033-8/+12
| | | | | ABI is not compatible. * elfn32-mips.c (mips_elf_n32_object_p): Likewise.
* * elf32-tilepro.c (tilepro_elf_mkobject): New function.Maciej W. Rozycki2012-12-032-0/+17
| | | | (bfd_elf32_mkobject): New macro.
* * ld-mips-elf/attr-gnu-4-45.d: Add missing "readelf" keyword.Maciej W. Rozycki2012-12-032-1/+7
| | | | Update dump according to current output.
* bfd/Maciej W. Rozycki2012-12-0324-54/+178
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * elf32-mips.c (bfd_elf32_mkobject): New macro. * elf64-mips.c (bfd_elf64_mkobject): Likewise. * elfn32-mips.c (bfd_elf32_mkobject): Likewise. * elfxx-mips.h (_bfd_mips_elf_mkobject): New prototype. * elfxx-mips.c (mips_elf_obj_tdata): New struct. (mips_elf_tdata): New macro. (_bfd_mips_elf_mkobject): New function. (mips_elf_merge_obj_attributes): Report the originating input BFD on attribute conflicts. ld/testsuite/ * ld-mips-elf/attr-gnu-4-12.d: Update the warning message. * ld-mips-elf/attr-gnu-4-13.d: Likewise. * ld-mips-elf/attr-gnu-4-14.d: Likewise. * ld-mips-elf/attr-gnu-4-15.d: Likewise. * ld-mips-elf/attr-gnu-4-21.d: Likewise. * ld-mips-elf/attr-gnu-4-23.d: Likewise. * ld-mips-elf/attr-gnu-4-24.d: Likewise. * ld-mips-elf/attr-gnu-4-25.d: Likewise. * ld-mips-elf/attr-gnu-4-31.d: Likewise. * ld-mips-elf/attr-gnu-4-32.d: Likewise. * ld-mips-elf/attr-gnu-4-34.d: Likewise. * ld-mips-elf/attr-gnu-4-35.d: Likewise. * ld-mips-elf/attr-gnu-4-41.d: Likewise. * ld-mips-elf/attr-gnu-4-42.d: Likewise. * ld-mips-elf/attr-gnu-4-43.d: Likewise. * ld-mips-elf/attr-gnu-4-45.d: Likewise. * ld-mips-elf/attr-gnu-4-51.d: Likewise.
* bfd/Maciej W. Rozycki2012-12-039-16/+33
| | | | | | | | | | | | | | | | * elfxx-mips.c (mips_elf_merge_obj_attributes): Correct messages for the -mdouble-float and -msingle-float cases throughout; make all the messages report the output file consistently on the left-hand side. ld/testsuite/ * ld-mips-elf/attr-gnu-4-12.d: Adjust the warning expected according to changes to BFD. * ld-mips-elf/attr-gnu-4-14.d: Likewise. * ld-mips-elf/attr-gnu-4-31.d: Likewise. * ld-mips-elf/attr-gnu-4-32.d: Likewise. * ld-mips-elf/attr-gnu-4-34.d: Likewise. * ld-mips-elf/attr-gnu-4-41.d: Likewise.
* Improve plugin error handlingH.J. Lu2012-12-038-23/+49
| | | | | | | | | | | | | | | | | | | | | | | | | | | ld/ PR ld/14904 * ldmain.c (main): Don't check plugin_load_plugins return. * lexsup.c (parse_args): Don't check plugin_opt_plugin return. * plugin.c (dlerror): New. Defined if HAVE_DLFCN_H isn't defined. (plugin_opt_plugin): Change return type to void. Stop on dlopen error and report error with dlerror (). (plugin_load_plugins): Change return type to void. Stop on dlsym error and report error with dlerror (). Don't use set_plugin_error. (plugin_call_cleanup): Issue an error for each plugin. * plugin.h (plugin_opt_plugin): Change return type to void. (plugin_load_plugins): Likewise. ld/testsuite/ PR ld/14904 * ld-plugin/plugin-2.d: Update expected error message. * ld-plugin/plugin-4.d: Likewise.
* typo fixAlan Modra2012-12-031-1/+1
|
* * output.h: Formatting, whitespace.Alan Modra2012-12-032-104/+136
|
* * layout.h (Layout::get_executable_sections): Declare.Alan Modra2012-12-037-369/+1572
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * layout.cc (Layout::get_executable_sections): New function. * arm.cc (Target_arm::group_sections): Use it. (Arm_output_section::group_sections): Delete now redundant test. * output.cc (Output_reloc::Output_reloc): Add is_relative. param to handle relative relocs. * output.h (Output_reloc::Output_reloc <absolute reloc>): Likewise. (Output_data_reloc::add_absolute): Adjust. (Output_data_reloc::add_relative): New function. (Output_data::reset_data_size): New function. (Output_relaxed_input_section::set_relobj, set_shndx): New functions. (Output_section::set_addralign): New function. (Output_section::checkpoint_set_addralign): New function. (Output_section::clear_section_offsets_need_adjustment): New function. (Output_section::input_sections): Make public. * powerpc.cc (class Output_data_brlt_powerpc): New. (class Stub_table, class Stub_control): New. (Powerpc_relobj::has14_, set_has_14bit_branch, has_14bit_branch, stub_table_, set_stub_table, stub_table): New vectors and accessor functions. (Target_powerpc::do_may_relax, do_relax, push_branch, new_stub_table, stub_tables, brlt_section, group_sections, add_branch_lookup_table, find_branch_lookup_table, write_branch_lookup_table, make_brlt_section): New functions. (Target_powerpc::struct Sort_sections, class Branch_info): New. (Target_powerpc::brlt_section_, stub_tables_, branch_lookup_table_, branch_info_): New vars. (Target_powerpc::make_plt_entry, make_local_ifunc_plt_entry): Don't make call stubs here. (Output_data_glink): Remove all call stub handling from this class. (Target_powerpc::Scan::local, global): Save interesting branch relocs and relocs for ifunc. Adjust calls to plt entry functions. (Target_powerpc::do_finalize_sections): Only make reg save/restore functions on final link. (Target_powerpc::Relocate::relocate): Adjust lookup of call stubs. Handle long branch destinations too. (Target_powerpc::do_dynsym_value, do_plt_address_for_global, do_plt_address_for_local): Adjust lookup of plt call stubs.
* daily updateAlan Modra2012-12-021-1/+1
|
* daily updateAlan Modra2012-12-011-1/+1
|