Alan Modra
d2667025dd
ld/
...
* ldlang.h (lang_output_section_statement_type): Add after_end field.
(lang_abs_symbol_at_beginning_of, lang_abs_symbol_at_end_of): Delete.
(section_for_dot): Declare.
* ldlang.c (lang_size_sections_1): Correct comment.
(current_section): Move earlier.
(current_assign, prefer_next_section): New static vars.
(lang_do_assignments_1): Add found_end param. Detect _end
assignment to set found_end. Set os->after_end. Set above statics.
(lang_do_assignments): Adjust lang_do_assignments_1 call. Init
vars.
(section_for_dot): New function.
(lang_set_startof): Don't make an absolute symbol.
(lang_abs_symbol_at_beginning_of, lang_abs_symbol_at_end_of): Delete.
* ldexp.c (new_rel_from_abs): Use section_for_dot.
* emultempl/lnk960.em (symbol_at_beginning_of): New function.
(symbol_at_end_of): Likewise.
(lnk960_after_allocation): Use them.
* scripttempl/elf.sc: Precede OTHER_GOT_SYMBOLS with . = .; and
likewise before __bss_start.
ld/testsuite/
Update far too many tests.
2012-06-15 15:13:41 +00:00
H.J. Lu
3c99554527
Support x86_64-*-linux-gnux32
...
gas/
* configure.tgt: Support x86_64-*-linux-gnux32.
ld/
* configure.tgt: Support x86_64-*-linux-gnux32.
ld/testsuite/
* ld-elf/eh1.d: Skip x86_64-*-linux-gnux32.
* ld-elf/eh2.d: Likewise.
* ld-elf/eh3.d: Likewise.
* ld-elf/eh4.d: Likewise.
* ld-elfvsb/elfvsb.exp: Xfail x86_64-*-linux-gnux32.
* ld-shared/shared.exp: Likewise.
* ld-ifunc/ifunc-3a-x86.d: Support x86_64-*-linux-gnux32.
2012-05-04 20:01:03 +00:00
Roland McGrath
5a68afcf73
bfd/
...
2012-04-03 Roland McGrath <mcgrathr@google.com>
* elf-nacl.c: New file.
* elf-nacl.h: New file.
* elf32-i386.c (elf_backend_modify_segment_map): Define for
bfd_elf32_i386_nacl_vec.
(elf_backend_modify_program_headers): Likewise.
* elf64-x86-64.c (elf_backend_modify_segment_map): Define for
bfd_elf64_x86_64_nacl_vec and bfd_elf32_x86_64_nacl_vec.
(elf_backend_modify_program_headers): Likewise.
* Makefile.am (BFD32_BACKENDS, BFD64_BACKENDS): Add elf-nacl.lo here.
(BFD32_BACKENDS_CFILES, BFD64_BACKENDS_CFILES): Add elf-nacl.c here.
* Makefile.in: Regenerated.
* configure.in (bfd_elf64_x86_64_nacl_vec): Add elf-nacl.o to tb here.
(bfd_elf32_x86_64_nacl_vec): Likewise.
(bfd_elf64_x86_64_vec, bfd_elf32_x86_64_vec): Likewise.
(bfd_elf64_x86_64_freebsd_vec, bfd_elf64_x86_64_sol2_vec): Likewise.
(bfd_elf64_l1om_vec, bfd_elf64_l1om_freebsd_vec): Likewise.
(bfd_elf64_k1om_vec, bfd_elf64_k1om_freebsd_vec): Likewise.
(bfd_elf32_i386_nacl_vec): Likewise.
(bfd_elf32_i386_sol2_vec, bfd_elf32_i386_freebsd_vec): Likewise.
(bfd_elf32_i386_vxworks_vec, bfd_elf32_i386_vec): Likewise.
* configure: Regenerated.
binutils/testsuite/
2012-04-03 Roland McGrath <mcgrathr@google.com>
* lib/binutils-common.exp (is_elf_format): Consider *-*-nacl* to
be ELF too.
* binutils-all/elfedit-4.d: Add "#as: --64" option.
* binutils-all/i386/i386.exp: Accept nacl targets too.
* binutils-all/x86-64/x86-64.exp: Likewise.
gas/testsuite/
2012-04-03 Roland McGrath <mcgrathr@google.com>
* gas/i386/k1om.d: Add not-target match for *-*-nacl*.
* gas/i386/l1om.d: Likewise.
ld/
2012-04-03 Roland McGrath <mcgrathr@google.com>
* configure.tgt (i[3-7]86-*-nacl*, x86_64-*-nacl*): Handle them.
* emulparams/elf_nacl.sh: New file.
* emulparams/elf_i386_nacl.sh: New file.
* emulparams/elf32_x86_64_nacl.sh: New file.
* emulparams/elf_x86_64_nacl.sh: New file.
* Makefile.am (ALL_EMULATION_SOURCES): Add eelf_i386_nacl.c here.
(ALL_64_EMULATION_SOURCES): Add eelf32_x86_64_nacl.c and
eelf_x86_64_nacl.c here.
(eelf_i386_nacl.c, eelf32_x86_64_nacl.c, eelf_x86_64_nacl.c):
New targets.
* Makefile.in: Regenerated.
* scripttempl/elf.sc: Handle SEPARATE_CODE cases.
ld/testsuite/
2012-04-03 Roland McGrath <mcgrathr@google.com>
* ld-x86-64/ilp32-4-nacl.d: New file.
* ld-x86-64/x86-64.exp: Run it.
* ld-discard/discard.exp: Accept nacl targets too.
* ld-elf/binutils.exp: Likewise.
* ld-elf/comm-data.exp: Likewise.
* ld-elf/elf.exp: Likewise.
* ld-elf/tls_common.exp: Likewise.
* ld-elfvers/vers.exp: Likewise.
* ld-elfvsb/elfvsb.exp: Likewise.
* ld-elfweak/elfweak.exp: Likewise.
* ld-gc/gc.exp: Likewise.
* ld-ifunc/binutils.exp: Likewise.
* ld-ifunc/ifunc.exp: Likewise.
* ld-linkonce/linkonce.exp:Likewise.
* ld-pie/pie.exp: Likewise.
* ld-shared/shared.exp: Likewise.
* ld-undefined/weak-undef.exp: Likewise.
* ld-unique/unique.exp: Likewise.
* ld-x86-64/dwarfreloc.exp: Likewise.
* ld-x86-64/line.exp: Likewise.
* lib/ld-lib.exp (slurp_options): Support global array
options_regsub to apply substitutions to the contents
of options lines read from the file.
* ld-i386/emit-relocs.d: Renamed to ...
* ld-i386/emit-relocs.rd: ... this.
* ld-i386/i386.exp: Accept nacl targets too.
For them, use options_regsub to replace elf_i386 with
elf_i386_nacl in run_dump_test cases; apply the same
substitution in $i386tests; replace foo.rd expectations
files with foo-nacl.rd in $i386tests.
(i386tests): Change emit-relocs.d to emit-relocs.rd here.
* ld-i386/emit-relocs-nacl.rd: New file.
* ld-i386/plt-nacl.pd: New file.
* ld-i386/plt-pic-nacl.pd: New file.
* ld-i386/tlsbin-nacl.rd: New file.
* ld-i386/tlsbindesc-nacl.rd: New file.
* ld-i386/tlsdesc-nacl.rd: New file.
* ld-i386/tlsgdesc-nacl.rd: New file.
* ld-i386/tlsnopic-nacl.rd: New file.
* ld-i386/tlspic-nacl.rd: New file.
* ld-x86-64/x86-64.exp: Accept nacl targets too.
For them, use options_regsub to replace elf_x86_64 with
elf_x86_64_nacl in run_dump_test cases; apply the same
substitution in $x86_64tests; replace foo.rd expectations
files with foo-nacl.rd in $x86_64tests.
Add explicit -melf_x86_64 to ld options in tests that need it,
in case the default emulation is x32 (as it is for x86_64-nacl).
* ld/testsuite/ld-x86-64/plt-nacl.pd: New file.
* ld/testsuite/ld-x86-64/split-by-file-nacl.rd: New file.
* ld/testsuite/ld-x86-64/tlsbin-nacl.rd: New file.
* ld/testsuite/ld-x86-64/tlsbindesc-nacl.rd: New file.
* ld/testsuite/ld-x86-64/tlsdesc-nacl.pd: New file.
* ld/testsuite/ld-x86-64/tlsdesc-nacl.rd: New file.
* ld/testsuite/ld-x86-64/tlsgdesc-nacl.rd: New file.
* ld/testsuite/ld-x86-64/tlspic-nacl.rd: New file.
* ld-i386/hidden2.d: Loosen regexps to match any file format variant,
and not to depend on exact addresses, displacements, etc. where
they are irrelevant.
* ld-i386/pcrel16.d: Likewise.
* ld-i386/pcrel16abs.d: Likewise.
* ld-i386/pr12718.d: Likewise.
* ld-i386/pr12921.d: Likewise.
* ld-i386/reloc.d: Likewise.
* ld-i386/tlsbin.dd: Likewise.
* ld-i386/tlsbin.sd: Likewise.
* ld-i386/tlsbin.td: Likewise.
* ld-i386/tlsbindesc.dd: Likewise.
* ld-i386/tlsbindesc.sd: Likewise.
* ld-i386/tlsbindesc.td: Likewise.
* ld-i386/tlsdesc.dd: Likewise.
* ld-i386/tlsdesc.sd: Likewise.
* ld-i386/tlsdesc.td: Likewise.
* ld-i386/tlsg.sd: Likewise.
* ld-i386/tlsgdesc.dd: Likewise.
* ld-i386/tlsindntpoff.dd: Likewise.
* ld-i386/tlsnopic.dd: Likewise.
* ld-i386/tlsnopic.sd: Likewise.
* ld-i386/tlspic.dd: Likewise.
* ld-i386/tlspic.sd: Likewise.
* ld-i386/tlspic.td: Likewise.
* ld-i386/tlspie2.d: Likewise.
* ld-x86-64/hidden2.d: Likewise.
* ld-x86-64/pcrel16.d: Likewise.
* ld-x86-64/pr12718.d: Likewise.
* ld-x86-64/pr12921.d: Likewise.
* ld-x86-64/protected3.d: Likewise.
* ld-x86-64/tlsbin.dd: Likewise.
* ld-x86-64/tlsbin.sd: Likewise.
* ld-x86-64/tlsbin.td: Likewise.
* ld-x86-64/tlsbindesc.dd: Likewise.
* ld-x86-64/tlsbindesc.sd: Likewise.
* ld-x86-64/tlsbindesc.td: Likewise.
* ld-x86-64/tlsdesc.dd: Likewise.
* ld-x86-64/tlsdesc.sd: Likewise.
* ld-x86-64/tlsdesc.td: Likewise.
* ld-x86-64/tlsg.sd: Likewise.
* ld-x86-64/tlsgd5.dd: Likewise.
* ld-x86-64/tlsgd6.dd: Likewise.
* ld-x86-64/tlsgdesc.dd: Likewise.
* ld-x86-64/tlspic.dd: Likewise.
* ld-x86-64/tlspic.sd: Likewise.
* ld-x86-64/tlspic.td: Likewise.
* ld-x86-64/ilp32-8.d: Match any file format variant.
Use a -Ttext and adjust expected results, to handle variant layouts.
* ld-x86-64/ilp32-9.d: Likewise.
* ld-i386/alloc.t: Remove superfluous OUTPUT_FORMAT statement.
* ld-i386/pr12627.t: Likewise.
* ld-x86-64/abs-l1om.d: Add target: constraint.
* ld-x86-64/protected2-l1om.d: Likewise.
* ld-x86-64/protected3-l1om.d: Likewise.
* ld-x86-64/ilp32-4.d: Likewise.
* ld-x86-64/plt.s: New file.
* ld-x86-64/pltlib.s: New file.
* ld-x86-64/plt.pd: New file.
* ld-x86-64/x86-64.exp (x86_64tests): Add them.
* ld-i386/plt.s: New file.
* ld-i386/pltlib.s: New file.
* ld-i386/plt.pd: New file.
* ld-i386/plt-pic.s: New file.
* ld-i386/plt-pic.pd: New file.
* ld-i386/i386.exp (i386tests): Add them.
2012-04-03 16:01:38 +00:00
David Daney
fb35d3d8fa
2011-12-15 David Daney <david.daney@cavium.com>
...
Nick Clifton <nickc@redhat.com>
* ld-elfvers/vers.exp (picflag): Set to -fpic for mips*-*-* when
using GCC-4.3 or later.
(pic): Set to "yes" for mips*-*-linux*.
* ld-elfvsb/elfvsb.exp: Don't test non-PIC shared libraried on
mips*-*-linux*.
(picflag): Set to -fpic for mips*-*-* when using GCC-4.3 or later.
* ld-elfweak/elfweak.exp (picflag): Set to -fpic for mips*-*-*
when using GCC-4.3 or later.
* ld-shared/shared.exp (picflag): Same.
* lib/ld-lib.exp (at_least_gcc_version): New proc.
2011-12-16 06:18:55 +00:00
H.J. Lu
8b7789423c
Fix misc x32 bugs.
...
bfd/
2011-06-19 H.J. Lu <hongjiu.lu@intel.com>
* elf64-x86-64.c (elf_backend_post_process_headers): Defined
for x32.
binutils/testsuite/
2011-06-19 H.J. Lu <hongjiu.lu@intel.com>
* binutils-all/elfedit-1.d: Updated for x32.
gas/
2011-06-19 H.J. Lu <hongjiu.lu@intel.com>
* configure.tgt: Support x32.
ld/
2011-06-19 H.J. Lu <hongjiu.lu@intel.com>
* configure.tgt: Support x32.
ld/testsuite/
2011-06-19 H.J. Lu <hongjiu.lu@intel.com>
* ld-elf/eh1.d: Skip x32.
* ld-elf/eh2.d: Likewise.
* ld-elf/eh3.d: Likewise.
* ld-elf/eh4.d: Likewise.
* ld-elfvsb/elfvsb.exp: Only xfail 64bit x86_64-*-linux*.
* ld-shared/shared.exp: Likewise.
* ld-ifunc/ifunc-1-local-x86.d: Support x32.
* ld-ifunc/ifunc-1-x86.d: Likewise.
* ld-ifunc/ifunc-3a-x86.d: Likewise.
* ld-x86-64/pcrel16.d: Likewise.
* ld-x86-64/x86-64.exp (x86_64tests): Add missing -melf_x86_64.
2011-06-19 21:22:16 +00:00
Alan Modra
2893311c83
* ld-elfvsb/elfvsb.exp: Don't run any non-PIC tests on powerpc*-linux.
...
* ld-gc/gc.exp: Ensure powerpc64 test continues to fail.
* ld-srec/srec.exp: Don't edit toc on powerpc64.
2011-02-09 08:18:54 +00:00
Thomas Schwinge
5940a93c84
Improve binutils testsuite coverage for GNU/Hurd.
...
binutils/testsuite/
* lib/utils-lib.exp (is_elf_format): Consider for *-*-gnu*, too.
* binutils-all/elfedit-2.d (target): Likewise.
* binutils-all/elfedit-3.d (target): Likewise.
* binutils-all/i386/i386.exp: Likewise.
* binutils-all/objcopy.exp: Likewise.
* binutils-all/strip-3.d (target): Likewise.
gas/testsuite/
* lib/gas-defs.exp (is_elf_format): Consider for *-*-gnu*, too.
* gas/elf/elf.exp: Likewise.
* gas/symver/symver.exp: Likewise.
ld/
* configure.host: Add stanza for *-*-gnu*.
ld/testsuite/
* lib/ld-lib.exp (is_elf_format): Consider for *-*-gnu*, too.
* ld-discard/discard.exp: Likewise.
* ld-elf/binutils.exp: Likewise.
* ld-elf/commonpage1.d (target): Likewise.
* ld-elf/compress1c.d (target): Likewise.
* ld-elf/discard1.d (target): Likewise.
* ld-elf/discard2.d (target): Likewise.
* ld-elf/discard3.d (target): Likewise.
* ld-elf/dynsym1.d (target): Likewise.
* ld-elf/eh6.d (target): Likewise.
* ld-elf/elf.exp: Likewise.
(array_tests): Move -static tests to...
(array_tests_static): ... here, and handle it accordingly.
* ld-elf/hash.d (target): Likewise.
* ld-elf/header.d (target): Likewise.
* ld-elf/loadaddr1.d (target): Likewise.
* ld-elf/loadaddr2.d (target): Likewise.
* ld-elf/loadaddr3a.d (target): Likewise.
* ld-elf/loadaddr3b.d (target): Likewise.
* ld-elf/local1.d (target): Likewise.
* ld-elf/maxpage1.d (target): Likewise.
* ld-elf/maxpage2.d (target): Likewise.
* ld-elf/maxpage3a.d (target): Likewise.
* ld-elf/multibss1.d (target): Likewise.
* ld-elf/noload-2.d (target): Likewise.
* ld-elf/seg.d (target): Likewise.
* ld-elf/textaddr1.d (target): Likewise.
* ld-elf/textaddr2.d (target): Likewise.
* ld-elf/textaddr3.d (target): Likewise.
* ld-elf/textaddr4.d (target): Likewise.
* ld-elf/textaddr5.d (target): Likewise.
* ld-elf/textaddr6.d (target): Likewise.
* ld-elf/textaddr7.d (target): Likewise.
* ld-elf/tls_common.exp: Likewise.
* ld-elf/unknown2.d (target): Likewise.
* ld-elfvers/vers.exp: Likewise.
* ld-elfvsb/elfvsb.exp: Likewise.
* ld-elfweak/elfweak.exp: Likewise.
(setup_xfail_gnu_hurd): New function. Use it where appropriate.
* ld-gc/abi-note.d (target): Likewise.
* ld-gc/gc.exp: Likewise.
* ld-gc/pr11218.d (target): Likewise.
* ld-gc/start.d (target): Likewise.
* ld-i386/i386.exp: Likewise.
* ld-ifunc/binutils.exp: Likewise.
* ld-ifunc/ifunc.exp: Likewise.
* ld-linkonce/linkonce.exp: Likewise.
* ld-linkonce/zeroehl32.d (target): Likewise.
* ld-pie/pie.exp: Likewise.
* ld-scripts/phdrs2.exp: Likewise.
* ld-scripts/rgn-at5.d (target): Likewise.
* ld-shared/shared.exp: Likewise.
* ld-undefined/entry-3.d (target): Likewise.
* ld-undefined/entry-4.d (target): Likewise.
* ld-undefined/weak-undef.exp: Likewise.
2010-11-08 06:43:40 +00:00
Nick Clifton
a9f844b107
* ld-elfvsb/elfvsb.exp: Fix tests for arm*-*-linux*.
...
* ld-shared/shared.exp: Likewise.
2010-02-09 10:46:27 +00:00
H.J. Lu
935bd1e079
bfd/
...
2009-09-24 H.J. Lu <hongjiu.lu@intel.com>
PR ld/10630
* elflink.c (elf_link_output_extsym): Turn off visibility on
local symbol.
(bfd_elf_final_link): Turn off visibility on dynamic local
symbol.
ld/testsuite/
2009-09-24 H.J. Lu <hongjiu.lu@intel.com>
PR ld/10630
* ld-alpha/tlsbin.rd: Remove HIDDEN/.hidden on local symbols.
* ld-alpha/tlsbinr.rd: Likewise.
* ld-alpha/tlspic.rd: Likewise.
* ld-cris/libdso-2.d: Likewise.
* ld-cris/locref1.d: Likewise.
* ld-cris/locref2.d: Likewise.
* ld-cris/tls-e-20a.d: Likewise.
* ld-cris/tls-e-20.d: Likewise.
* ld-cris/tls-e-80.d: Likewise.
* ld-cris/tls-gc-68.d: Likewise.
* ld-cris/tls-gc-69.d: Likewise.
* ld-cris/tls-gc-70.d: Likewise.
* ld-cris/tls-gc-75.d: Likewise.
* ld-cris/tls-gc-76.d: Likewise.
* ld-cris/tls-gc-79.d: Likewise.
* ld-cris/tls-gd-1h.d: Likewise.
* ld-cris/tls-gd-2h.d: Likewise.
* ld-cris/tls-ld-4.d: Likewise.
* ld-cris/tls-ld-5.d: Likewise.
* ld-cris/tls-ld-6.d: Likewise.
* ld-cris/tls-ld-7.d: Likewise.
* ld-cris/tls-ldgd-14.d: Likewise.
* ld-cris/tls-ldgd-15.d: Likewise.
* ld-cris/tls-local-63.d: Likewise.
* ld-cris/tls-local-64.d: Likewise.
* ld-elf/pr9676.rd: Likewise.
* ld-elf/pr9679.rd: Likewise.
* ld-elfvsb/hidden2.d: Likewise.
* ld-i386/tlsbindesc.rd: Likewise.
* ld-i386/tlsbin.rd: Likewise.
* ld-i386/tlsdesc.rd: Likewise.
* ld-i386/tlsgdesc.rd: Likewise.
* ld-i386/tlsnopic.rd: Likewise.
* ld-i386/tlspic.rd: Likewise.
* ld-ia64/tlsbin.rd: Likewise.
* ld-ia64/tlspic.rd: Likewise.
* ld-powerpc/tlsexe32.r: Likewise.
* ld-powerpc/tlsexe.r: Likewise.
* ld-powerpc/tlsexetoc.r: Likewise.
* ld-powerpc/tlsso32.r: Likewise.
* ld-powerpc/tlsso.r: Likewise.
* ld-powerpc/tlstocso.r: Likewise.
* ld-s390/tlsbin_64.rd: Likewise.
* ld-s390/tlsbin.rd: Likewise.
* ld-s390/tlspic_64.rd: Likewise.
* ld-s390/tlspic.rd: Likewise.
* ld-sparc/gotop32.rd: Likewise.
* ld-sparc/gotop64.rd: Likewise.
* ld-sparc/tlssunbin32.rd: Likewise.
* ld-sparc/tlssunbin64.rd: Likewise.
* ld-sparc/tlssunnopic32.rd: Likewise.
* ld-sparc/tlssunnopic64.rd: Likewise.
* ld-sparc/tlssunpic32.rd: Likewise.
* ld-sparc/tlssunpic64.rd: Likewise.
* ld-x86-64/tlsbindesc.rd: Likewise.
* ld-x86-64/tlsbin.rd: Likewise.
* ld-x86-64/tlsdesc.rd: Likewise.
* ld-x86-64/tlsgdesc.rd: Likewise.
* ld-x86-64/tlspic.rd: Likewise.
* ld-xtensa/tlsbin.rd: Likewise.
* ld-xtensa/tlspic.rd: Likewise.
* ld-elf/local1.d: New.
* ld-elf/local1.map: Likewise.
* ld-elf/local1.s: Likewise.
* ld-ia64/local1.d: Likewise.
* ld-ia64/local1.map: Likewise.
* ld-ia64/local1.s: Likewise.
2009-09-24 15:56:52 +00:00
Alan Modra
f9272224cd
Tolerate some whitespace differences in readelf output.
2009-09-23 03:12:28 +00:00
Alan Modra
aa820537ea
update copyright dates
2009-09-02 07:25:43 +00:00
Nick Clifton
f96b4a7b0f
Update sources to GPLv3
2007-07-06 14:09:45 +00:00
Alan Modra
125c64931b
* ld-elfvsb/sh1.c (overriddenvar, shlib_overriddencall2,
...
shared_data): If !SHARED, move to...
* ld-elfvsb/sh2.c: ... here.
* ld-elfvsb/elfvsb.exp: Add -DSHARED to compiler options when
building with $picflag.
2006-12-05 01:29:58 +00:00
Nick Clifton
75be928bd2
Update FSF addresses
2005-05-12 07:32:09 +00:00
Alan Modra
aef6203bd6
update copyright dates
2005-03-03 11:52:12 +00:00
Daniel Jacobowitz
a5e0d2699d
* ld-elfvsb/hidden2.d: Expect OBJECT.
...
* ld-elfvsb/hidden2.s: Force type OBJECT.
* ld-elfvsb/hidden2.ld: Place .dynamic explicitly.
* ld-elf/start.s: Provide __start for MIPS.
* ld-elfcomm/elfcomm.exp: Accept MIPS common section. XFAIL size change
test.
* ld-elf/warn1.d: Use group.ld instead of -Ttext.
2005-02-22 18:29:20 +00:00
Alan Modra
cc1bc22af7
gas/
...
* read.c (address_bytes): New function.
(TC_ADDRESS_BYTES): Default for BSD_ASSEMBLER to address_bytes.
(potable): Add "dc.a".
(cons_worker): Handle "dc.a".
* doc/internals.texi (TC_ADDRESS_BYTES): Document.
ld/testsuite/
* ld-elf/exclude1.s: Use ".dc.a".
* ld-elfvsb/hidden2.s: Likewise.
2005-02-21 08:39:53 +00:00
Alan Modra
d9391a1764
* ld-elfvsb/hidden2.s: Replace .word with .long.
2005-02-11 14:25:13 +00:00
Paul Brook
6fa3860b3b
2005-02-10 Paul Brook <paul@codesourcery.com>
...
* elflink.c (bfd_elf_record_link_assignment): Make hidden and internal
symbols local.
(elf_link_renumber_hash_table_dynsyms): Ignore local symbols.
(elf_link_renumber_local_hash_table_dynsyms): New function.
(_bfd_elf_link_renumber_dynsyms): Number local dynamic symbols.
ld/testsuite/
* ld-elfvsb/hidden2.s: New file
* ld-elfvsb/hidden2.d: New file
* ld-elfvsb/hidden2.ld: New file
2005-02-10 14:09:43 +00:00
Alan Modra
1ba54ee020
bfd/
...
* dwarf2.c (_bfd_dwarf2_find_nearest_line): Add output section
vma and output offset to address.
* simple.c (simple_save_output_info): Only set output section
and offset for debug sections, or those not already set up by
the linker.
(bfd_simple_get_relocated_section_contents): Update comment.
ld/testsuite/
* ld-elfvsb/elfvsb.exp: Remove file name from "undefined ref" string.
2004-09-24 07:07:22 +00:00
Alan Modra
82dd044a0d
* ld-elfvsb/elfvsb.exp: Cope with ppc64 dot symbols.
2004-08-17 05:39:32 +00:00
Nick Clifton
23a75657ad
* ld-elfvsb/main.c: Ensure visibility_def and visibility_func are
...
actually referenced (gcc 3.4 eliminates comparisons of addresses
of global symbols with NULL).
* ld-selective/selective.exp: Suppress -fvtable-gc tests for gcc
3.4.0 and above, as this option and its functionality is no longer
supported, making these tests fail).
2004-06-18 15:41:47 +00:00
Jakub Jelinek
8c37241be3
bfd/
...
* elflink.c (elf_bfd_final_link): Don't output STT_SECTION symbol
into .dynsym if elf_section_data (sec)->dynindx <= 0.
Adjust counting of last_local.
(_bfd_elf_link_renumber_dynsyms): Don't assign dynindx to sections
other than SHT_PROGBITS/SHT_NOBITS and neither for .got/.got.plt/.plt
created by the linker nor !SHF_ALLOC.
* elf32-i386.c (elf_i386_finish_dynamic_sections): Point
DT_PLTGOT to the start of the .got.plt section instead of the
.got output section. Set sh_entsize for .got section in addition
to .got.plt.
(elf_i386_relocate_section): Don't assume _GLOBAL_OFFSET_TABLE_
is at sgot->output_section->vma.
* elf64-x86-64.c (elf64_x86_64_finish_dynamic_sections): Point
DT_PLTGOT to the start of the .got.plt section instead of the
.got output section.
(elf64_x86_64_relocate_section): Don't assume _GLOBAL_OFFSET_TABLE_
is at sgot->output_section->vma. Set sh_entsize for .got section
in addition to .got.plt.
* elf.c (_bfd_elf_print_private_bfd_data): Handle PT_GNU_RELRO.
(bfd_section_from_phdr): Likewise.
(map_sections_to_segments): Likewise.
(assign_file_positions_for_segments): Likewise.
(get_program_header_size): Likewise.
* elflink.c (bfd_elf_size_dynamic_sections): Set
elf_tdata (output_bfd)->relro from info->relro.
* elf-bfd.h (struct elf_obj_tdata): Add relro field.
include/
* bfdlink.h (struct bfd_link_info): Add relro, relro_start and
relro_end fields.
* elf/common.h (PT_GNU_EH_FRAME, PT_GNU_STACK): Add comments.
(PT_GNU_RELRO): Define.
binutils/
* readelf.c (get_segment_type): Handle PT_GNU_RELRO.
ld/
* genscripts.sh: Generate -z combreloc -z now -z relro scripts
for binaries, -shared and -pie.
* emulparams/elf_i386.sh (SEPARATE_GOTPLT): Set.
* emulparams/elf_x86_64.sh (SEPARATE_GOTPLT): Set.
* emulparams/elf32ppc.sh (OTHER_READWRITE_SECTIONS): Rename to...
(OTHER_RELRO_SECTIONS): ... this.
* ldlex.l (DATA_SEGMENT_RELRO_END): Add.
* emultempl/elf32.em (gld${EMULATION_NAME}_handle_option): Handle
-z relro and -z norelro.
(gld${EMULATION_NAME}_list_options): Add it to usage.
(gld${EMULATION_NAME}_get_script): Return -z combreloc -z now
-z relro scripts when appropriate.
* scripttempl/elf.sc: Unset SEPARATE_GOTPLT if RELRO_NOW is set.
Create separate .got.plt section if SEPARATE_GOTPLT.
Move sections which are only written during relocation handling
to the beginning of RW segment. If NO_SMALL_DATA, move .got
before .data. Add DATA_SEGMENT_RELRO_END directive.
Include OTHER_RELRO_SECTIONS.
* ldgram.y (DATA_SEGMENT_RELRO_END): Add.
* ldexp.c (exp_print_token): Handle DATA_SEGMENT_RELRO_END.
(fold_unary): Likewise.
(fold_binary): Handle -z relro.
* ldexp.h (struct exp_data_seg): Add exp_dataseg_relro_seen and
exp_dataseg_relro_adjust phases. Add relro_end field.
* ldmain.c (main): Initialize link_info.relro to FALSE.
* ldlang.c (lang_size_sections): Handle -z relro.
ld/testsuite/
* ld-i386/tlspic.rd: Adjust for section reordering changes
and removal of unneeded STT_SECTION symbols from .dynsym.
* ld-i386/tlspic.dd: Likewise.
* ld-i386/tlspic.sd: Likewise.
* ld-i386/tlsbin.rd: Likewise.
* ld-i386/tlsbinpic.s: Likewise.
* ld-i386/tlsbin.dd: Likewise.
* ld-i386/tlsbin.sd: Likewise.
* ld-i386/tlsnopic.rd: Likewise.
* ld-i386/tlsnopic1.s: Likewise.
* ld-i386/combreloc.d: Likewise.
* ld-i386/tlsnopic.dd: Likewise.
* ld-i386/tlsnopic.sd: Likewise.
* ld-x86-64/tlspic.rd: Likewise.
* ld-x86-64/tlspic.dd: Likewise.
* ld-x86-64/tlsbin.dd: Likewise.
* ld-x86-64/tlspic.sd: Likewise.
* ld-x86-64/tlsbin.sd: Likewise.
* ld-x86-64/tlspic.td: Likewise.
* ld-x86-64/tlsbin.td: Likewise.
* ld-x86-64/tlsbin.rd: Likewise.
* ld-s390/tlspic1.s: Likewise.
* ld-s390/tlsbinpic.s: Likewise.
* ld-s390/tlspic.rd: Likewise.
* ld-s390/tlsbin.rd: Likewise.
* ld-s390/tlspic.dd: Likewise.
* ld-s390/tlsbin.dd: Likewise.
* ld-s390/tlsbin.sd: Likewise.
* ld-s390/tlsbin.td: Likewise.
* ld-s390/tlspic.sd: Likewise.
* ld-s390/tlspic.td: Likewise.
* ld-s390/tlspic1_64.s: Likewise.
* ld-s390/tlsbinpic_64.s: Likewise.
* ld-s390/tlspic_64.rd: Likewise.
* ld-s390/tlsbin_64.rd: Likewise.
* ld-s390/tlspic_64.dd: Likewise.
* ld-s390/tlsbin_64.dd: Likewise.
* ld-s390/tlspic_64.sd: Likewise.
* ld-s390/tlspic_64.td: Likewise.
* ld-s390/tlsbin_64.td: Likewise.
* ld-s390/tlsbin_64.sd: Likewise.
* ld-powerpc/tlsexe32.r: Likewise.
* ld-powerpc/tlsso32.r: Likewise.
* ld-powerpc/tlsso32.d: Likewise.
* ld-powerpc/tlsso32.g: Likewise.
* ld-powerpc/tlsso32.t: Likewise.
* ld-powerpc/tlsexe.r: Likewise.
* ld-powerpc/tlsso.r: Likewise.
* ld-powerpc/tlsso.g: Likewise.
* ld-powerpc/tlsexetoc.r: Likewise.
* ld-powerpc/tlstocso.r: Likewise.
* ld-powerpc/tlstocso.g: Likewise.
* ld-ia64/tlspic.rd: Likewise.
* ld-ia64/tlspic.dd: Likewise.
* ld-ia64/tlspic.sd: Likewise.
* ld-ia64/tlspic.td: Likewise.
* ld-ia64/tlsbin.rd: Likewise.
* ld-ia64/tlsbin.sd: Likewise.
* ld-ia64/tlsbin.td: Likewise.
* ld-elfvsb/elfvsb.exp: XFAIL non-PIC load offset tests on s390x.
* ld-shared/shared.exp: Likewise.
2004-05-11 17:08:38 +00:00
Jakub Jelinek
4dc570c2f5
bfd/
...
* elf32-sparc.c (elf32_sparc_relocate_section): Handle
relocs against hidden/protected undefweak symbols properly.
* elf64-sparc.c (sparc64_elf_relocate_section): Likewise.
gas/testsuite/
* gas/cfi/cfi-sparc64-1.d: Update.
ld/testsuite/
* ld-elfvsb/elfvsb.exp: XFAIL some tests on sparc64.
* ld-shared/shared.exp: Likewise.
2004-04-19 14:25:49 +00:00
Dave Anglin
c0d48c0b48
* configure.host (HOSTING_LIBS): Define for hppa*-*-linux*.
...
* ld-elfvsb/elfvsb.exp: xfail non-pic shared library tests for
non 64-bit hppa*-*-linux* targets.
* ld-elfvsb/main.c (main_visibility_check): Cast value returned by
visibility_funptr () to a function pointer.
* ld-shared/shared.exp: xfail shared (non PIC), shared (non PIC, load
offset), and shared (PIC main, non PIC so) tests for non 64-bit
hppa*-*-linux* targets.
2003-10-07 17:30:02 +00:00
Jakub Jelinek
933f40e758
* ld-elfvsb/elf-offset.ld: Add .rel.toc, .rela.toc and .toc
...
sections.
--- ld/testsuite/ld-elfvsb/elf-offset.ld.jj 2003-05-19 17:12:47.000000000 -0400
+++ ld/testsuite/ld-elfvsb/elf-offset.ld 2003-07-29 05:39:34.000000000 -0400
@@ -46,6 +46,8 @@ SECTIONS
}
.rel.got : { *(.rel.got) }
.rela.got : { *(.rela.got) }
+ .rel.toc : { *(.rel.toc) }
+ .rela.toc : { *(.rela.toc) }
.rel.ctors : { *(.rel.ctors) }
.rela.ctors : { *(.rela.ctors) }
.rel.dtors : { *(.rel.dtors) }
@@ -111,6 +113,7 @@ SECTIONS
KEEP (*(.dtors))
}
.got : { *(.got.plt) *(.got) }
+ .toc : { *(.toc) }
.dynamic : { *(.dynamic) }
/* We want the small data sections together, so single-instruction offsets
can access them all, and initialized data all before uninitialized, so
2003-07-29 14:02:55 +00:00
Alan Modra
81cacc150b
* ld-elfvsb/elfvsb.exp: Run for powerpc64 too.
...
* ld-powerpc/tls.t: Update.
* ld-powerpc/tlsexe.d: Update.
* ld-powerpc/tlsexe.r: Update.
* ld-powerpc/tlsexetoc.d: Update.
* ld-powerpc/tlsexetoc.r: Update.
* ld-powerpc/tlsexetoc.t: Update.
* ld-powerpc/tlsso.d: Update.
* ld-powerpc/tlsso.g: Update.
* ld-powerpc/tlsso.r: Update.
* ld-powerpc/tlsso.t: Update.
* ld-powerpc/tlstocso.d: Update.
* ld-powerpc/tlstocso.g: Update.
* ld-powerpc/tlstocso.r: Update.
* ld-powerpc/tlstocso.t: Update.
2003-06-10 04:36:01 +00:00
H.J. Lu
22d5e33918
bfd/
...
2003-05-20 Jakub Jelinek <jakub@redhat.com>
* elflink.h (elf_link_output_extsym): Only issue error about !=
STV_DEFAULT symbols if they are bfd_link_hash_undefined.
2003-05-20 H.J. Lu <hongjiu.lu@intel.com>
* elflink.c (_bfd_elf_merge_symbol): Check ELF_LINK_DYNAMIC_DEF
when removing the old definition for symbols with non-default
visibility.
ld/testsuite/
2003-05-20 Jakub Jelinek <jakub@redhat.com>
* ld-elfvsb/common.c: New file.
* ld-elfvsb/elfvsb.exp: Add common.
2003-05-20 H.J. Lu <hongjiu.lu@intel.com>
* ld-elfvsb/sh3.c: New file.
* ld-elfvsb/test.c: Likewise.
* ld-elfvsb/elfvsb.exp: Add new weak hidden symbol tests.
2003-05-20 14:35:01 +00:00
H.J. Lu
b765d4e375
2003-05-15 H.J. Lu <hongjiu.lu@intel.com>
...
* config/default.exp (gcc_ld_flag): New. Make the newly built
linker available to gcc.
* lib/ld-lib.exp (default_ld_simple_link): Pass $gcc_ld_flag
to gcc.
* ld-elfvers/vers.exp: Use "ld_simple_link $CC" to build shared
libraries.
* ld-elfvsb/elfvsb.exp: Likewise.
* ld-elfweak/elfweak.exp: Likewise.
* ld-shared/shared.exp: Likewise.
* ld-elfvers/vers.exp: Use "-Wl,-rpath,." to build shared
libraries.
* ld-elfvsb/elfvsb.exp: Likewise.
* ld-elfvsb/elfvsb.exp: Remove xfail for powerpc-*-linux*.
* ld-elfweak/elfweak.exp: Use PIC for shared libraries.
2003-05-16 05:04:34 +00:00
Nick Clifton
59758b1cc8
Run on sh[34]*-*-linux*.
2003-05-13 11:39:58 +00:00
Martin Schwidefsky
4648dfcf5b
* ld-elfvsb/elf-offset.ld: Add .rel.eh_frame and .rela.eh_frame
...
to linker script.
* ld-elfvsb/elfvsb.exp (visibility_run): Add setup_xfails for s390x.
* ld-selective/selective.exp: Disable for s390 and s390x.
* ld-shared/elf-offset.ld: Add .rel.eh_frame and .rela.eh_frame
to linker script.
* ld-shared/shared.exp (shared_test): Add setup_xfails for s390x.
* ld-undefined/undefined.exp (checkund): Remove setup_xfail for s390x.
2003-05-09 15:35:09 +00:00
Andreas Schwab
3a8260b266
* ld-elfvsb/elfvsb.exp: Run dump tests even when cross
...
compiling.
2003-05-07 09:21:27 +00:00
H.J. Lu
ef5aade5ac
bfd/
...
2003-05-04 H.J. Lu <hjl@gnu.org>
* elf32-i386.c (allocate_dynrelocs): Don't allocate dynamic
relocation entries for weak undefined symbols with non-default
visibility.
(elf_i386_relocate_section): Initialize the GOT entries and
skip R_386_32/R_386_PC32 for weak undefined symbols with
non-default visibility.
* elfxx-ia64.c (allocate_fptr): Don't allocate function
descriptors for weak undefined symbols with non-default
visibility.
(allocate_dynrel_entries): Don't allocate relocation entries
for symbols resolved to 0.
(set_got_entry): Don't install dynamic relocation for weak
undefined symbols with non-default visibility.
(set_pltoff_entry): Likewise.
* elflink.h (elf_fix_symbol_flags): Hide weak undefined symbols
with non-default visibility.
(elf_link_output_extsym): Don't make weak undefined symbols
with non-default visibility dynamic.
ld/testsuite/
2003-05-04 H.J. Lu <hjl@gnu.org>
* ld-elfvsb/main.c: Updated.
* ld-elfvsb/sh1.c: Likewise.
2003-05-05 05:46:53 +00:00
H.J. Lu
1b1fe8feb3
bfd/
...
2003-04-27 H.J. Lu <hjl@gnu.org>
* elf-bfd.h (ELF_LINK_DYNAMIC_DEF): New.
(ELF_LINK_DYNAMIC_WEAK): New.
* elflink.h (elf_merge_symbol): Add one argument to indicate if
a symbol should be skipped. Ignore definitions in dynamic
objects for symbols with non-default visibility.
(elf_add_default_symbol): Adjusted.
(elf_link_add_object_symbols): Check if a symbol should be
skipped. Don't merge the visibility field with the one from
a dynamic object.
(elf_link_check_versioned_symbol): Use undef_bfd.
(elf_link_output_extsym): Warn if a forced local symbol is
referenced from dynamic objects. Make non-weak undefined symbol
with non-default visibility a fatal error.
ld/testsuite/
2003-04-27 H.J. Lu <hjl@gnu.org>
* ld-elfvsb/elfvsb.dat: Updated.
* ld-elfvsb/elfvsb.exp: Likewise.
* ld-elfvsb/main.c: Likewise.
* ld-elfvsb/sh1.c: Likewise.
* ld-elfvsb/sh2.c: Likewise.
2003-04-28 03:31:36 +00:00
Jakub Jelinek
9147e853bf
bfd/
...
* elflink.h (elf_link_add_object_symbols): Handle .symver x, x@FOO.
ld/testsuite/
* ld-shared/shared.exp: Run on s390*-*-linux* and x86_64-*-linux* too.
xfail tests linking non-pic code into shared libs on x86_64-*-linux*.
* ld-elfvsb/elfvsb.exp: Likewise.
* ld-elfvers/vers.exp: Likewise. Add vers24a, vers24b and vers24c
tests.
* ld-elfvers/vers3.ver: Allow VERS_2.0 to come before GLIBC_*
version.
* ld-elfvers/vers19.ver: Likewise.
* ld-elfvers/vers24a.c: New test.
* ld-elfvers/vers24b.c: New test.
* ld-elfvers/vers24c.c: New test.
* ld-elfvers/vers24.map: New test.
* ld-elfvers/vers24.rd: New test.
* lib/ld-lib.exp (run_ld_link_tests): Add optional 7th argument
cflags. If source files have .c extension, compile them first.
2003-02-13 22:14:11 +00:00
Alan Modra
f72dfb13ce
* ld-elfvsb/define.s: Avoid use of @ in .type directive.
2002-11-09 12:27:50 +00:00
Alan Modra
19c7c58222
* ld-discard/discard.exp, ld-scripts/phdrs.exp, ld-scripts/phdrs2.exp,
...
ld-selective/sel-dump.exp: Test hppa*64*-*-hpux* target.
* ld-elfvers/vers.exp, ld-elfvsb/elfvsb.exp, ld-elfweak/elfweak.exp,
ld-linkonce/linkonce.exp, ld-shared/shared.exp,
ld-undefined/weak-undef.exp: Test hppa*64*-*-hpux* and hppa*-*-linux*
targets.
* ld-discard/exit.s, ld-discard/extern.s, ld-discard/start.s,
ld-discard/static.s: Add whitespace before assembler directives.
2002-07-30 07:41:15 +00:00
Richard Henderson
212a6b8ef7
* ld-elfvsb/elfvsb.exp: Mirror ia64 non-pic xfails for alpha.
...
* ld-shared/shared.exp: Likewise.
* ld-selective/selective.exp: Disable for alpha.
* ld-undefined/undefined.exp: Add alpha to dwarf2 xfails.
2002-04-19 19:28:09 +00:00
Daniel Jacobowitz
4bcc9fa440
2002-02-18 Daniel Jacobowitz <drow@mvista.com>
...
* ld-elfvsb/sh1.c: Fix typo in last change.
2002-02-18 22:42:55 +00:00
Daniel Jacobowitz
aa3932f699
2002-02-17 Daniel Jacobowitz <drow@mvista.com>
...
* ld-elfvsb/sh1.c: Use #pragma weak.
2002-02-18 04:49:17 +00:00
H.J. Lu
f5e0494514
2001-11-19 H.J. Lu <hjl@gnu.org>
...
* ld-elfvsb/define.s: Mark all global lables as object.
* ld-elfvsb/hidden0.d: Match large section number.
* ld-elfvsb/hidden1.d: Likewise.
* ld-elfvsb/internal0.d: Likewise.
* ld-elfvsb/internal1.d: Likewise.
* ld-elfvsb/protected0.d: Likewise.
* ld-elfvsb/protected1.d: Likewise.
* ld-elfvsb/hidden0.d: Change NOTYPE to OBJECT.
* ld-elfvsb/internal0.d: Likewise.
* ld-elfvsb/protected0.d: Likewise.
2001-11-19 20:32:02 +00:00
H.J. Lu
04827a14fb
2001-11-02 H.J. Lu <hjl@gnu.org>
...
* ld-elfvsb/elfvsb.exp: Add the "ld -r" test.
* ld-elfvsb/hidden0.d: New.
* ld-elfvsb/hidden1.d: New.
* ld-elfvsb/internal0.d: New.
* ld-elfvsb/internal1.d: New.
* ld-elfvsb/protected0.d: New.
* ld-elfvsb/protected1.d: New.
* ld-elfvsb/undef.s: New.
* ld-elfvsb/undef.s: New.
2001-11-02 17:24:54 +00:00
H.J. Lu
66517a2f18
2001-06-06 H.J. Lu <hjl@gnu.org>
...
* ld-bootstrap/bootstrap.exp: Rebuild tmpdir/ld2 with tmpdir/ld3
on Linux/mips.
* ld-elfvers/vers.exp: Also run on istarget Linux/mips.
* ld-elfvsb/elfvsb.exp: Likewise.
* ld-shared/shared.exp: Likewise.
* ld-selective/selective.exp: Mark selective2, selective3,
selective4 and selective5 xfail on Linux/mips.
* ld-shared/main.c: Skip invalid -Bsymbolic tests on Linux/mips.
* symbolic.dat: Remove invalid -Bsymbolic tests on Linux/mips.
* ld-srec/srec.exp: Add Linux/mips to xfail.
2001-06-06 21:03:59 +00:00
Nick Clifton
a2b64bede3
Fixtypos in ChangeLogs, fix copyright dates in files
2001-03-13 06:14:29 +00:00
H.J. Lu
ad995491f8
2001-02-14 H.J. Lu <hjl@gnu.org>
...
* ld-bootstrap/bootstrap.exp: Rebuild tmpdir/ld2 with tmpdir/ld3
for -static on ia64.
* ld-checks/checks.exp: Don't run on ia64-*-elf* nor
ia64-*-linux*.
* ld-elfvers/vers.exp: Also run ia64-*-elf* and ia64-*-linux*.
* ld-elfvsb/elfvsb.exp: Use i?86-*-*. Also run on ia64-*-linux*.
Set up expected failures for ia64-*-linux*.
* ld-shared/shared.exp: Likewise.
2001-02-15 01:17:07 +00:00
Phil Blundell
2ffd68ef6e
2001-01-03 Philip Blundell <pb@futuretv.com>
...
* ld-elfvsb/elfvsb.exp: Run test on Linux/Alpha.
* ld-shared/shared.exp: Likewise.
2001-01-03 09:51:52 +00:00
Phil Blundell
4f38fc1c6c
2001-01-01 Philip Blundell <philb@gnu.org>
...
* ld-elfvers/vers.exp: Run test on Linux/ARM.
* ld-elfvsb/elfvsb.exp: Likewise.
* ld-shared/shared.exp: Likewise.
2001-01-01 14:52:34 +00:00
Alan Modra
1566ad5dd3
Fix compilation warnings as otherwise we fail the test.
2000-11-06 10:07:06 +00:00
H.J. Lu
d1d8dddfbd
2000-10-19 H.J. Lu (hjl@gnu.org)
...
* ld-elfvsb/elfvsb.exp (visibility_run): Set expected failures
for Linux/PPC.
* ld-shared/shared.exp: Likewise.
2000-10-19 19:52:28 +00:00
H.J. Lu
360e95866f
2000-07-24 H.J. Lu (hjl@gnu.org)
...
* ld-elfvsb/elfvsb.exp: Add -g to $CC to get the location of
the undefined reference.
2000-07-24 15:40:20 +00:00