aboutsummaryrefslogtreecommitdiff
path: root/ld
AgeCommit message (Collapse)AuthorFilesLines
2013-01-02Update copyright year to 2013H.J. Lu2-2/+6
binutils/ 2013-01-02 H.J. Lu <hongjiu.lu@intel.com> * version.c (print_version): Update copyright year to 2013. gas/ 2013-01-02 H.J. Lu <hongjiu.lu@intel.com> * as.c (parse_args): Update copyright year to 2013. ld/ 2013-01-02 H.J. Lu <hongjiu.lu@intel.com> * ldver.c (ldversion): Update copyright year to 2013. opcodes/ 2013-01-02 H.J. Lu <hongjiu.lu@intel.com> * i386-gen.c (process_copyright): Update copyright year to 2013.
2013-01-02Rotate binutils ChangeLog for 2013H.J. Lu4-3151/+3179
2012-12-30 * ld-scripts/pr14962.d: Don't run for mmix-knuth-mmixware. AddHans-Peter Nilsson2-3/+8
comment punctuation.
2012-12-21Properly adjust h->plt.refcountH.J. Lu6-0/+64
bfd/ PR ld/14980 * elf32-i386.c (elf_i386_adjust_dynamic_symbol): Properly adjust h->plt.refcount. * elf64-x86-64.c (elf_x86_64_adjust_dynamic_symbol): Likewise. ld/testsuite/ PR ld/14980 * ld-ifunc/ifunc-14c.s: New file. * ld-ifunc/ifunc-14e-i386.d: Likewise. * ld-ifunc/ifunc-14e-x86-64.d: Likewise. * ld-ifunc/ifunc-14f-i386.d: Likewise. * ld-ifunc/ifunc-14f-x86-64.d: Likewise.
2012-12-18ld/Roland McGrath5-24/+59
* ld.texinfo (Options): Describe -Trodata-segment. * ldlex.h (enum option_values): Add OPTION_TRODATA_SEGMENT. * lexsup.c (ld_options, parse_args): Handle -Trodata-segment. * scripttempl/elf.sc (RODATA_ADDR, SHLIB_RODATA_ADDR): Wrap SEGMENT_START("rodata-segment", ...) + SIZEOF_HEADERS around the value.
2012-12-18 PR ld/14962Alan Modra6-0/+41
* ld-scripts/pr14962.d, * ld-scripts/pr14962.t, * ld-scripts/pr14962a.s, * ld-scripts/pr14962b.s: New test. * ld-scripts/expr.exp: Run it.
2012-12-17ld/testsuite/Roland McGrath3-0/+7
* ld-elf/elf.exp (stack exec, stack size): Run for *-*-nacl* targets. * ld-i386/export-class.exp: Run for i?86-*-nacl* targets.
2012-12-17Remove the leading zeroH.J. Lu2-3/+7
* ld-elf/var1.d: Remove the leading zero.
2012-12-17Add copyright noticesNick Clifton19-2/+181
2012-12-17Update PR ld/14962 testcaseH.J. Lu2-4/+4
2012-12-17Add a testcase for PR ld/14962H.J. Lu4-0/+49
PR ld/14962 * ld-elf/var1.d: New file. * ld-elf/var1.s: Likewise. * ld-elf/var1.t: Likewise.
2012-12-17 PR ld/14962Alan Modra4-74/+37
* ldexp.h (struct ldexp_control): Add "assign_name". * ldexp.c (fold_name <NAME>): Compare and clear assign_name on match. (exp_fold_tree_1): Remove existing code testing for self assignment. Instead set and test expld.assign_name. * ldlang.c (scan_for_self_assignment): Delete. (print_assignment): Instead set and test expld.assign_name.
2012-12-16Also check local IFUNC referencesH.J. Lu13-0/+172
bfd/ PR ld/14968 * elf32-i386.c (elf_i386_adjust_dynamic_symbol): Also check local IFUNC references. * elf64-x86-64.c (elf_x86_64_adjust_dynamic_symbol): Likewise. ld/testsuite/ PR ld/14968 * ld-ifunc/ifunc-18a-i386.d: New file. * ld-ifunc/ifunc-18a-x86-64.d: Likewise. * ld-ifunc/ifunc-18a.s: Likewise. * ld-ifunc/ifunc-18b-i386.d: Likewise. * ld-ifunc/ifunc-18b-x86-64.d: Likewise. * ld-ifunc/ifunc-18b.s: Likewise. * ld-ifunc/ifunc-19a-i386.d: Likewise. * ld-ifunc/ifunc-19a-x86-64.d: Likewise. * ld-ifunc/ifunc-19a.s: Likewise. * ld-ifunc/ifunc-19b-i386.d: Likewise. * ld-ifunc/ifunc-19b-x86-64.d: Likewise. * ld-ifunc/ifunc-19b.s: Likewise.
2012-12-15Fix copy'n'paste-o.Thomas Schwinge1-1/+1
2012-12-15ld/testsuite/Thomas Schwinge6-7/+15
* ld-elf/elf.exp (stack exec, stack size): Run for any GNU target. * ld-elf/maxpage3c.d: Run for any x86 GNU target. * ld-elf/maxpage4.d: Likewise. * ld-elf/maxpage5.d: Likewise. * ld-i386/export-class.exp: Likewise.
2012-12-14ld/testsuite/Yufeng Zhang3-1/+15
2012-12-13 Yufeng Zhang <yufeng.zhang@arm.com> * ld-elf/indirect.exp: Disable if -shared is not supported. * lib/ld-lib.exp (check_shared_lib_support): Add aarch64*-*-elf and arm*-*-elf to the exclude list.
2012-12-13Check local IFUNC callsH.J. Lu9-0/+82
bfd/ 2012-12-13 H.J. Lu <hongjiu.lu@intel.com> PR ld/14956 * elf32-i386.c (elf_i386_adjust_dynamic_symbol): Check local IFUNC calls. * elf64-x86-64.c (elf_x86_64_adjust_dynamic_symbol): Likewise. ld/testsuite/ 2012-12-13 H.J. Lu <hongjiu.lu@intel.com> PR ld/14956 * ld-ifunc/ifunc-14-i386.d: Renamed to ... * ld-ifunc/ifunc-14a-i386.d: This. * ld-ifunc/ifunc-14-x86-64.d: Renamed to ... * ld-ifunc/ifunc-14a-x86-64.d: This. * ld-ifunc/ifunc-14b-i386.d: New file. * ld-ifunc/ifunc-14b-x86-64.d: Likewise. * ld-ifunc/ifunc-14c-i386.d: Likewise. * ld-ifunc/ifunc-14c-x86-64.d: Likewise. * ld-ifunc/ifunc-14d-i386.d: Likewise. * ld-ifunc/ifunc-14d-x86-64.d: Likewise.
2012-12-11ld/Roland McGrath4-2/+23
* emulparams/elf_nacl.sh (nacl_rodata_addr): New shell function. (RODATA_ADDR, SHLIB_RODATA_ADDR): Use it to base the calculation on SEGMENT_START("text-segment", ...) rather than ... alone. * Makefile.am (earmelf_nacl.c, earmelfb_nacl.c): Add missing dependency on $(srcdir)/emulparams/elf_nacl.sh. * Makefile.in: Regenerate.
2012-12-10Add copyright noticesNick Clifton23-15/+153
2012-12-07Use "readelf -S --wide" on ld-elf/pr14926.dH.J. Lu2-9/+6
* ld-elf/pr14926.d: Use "readelf -S --wide".
2012-12-07Mention PRs in ChangeLog entries for LTO testsH.J. Lu1-0/+20
2012-12-07Add LTO testsH.J. Lu86-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.
2012-12-07Add plugin visibility testH.J. Lu5-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.
2012-12-07Add check_lto_availableH.J. Lu2-0/+33
* lib/ld-lib.exp (check_lto_available): New. Check if compiler supports LTO.
2012-12-07Properly check linker warningsH.J. Lu2-6/+16
* lib/ld-lib.exp (run_cc_link_tests): Properly check linker warnings.
2012-12-07Pass -rc to arH.J. Lu2-1/+5
* lib/ld-lib.exp (ar_simple_create): Pass -rc to ar.
2012-12-07Add a testase for PR ld/14926H.J. Lu3-0/+29
PR ld/14926 * ld-elf/pr14926.d: New file. * ld-elf/pr14926.s: Likewise.
2012-12-07 * ld-elf/comm-data.exp: Revert last change.Alan Modra3-3/+6
* ld-elf/comm-data5.d: xfail frv-linux.
2012-12-07 * ld-elf/shared.exp (libneeded1a.so): Override any systemAlan Modra2-1/+6
supplied --as-needed or --add-needed flag.
2012-12-06Extend --copy-dt-needed-entries to creating DSOH.J. Lu4-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.
2012-12-06 * ld-elf/comm-data4.d, ld-elf/comm-data4.s: New test.Alan Modra6-0/+51
* ld-elf/comm-data5.d, ld-elf/comm-data5.s: New test. * ld-elf/comm-data.exp: Run them.
2012-12-05Add x86_64-*-rdos.Alan Modra2-0/+5
2012-12-04Add tests for --add-needed/--copy-dt-needed-entriesH.J. Lu6-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.
2012-12-03 * ld-mips-elf/attr-gnu-4-45.d: Add missing "readelf" keyword.Maciej W. Rozycki2-1/+7
Update dump according to current output.
2012-12-03 bfd/Maciej W. Rozycki18-17/+37
* 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.
2012-12-03 bfd/Maciej W. Rozycki7-6/+16
* 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.
2012-12-03Improve plugin error handlingH.J. Lu8-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.
2012-11-30ld/testsuite/Roland McGrath2-1/+5
* ld-elf/ehdr_start.s: Put reference in .rodata section, not .data.
2012-11-30 * scripttempl/epiphany_4x4.sc, emulparams/elf32epiphany_4x4.sh: Add.Joern Rennecke7-0/+790
* emultempl/epiphanyelf_4x4.em: Likewise. * configure.tgt: Add elf32epiphany_4x4 support. * Makefile.am: Likewise. * Makefile.in: Regenerate.
2012-11-29 * Makefile.in: Regenerate.Maciej W. Rozycki2-0/+6
2012-11-27binutils/testsuite/Roland McGrath3-0/+17
* lib/binutils-common.exp (is_zlib_supported): New function. * lib/utils-lib.exp (run_dump_test): If as options include --compress-debug-sections and zlib is not available, report the test as unsupported. * binutils-all/compress.exp: Bail out if zlib is not available. * binutils-all/objdump.exp (objdump compressed debug): Mark unsupported if zlib is not available. * binutils-all/readelf.exp (readelf_compressed_wa_test): Likewise. gas/testsuite/ * lib/gas-defs.exp (run_dump_test): If as options include --compress-debug-sections and zlib is not available, report the test as unsupported. ld/testsuite/ * ld-elf/compress.exp: Bail out if zlib is not supported. * lib/ld-lib.exp (run_dump_test): If as options include --compress-debug-sections and zlib is not available, report the test as unsupported.
2012-11-27ld/testsuite/Roland McGrath3-5/+11
* ld-elf/flags1.d: Add *-*-nacl* to xfail list. * ld-elf/orphan-region.d: Likewise.
2012-11-27 PR ld/14776Nick Clifton2-14/+19
* ld.texinfo: Fix spelling mistakes.
2012-11-26ld/Roland McGrath5-14/+26
* emultempl/aarch64elf.em (gld${EMULATION_NAME}_before_parse): Copy last elf32.em here too. * emultempl/armelf.em (gld${EMULATION_NAME}_before_parse): Likewise. * emultempl/mmixelf.em (gld${EMULATION_NAME}_before_parse): Likewise. * emultempl/scoreelf.em (gld${EMULATION_NAME}_before_parse): Likewise.
2012-11-23include/opcode/Alan Modra12-13/+27
* ppc.h (ppc_parse_cpu): Update prototype. opcodes/ * ppc-dis.c (ppc_parse_cpu): Add "sticky" param. Track bits set from ppc_opts.sticky in it. Delete "retain_mask". (powerpc_init_dialect): Choose default dialect from info->mach before parsing -M options. Handle more bfd_mach_ppc variants. Update common default to power7. gas/ * config/tc-ppc.c (sticky): New var. (md_parse_option, ppc_machine): Update ppc_parse_cpu calls. gas/testsuite/ * gas/ppc/astest2.d: Pass -Mppc to objdump. ld/testsuite/ * ld-powerpc/plt1.d: Update for default "at" branch hints. * ld-powerpc/tlsexe.d: Likewise. * ld-powerpc/tlsexetoc.d: Likewise. * ld-powerpc/tlsopt1.d: Likewise. * ld-powerpc/tlsopt1_32.d: Likewise. * ld-powerpc/tlsopt2.d: Likewise. * ld-powerpc/tlsopt2_32.d: Likewise. * ld-powerpc/tlsopt4.d: Likewise. * ld-powerpc/tlsopt4_32.d: Likewise. * ld-powerpc/tlsso.d: Likewise. * ld-powerpc/tlstocso.d: Likewise.
2012-11-21Set output maxpagesize when rewriting program headerH.J. Lu4-0/+48
bfd/ PR binutils/14493 * elf.c (copy_elf_program_header): When rewriting program header, set the output maxpagesize to the maximum alignment of input PT_LOAD segments. 2012-11-21 H.J. Lu <hongjiu.lu@intel.com> PR binutils/14493 * ld-elf/maxpage5.d: New file. * ld-elf/maxpage5.s: Likewise. * ld-elf/maxpage5.t: Likewise.
2012-11-21ld/Roland McGrath4-40/+58
* ld.h (ld_config_type): New flag member separate_code. * emultempl/elf32.em (gld${EMULATION_NAME}_before_parse): Set it based on $SEPARATE_CODE. * ldlang.c (ldlang_override_segment_assignment): If it's set, then always return TRUE when SEC_CODE differs between the sections.
2012-11-21* ld-elf/comm-data.exp: Add XFAIL for arm*-*-* targets, referringRoland McGrath2-0/+7
to PR ld/13802.
2012-11-21Run more tests on x86_64-*-linux-gnu*/i?86-*-linux-gnuH.J. Lu7-6/+15
* ld-elf/discard1.d: Run on x86_64-*-linux-gnu*. * ld-elf/discard2.d: Likewise. * ld-elf/discard3.d: Likewise. * ld-elf/eh6.d: Likewise. * ld-elf/maxpage3c.d: Run on i?86-*-linux-gnu. * ld-elf/maxpage4.d: Likewise.
2012-11-20Remove ref_dynamic_nonweak added by accidentH.J. Lu6-0/+42
bfd/ 2012-11-20 H.J. Lu <hongjiu.lu@intel.com> PR ld/14862 * elf-bfd.h (elf_link_hash_entry): Remove ref_dynamic_nonweak added by accident. (elf_link_add_object_symbols): Don't set nor check ref_dynamic_nonweak. ld/testsuite/ 2012-11-20 H.J. Lu <hongjiu.lu@intel.com> PR ld/14862 * ld-elf/shared.exp (build_tests): Build libpr14862-1.o and libpr14862.so. (run_tests): Test pr14862. * ld-elf/pr14862-1.c: New file. * ld-elf/pr14862-2.c: Likewise. * ld-elf/pr14862.map: Likewise. * ld-elf/pr14862.out: Likewise.