diff options
Diffstat (limited to 'ld/testsuite/ld-sparc')
-rw-r--r-- | ld/testsuite/ld-sparc/sparc.exp | 28 | ||||
-rw-r--r-- | ld/testsuite/ld-sparc/tlsg64.sd | 3 | ||||
-rw-r--r-- | ld/testsuite/ld-sparc/tlssunbin64.dd | 270 | ||||
-rw-r--r-- | ld/testsuite/ld-sparc/tlssunbin64.rd | 129 | ||||
-rw-r--r-- | ld/testsuite/ld-sparc/tlssunbin64.sd | 5 | ||||
-rw-r--r-- | ld/testsuite/ld-sparc/tlssunbin64.td | 8 | ||||
-rw-r--r-- | ld/testsuite/ld-sparc/tlssunnopic64.dd | 78 | ||||
-rw-r--r-- | ld/testsuite/ld-sparc/tlssunnopic64.rd | 99 | ||||
-rw-r--r-- | ld/testsuite/ld-sparc/tlssunnopic64.sd | 6 | ||||
-rw-r--r-- | ld/testsuite/ld-sparc/tlssunpic64.dd | 210 | ||||
-rw-r--r-- | ld/testsuite/ld-sparc/tlssunpic64.rd | 138 | ||||
-rw-r--r-- | ld/testsuite/ld-sparc/tlssunpic64.sd | 12 | ||||
-rw-r--r-- | ld/testsuite/ld-sparc/tlssunpic64.td | 8 |
13 files changed, 959 insertions, 35 deletions
diff --git a/ld/testsuite/ld-sparc/sparc.exp b/ld/testsuite/ld-sparc/sparc.exp index c157823..64ec260 100644 --- a/ld/testsuite/ld-sparc/sparc.exp +++ b/ld/testsuite/ld-sparc/sparc.exp @@ -37,50 +37,50 @@ if { !([istarget "sparc*-*-elf*"] # readelf: Apply readelf options on result. Compare with regex (last arg). set sparctests { - {"TLS -fpic -shared transitions" "-shared -melf32_sparc" + {"32-bit: TLS -fpic -shared transitions" "-shared -melf32_sparc" "--32 -K PIC" {tlssunpic32.s tlspic.s} {{readelf -WSsrl tlssunpic32.rd} {objdump -drj.text tlssunpic32.dd} {objdump -sj.got tlssunpic32.sd} {objdump -sj.tdata tlssunpic32.td}} "libtlssunpic32.so"} - {"Helper shared library" "-shared -melf32_sparc" + {"32-bit: Helper shared library" "-shared -melf32_sparc" "--32 -K PIC" {tlslib.s} {} "libtlslib32.so"} - {"Another helper shared library" "-shared -melf32_sparc" + {"32-bit: Another helper shared library" "-shared -melf32_sparc" "--32 -K PIC" {tlssunbinpic32.s} {} "libtlssunbinpic32.so"} - {"TLS -fpic and -fno-pic exec transitions" + {"32-bit: TLS -fpic and -fno-pic exec transitions" "-melf32_sparc tmpdir/libtlslib32.so tmpdir/tlssunbinpic32.o" "--32" {tlssunbin32.s} {{readelf -WSsrl tlssunbin32.rd} {objdump -drj.text tlssunbin32.dd} {objdump -sj.got tlssunbin32.sd} {objdump -sj.tdata tlssunbin32.td}} "tlssunbin32"} - {"TLS -fno-pic -shared" "-shared -melf32_sparc" + {"32-bit: TLS -fno-pic -shared" "-shared -melf32_sparc" "--32" {tlssunnopic32.s tlsnopic.s} {{readelf -WSsrl tlssunnopic32.rd} {objdump -drj.text tlssunnopic32.dd} {objdump -sj.got tlssunnopic32.sd}} "libtlssunnopic32.so"} - {"TLS in debug sections" "-melf32_sparc" + {"32-bit: TLS in debug sections" "-melf32_sparc" "--32" {tlsg32.s} {{objdump -sj.debug_foobar tlsg32.sd}} "tlsg32"} } set sparc64tests { - {"TLS -fpic -shared transitions" "-shared -melf64_sparc" + {"64-bit: TLS -fpic -shared transitions" "-shared -melf64_sparc" "--64 -Av9 -K PIC" {tlssunpic64.s tlspic.s} {{readelf -WSsrl tlssunpic64.rd} {objdump -drj.text tlssunpic64.dd} {objdump -sj.got tlssunpic64.sd} {objdump -sj.tdata tlssunpic64.td}} "libtlssunpic64.so"} - {"Helper shared library" "-shared -melf64_sparc" + {"64-bit: Helper shared library" "-shared -melf64_sparc" "--64 -Av9 -K PIC" {tlslib.s} {} "libtlslib64.so"} - {"Another helper shared library" "-shared -melf64_sparc" + {"64-bit: Another helper shared library" "-shared -melf64_sparc" "--64 -Av9 -K PIC" {tlssunbinpic64.s} {} "libtlssunbinpic64.so"} - {"TLS -fpic and -fno-pic exec transitions" + {"64-bit: TLS -fpic and -fno-pic exec transitions" "-melf64_sparc tmpdir/libtlslib64.so tmpdir/tlssunbinpic64.o" "--64 -Av9" {tlssunbin64.s} {{readelf -WSsrl tlssunbin64.rd} {objdump -drj.text tlssunbin64.dd} {objdump -sj.got tlssunbin64.sd} {objdump -sj.tdata tlssunbin64.td}} "tlssunbin64"} - {"TLS -fno-pic -shared" "-shared -melf64_sparc" + {"64-bit: TLS -fno-pic -shared" "-shared -melf64_sparc" "--64 -Av9" {tlssunnopic64.s tlsnopic.s} {{readelf -WSsrl tlssunnopic64.rd} {objdump -drj.text tlssunnopic64.dd} {objdump -sj.got tlssunnopic64.sd}} "libtlssunnopic64.so"} - {"TLS in debug sections" "-melf64_sparc" + {"64-bit: TLS in debug sections" "-melf64_sparc" "--64 -Av9" {tlsg64.s} {{objdump -sj.debug_foobar tlsg64.sd}} "tlsg64"} } @@ -88,4 +88,6 @@ set sparc64tests { if { ![istarget "sparc64-*-elf*"] } { run_ld_link_tests $sparctests } -# run_ld_link_tests $sparc64tests +if { ![istarget "sparc-*-elf*"] } { + run_ld_link_tests $sparc64tests +} diff --git a/ld/testsuite/ld-sparc/tlsg64.sd b/ld/testsuite/ld-sparc/tlsg64.sd index 6768fa1..4181dde 100644 --- a/ld/testsuite/ld-sparc/tlsg64.sd +++ b/ld/testsuite/ld-sparc/tlsg64.sd @@ -7,5 +7,4 @@ .*: +file format elf64-sparc Contents of section .debug_foobar: -# FIXME -#pass + 0+ 0+ 0+18 .* diff --git a/ld/testsuite/ld-sparc/tlssunbin64.dd b/ld/testsuite/ld-sparc/tlssunbin64.dd index 9a5dad9..0585ae6 100644 --- a/ld/testsuite/ld-sparc/tlssunbin64.dd +++ b/ld/testsuite/ld-sparc/tlssunbin64.dd @@ -7,5 +7,271 @@ .*: +file format elf64-sparc Disassembly of section .text: -# FIXME -#pass + +0+101000 <fn2-0x8>: + +101000: 81 c3 e0 08 retl * + +101004: ae 03 c0 17 add %o7, %l7, %l7 + +0+101008 <fn2>: + +101008: 9d e3 bf 60 save %sp, -160, %sp + +10100c: 2f 00 04 04 sethi %hi\(0x101000\), %l7 + +101010: 7f ff ff fc call 101000 <.*> + +101014: ae 05 e2 f8 add %l7, 0x2f8, %l7 ! 1012f8 <.*> + +101018: 01 00 00 00 nop * + +10101c: 01 00 00 00 nop * + +101020: 01 00 00 00 nop * + +101024: 01 00 00 00 nop * + +101028: 23 00 00 00 sethi %hi\(0\), %l1 + +10102c: 01 00 00 00 nop * + +101030: a4 04 60 20 add %l1, 0x20, %l2 + +101034: 01 00 00 00 nop * + +101038: d0 5d c0 12 ldx \[ %l7 \+ %l2 \], %o0 + +10103c: 01 00 00 00 nop * + +101040: 90 01 c0 08 add %g7, %o0, %o0 + +101044: 01 00 00 00 nop * + +101048: 01 00 00 00 nop * + +10104c: 01 00 00 00 nop * + +101050: 01 00 00 00 nop * + +101054: 01 00 00 00 nop * + +101058: 11 00 00 00 sethi %hi\(0\), %o0 + +10105c: 92 02 20 10 add %o0, 0x10, %o1 ! 10 <.*> + +101060: d0 5d c0 09 ldx \[ %l7 \+ %o1 \], %o0 + +101064: 90 01 c0 08 add %g7, %o0, %o0 + +101068: 01 00 00 00 nop * + +10106c: 01 00 00 00 nop * + +101070: 01 00 00 00 nop * + +101074: 01 00 00 00 nop * + +101078: 01 00 00 00 nop * + +10107c: 21 00 00 00 sethi %hi\(0\), %l0 + +101080: aa 1c 3f 60 xor %l0, -160, %l5 + +101084: 90 01 c0 15 add %g7, %l5, %o0 + +101088: 01 00 00 00 nop * + +10108c: 01 00 00 00 nop * + +101090: 01 00 00 00 nop * + +101094: 01 00 00 00 nop * + +101098: 01 00 00 00 nop * + +10109c: 01 00 00 00 nop * + +1010a0: 11 00 00 00 sethi %hi\(0\), %o0 + +1010a4: 92 1a 3f 80 xor %o0, -128, %o1 + +1010a8: 90 01 c0 09 add %g7, %o1, %o0 + +1010ac: 01 00 00 00 nop * + +1010b0: 01 00 00 00 nop * + +1010b4: 01 00 00 00 nop * + +1010b8: 01 00 00 00 nop * + +1010bc: 01 00 00 00 nop * + +1010c0: 01 00 00 00 nop * + +1010c4: 11 00 00 00 sethi %hi\(0\), %o0 + +1010c8: 92 1a 3f a0 xor %o0, -96, %o1 + +1010cc: 90 01 c0 09 add %g7, %o1, %o0 + +1010d0: 01 00 00 00 nop * + +1010d4: 01 00 00 00 nop * + +1010d8: 01 00 00 00 nop * + +1010dc: 01 00 00 00 nop * + +1010e0: 01 00 00 00 nop * + +1010e4: 01 00 00 00 nop * + +1010e8: 01 00 00 00 nop * + +1010ec: 01 00 00 00 nop * + +1010f0: 01 00 00 00 nop * + +1010f4: 01 00 00 00 nop * + +1010f8: 01 00 00 00 nop * + +1010fc: 01 00 00 00 nop * + +101100: 90 10 00 00 mov %g0, %o0 + +101104: 01 00 00 00 nop * + +101108: 27 00 00 00 sethi %hi\(0\), %l3 + +10110c: 01 00 00 00 nop * + +101110: a8 1c ff 80 xor %l3, -128, %l4 + +101114: 01 00 00 00 nop * + +101118: aa 01 c0 14 add %g7, %l4, %l5 + +10111c: 01 00 00 00 nop * + +101120: 25 00 00 00 sethi %hi\(0\), %l2 + +101124: 01 00 00 00 nop * + +101128: a6 1c bf 86 xor %l2, -122, %l3 + +10112c: 01 00 00 00 nop * + +101130: ec 11 c0 13 lduh \[ %g7 \+ %l3 \], %l6 + +101134: 01 00 00 00 nop * + +101138: 01 00 00 00 nop * + +10113c: 01 00 00 00 nop * + +101140: 01 00 00 00 nop * + +101144: 01 00 00 00 nop * + +101148: 27 00 00 00 sethi %hi\(0\), %l3 + +10114c: 01 00 00 00 nop * + +101150: 25 00 00 00 sethi %hi\(0\), %l2 + +101154: 01 00 00 00 nop * + +101158: a8 1c ff a0 xor %l3, -96, %l4 + +10115c: 90 10 00 00 mov %g0, %o0 + +101160: a6 1c bf a5 xor %l2, -91, %l3 + +101164: aa 01 c0 14 add %g7, %l4, %l5 + +101168: ec 09 c0 13 ldub \[ %g7 \+ %l3 \], %l6 + +10116c: 01 00 00 00 nop * + +101170: 01 00 00 00 nop * + +101174: 01 00 00 00 nop * + +101178: 01 00 00 00 nop * + +10117c: 23 00 00 00 sethi %hi\(0\), %l1 + +101180: 01 00 00 00 nop * + +101184: a4 04 60 10 add %l1, 0x10, %l2 + +101188: 01 00 00 00 nop * + +10118c: e4 5d c0 12 ldx \[ %l7 \+ %l2 \], %l2 + +101190: 01 00 00 00 nop * + +101194: a4 01 c0 12 add %g7, %l2, %l2 + +101198: 01 00 00 00 nop * + +10119c: 01 00 00 00 nop * + +1011a0: 01 00 00 00 nop * + +1011a4: 01 00 00 00 nop * + +1011a8: 17 00 00 00 sethi %hi\(0\), %o3 + +1011ac: 96 1a ff 60 xor %o3, -160, %o3 + +1011b0: 94 10 00 0b mov %o3, %o2 + +1011b4: 98 01 c0 0a add %g7, %o2, %o4 + +1011b8: 01 00 00 00 nop * + +1011bc: 01 00 00 00 nop * + +1011c0: 01 00 00 00 nop * + +1011c4: 01 00 00 00 nop * + +1011c8: 29 00 00 00 sethi %hi\(0\), %l4 + +1011cc: a2 1d 3f 80 xor %l4, -128, %l1 + +1011d0: a6 10 00 11 mov %l1, %l3 + +1011d4: a6 01 c0 13 add %g7, %l3, %l3 + +1011d8: 01 00 00 00 nop * + +1011dc: 01 00 00 00 nop * + +1011e0: 01 00 00 00 nop * + +1011e4: 01 00 00 00 nop * + +1011e8: 13 00 00 00 sethi %hi\(0\), %o1 + +1011ec: 96 1a 7f a0 xor %o1, -96, %o3 + +1011f0: 90 10 00 0b mov %o3, %o0 + +1011f4: 96 01 c0 08 add %g7, %o0, %o3 + +1011f8: 01 00 00 00 nop * + +1011fc: 01 00 00 00 nop * + +101200: 01 00 00 00 nop * + +101204: 01 00 00 00 nop * + +101208: 17 00 00 00 sethi %hi\(0\), %o3 + +10120c: 96 02 e0 08 add %o3, 8, %o3 ! 8 <.*> + +101210: d4 5d c0 0b ldx \[ %l7 \+ %o3 \], %o2 + +101214: d8 59 c0 0a ldx \[ %g7 \+ %o2 \], %o4 + +101218: 01 00 00 00 nop * + +10121c: 01 00 00 00 nop * + +101220: 01 00 00 00 nop * + +101224: 01 00 00 00 nop * + +101228: 17 00 00 00 sethi %hi\(0\), %o3 + +10122c: 96 1a ff 90 xor %o3, -112, %o3 + +101230: 94 10 00 0b mov %o3, %o2 + +101234: d8 29 c0 0a stb %o4, \[ %g7 \+ %o2 \] + +101238: 01 00 00 00 nop * + +10123c: 01 00 00 00 nop * + +101240: 01 00 00 00 nop * + +101244: 01 00 00 00 nop * + +101248: 1b 00 00 00 sethi %hi\(0\), %o5 + +10124c: 96 1b 7f b0 xor %o5, -80, %o3 + +101250: 94 10 00 0b mov %o3, %o2 + +101254: d8 49 c0 0a ldsb \[ %g7 \+ %o2 \], %o4 + +101258: 01 00 00 00 nop * + +10125c: 01 00 00 00 nop * + +101260: 01 00 00 00 nop * + +101264: 01 00 00 00 nop * + +101268: 81 cf e0 08 rett %i7 \+ 8 + +10126c: 01 00 00 00 nop * +#... + +0+102000 <_start>: + +102000: 9d e3 bf 60 save %sp, -160, %sp + +102004: 23 00 00 00 sethi %hi\(0\), %l1 + +102008: 25 00 08 08 sethi %hi\(0x202000\), %l2 + +10200c: a2 14 60 00 mov %l1, %l1 + +102010: a4 14 a3 08 or %l2, 0x308, %l2 + +102014: a3 2c 70 20 sllx %l1, 0x20, %l1 + +102018: a8 04 40 12 add %l1, %l2, %l4 + +10201c: 01 00 00 00 nop * + +102020: 01 00 00 00 nop * + +102024: 01 00 00 00 nop * + +102028: 01 00 00 00 nop * + +10202c: 17 00 00 00 sethi %hi\(0\), %o3 + +102030: 96 02 e0 18 add %o3, 0x18, %o3 ! 18 <.*> + +102034: d4 5d 00 0b ldx \[ %l4 \+ %o3 \], %o2 + +102038: 98 01 c0 0a add %g7, %o2, %o4 + +10203c: 01 00 00 00 nop * + +102040: 01 00 00 00 nop * + +102044: 01 00 00 00 nop * + +102048: 01 00 00 00 nop * + +10204c: 17 00 00 00 sethi %hi\(0\), %o3 + +102050: 9a 1a ff d4 xor %o3, -44, %o5 + +102054: 94 10 00 0d mov %o5, %o2 + +102058: 98 01 c0 0a add %g7, %o2, %o4 + +10205c: 01 00 00 00 nop * + +102060: 01 00 00 00 nop * + +102064: 01 00 00 00 nop * + +102068: 01 00 00 00 nop * + +10206c: 17 00 00 00 sethi %hi\(0\), %o3 + +102070: 9a 1a ff f4 xor %o3, -12, %o5 + +102074: a4 10 00 0d mov %o5, %l2 + +102078: a4 01 c0 12 add %g7, %l2, %l2 + +10207c: 01 00 00 00 nop * + +102080: 01 00 00 00 nop * + +102084: 01 00 00 00 nop * + +102088: 01 00 00 00 nop * + +10208c: 17 00 00 00 sethi %hi\(0\), %o3 + +102090: 9a 1a ff fc xor %o3, -4, %o5 + +102094: a4 10 00 0d mov %o5, %l2 + +102098: e4 41 c0 12 ldsw \[ %g7 \+ %l2 \], %l2 + +10209c: 01 00 00 00 nop * + +1020a0: 01 00 00 00 nop * + +1020a4: 01 00 00 00 nop * + +1020a8: 01 00 00 00 nop * + +1020ac: 17 00 00 00 sethi %hi\(0\), %o3 + +1020b0: 9a 1a ff b4 xor %o3, -76, %o5 + +1020b4: a4 10 00 0d mov %o5, %l2 + +1020b8: a4 01 c0 12 add %g7, %l2, %l2 + +1020bc: 01 00 00 00 nop * + +1020c0: 01 00 00 00 nop * + +1020c4: 01 00 00 00 nop * + +1020c8: 01 00 00 00 nop * + +1020cc: 17 00 00 00 sethi %hi\(0\), %o3 + +1020d0: 9a 1a ff fc xor %o3, -4, %o5 + +1020d4: a4 10 00 0d mov %o5, %l2 + +1020d8: e2 29 c0 12 stb %l1, \[ %g7 \+ %l2 \] + +1020dc: 01 00 00 00 nop * + +1020e0: 01 00 00 00 nop * + +1020e4: 01 00 00 00 nop * + +1020e8: 01 00 00 00 nop * + +1020ec: 23 00 00 00 sethi %hi\(0\), %l1 + +1020f0: 01 00 00 00 nop * + +1020f4: a4 1c 7f 64 xor %l1, -156, %l2 + +1020f8: 01 00 00 00 nop * + +1020fc: a6 01 c0 12 add %g7, %l2, %l3 + +102100: 01 00 00 00 nop * + +102104: 01 00 00 00 nop * + +102108: 01 00 00 00 nop * + +10210c: 01 00 00 00 nop * + +102110: 11 00 00 00 sethi %hi\(0\), %o0 + +102114: 90 1a 3f e6 xor %o0, -26, %o0 + +102118: 90 01 c0 08 add %g7, %o0, %o0 + +10211c: 01 00 00 00 nop * + +102120: 01 00 00 00 nop * + +102124: 01 00 00 00 nop * + +102128: 01 00 00 00 nop * + +10212c: 23 00 00 00 sethi %hi\(0\), %l1 + +102130: 9a 1c 7f a5 xor %l1, -91, %o5 + +102134: 92 01 c0 0d add %g7, %o5, %o1 + +102138: 01 00 00 00 nop * + +10213c: 01 00 00 00 nop * + +102140: 01 00 00 00 nop * + +102144: 01 00 00 00 nop * + +102148: 23 00 00 00 sethi %hi\(0\), %l1 + +10214c: 9a 1c 7f 68 xor %l1, -152, %o5 + +102150: d2 59 c0 0d ldx \[ %g7 \+ %o5 \], %o1 + +102154: 01 00 00 00 nop * + +102158: 01 00 00 00 nop * + +10215c: 01 00 00 00 nop * + +102160: 01 00 00 00 nop * + +102164: 11 00 00 00 sethi %hi\(0\), %o0 + +102168: 90 1a 3f eb xor %o0, -21, %o0 + +10216c: d2 29 c0 08 stb %o1, \[ %g7 \+ %o0 \] + +102170: 01 00 00 00 nop * + +102174: 01 00 00 00 nop * + +102178: 01 00 00 00 nop * + +10217c: 01 00 00 00 nop * + +102180: 15 00 00 00 sethi %hi\(0\), %o2 + +102184: 98 1a bf ab xor %o2, -85, %o4 + +102188: da 69 c0 0c ldstub \[ %g7 \+ %o4 \], %o5 + +10218c: 01 00 00 00 nop * + +102190: 01 00 00 00 nop * + +102194: 01 00 00 00 nop * + +102198: 01 00 00 00 nop * + +10219c: 81 c7 e0 08 ret + +1021a0: 81 e8 00 00 restore diff --git a/ld/testsuite/ld-sparc/tlssunbin64.rd b/ld/testsuite/ld-sparc/tlssunbin64.rd index dee8c33..ae1f1cc 100644 --- a/ld/testsuite/ld-sparc/tlssunbin64.rd +++ b/ld/testsuite/ld-sparc/tlssunbin64.rd @@ -4,5 +4,130 @@ #readelf: -WSsrl #target: sparc*-*-* -# FIXME -#pass +There are 15 section headers, starting at offset 0x[0-9a-f]+: + +Section Headers: + +\[Nr\] Name +Type +Address +Off +Size +ES Flg Lk Inf Al + +\[ 0\] +NULL +0+ 0+ 0+ 00 +0 +0 +0 + +\[ 1\] .interp +.* + +\[ 2\] .hash +.* + +\[ 3\] .dynsym +.* + +\[ 4\] .dynstr +.* + +\[ 5\] .rela.dyn +.* + +\[ 6\] .text +PROGBITS +0+101000 0+1000 0+11a4 00 +AX +0 +0 4096 + +\[ 7\] .tdata +PROGBITS +0+2021a4 0+21a4 0+0060 00 WAT +0 +0 +4 + +\[ 8\] .tbss +NOBITS +0+202204 0+2204 0+40 00 WAT +0 +0 +4 + +\[ 9\] .dynamic +DYNAMIC +0+202208 0+2208 0+100 10 +WA +4 +0 +8 + +\[10\] .got +PROGBITS +0+202308 0+2308 0+28 08 +WA +0 +0 +8 + +\[11\] .plt +.* + +\[12\] .shstrtab +.* + +\[13\] .symtab +.* + +\[14\] .strtab +.* +#... + +Elf file type is EXEC \(Executable file\) +Entry point 0x102000 +There are 6 program headers, starting at offset [0-9]+ + +Program Headers: + +Type +Offset +VirtAddr +PhysAddr +FileSiz +MemSiz +Flg Align + +PHDR +0x0+40 0x0+100040 0x0+100040 0x0+150 0x0+150 R E 0x8 + +INTERP +0x0+190 0x0+100190 0x0+100190 0x0+19 0x0+19 R +0x1 +.*Requesting program interpreter.* + +LOAD +0x0+ 0x0+100000 0x0+100000 0x0+21a4 0x0+21a4 R E 0x100000 + +LOAD +0x0+21a4 0x0+2021a4 0x0+2021a4 0x0+25c 0x0+25c RWE 0x100000 + +DYNAMIC +0x0+2208 0x0+202208 0x0+202208 0x0+100 0x0+100 RW +0x8 + +TLS +0x0+21a4 0x0+2021a4 0x0+2021a4 0x0+60 0x0+a0 R +0x4 +#... + +Relocation section '.rela.dyn' at offset 0x[0-9a-f]+ contains 4 entries: + +Offset +Info +Type +Symbol's Value +Symbol's Name \+ Addend +0+202310 +0+10000004f R_SPARC_TLS_TPOFF64 +0+ +sG5 \+ 0 +0+202318 +0+30000004f R_SPARC_TLS_TPOFF64 +0+ +sG2 \+ 0 +0+202320 +0+70000004f R_SPARC_TLS_TPOFF64 +0+ +sG6 \+ 0 +0+202328 +0+80000004f R_SPARC_TLS_TPOFF64 +0+ +sG1 \+ 0 + +Symbol table '.dynsym' contains 11 entries: + +Num: +Value +Size Type +Bind +Vis +Ndx Name + +0: 0+ +0 NOTYPE +LOCAL +DEFAULT +UND * + +1: 0+ +0 TLS +GLOBAL DEFAULT +UND sG5 + +2: 0+202208 +0 OBJECT +GLOBAL DEFAULT +ABS _DYNAMIC + +3: 0+ +0 TLS +GLOBAL DEFAULT +UND sG2 + +4: [0-9a-f]+ +0 OBJECT +GLOBAL DEFAULT +ABS _PROCEDURE_LINKAGE_TABLE_ + +5: 0+ +0 FUNC +GLOBAL DEFAULT +UND __tls_get_addr + +6: [0-9a-f]+ +0 NOTYPE +GLOBAL DEFAULT +ABS __bss_start + +7: 0+ +0 TLS +GLOBAL DEFAULT +UND sG6 + +8: 0+ +0 TLS +GLOBAL DEFAULT +UND sG1 + +9: [0-9a-f]+ +0 NOTYPE +GLOBAL DEFAULT +ABS _edata + +10: [0-9a-f]+ +0 NOTYPE +GLOBAL DEFAULT +ABS _end + +Symbol table '.symtab' contains 68 entries: + +Num: +Value +Size Type +Bind +Vis +Ndx Name + +0: 0+ +0 NOTYPE +LOCAL +DEFAULT +UND * + +1: [0-9a-f]+ +0 SECTION LOCAL +DEFAULT +1 * + +2: [0-9a-f]+ +0 SECTION LOCAL +DEFAULT +2 * + +3: [0-9a-f]+ +0 SECTION LOCAL +DEFAULT +3 * + +4: [0-9a-f]+ +0 SECTION LOCAL +DEFAULT +4 * + +5: [0-9a-f]+ +0 SECTION LOCAL +DEFAULT +5 * + +6: [0-9a-f]+ +0 SECTION LOCAL +DEFAULT +6 * + +7: [0-9a-f]+ +0 SECTION LOCAL +DEFAULT +7 * + +8: [0-9a-f]+ +0 SECTION LOCAL +DEFAULT +8 * + +9: [0-9a-f]+ +0 SECTION LOCAL +DEFAULT +9 * + +[0-9]+: [0-9a-f]+ +0 SECTION LOCAL +DEFAULT +10 * + +[0-9]+: [0-9a-f]+ +0 SECTION LOCAL +DEFAULT +11 * + +[0-9]+: [0-9a-f]+ +0 SECTION LOCAL +DEFAULT +12 * + +[0-9]+: [0-9a-f]+ +0 SECTION LOCAL +DEFAULT +13 * + +[0-9]+: [0-9a-f]+ +0 SECTION LOCAL +DEFAULT +14 * + +[0-9]+: 0+20 +0 TLS +LOCAL +DEFAULT +7 sl1 + +[0-9]+: 0+24 +0 TLS +LOCAL +DEFAULT +7 sl2 + +[0-9]+: 0+28 +0 TLS +LOCAL +DEFAULT +7 sl3 + +[0-9]+: 0+2c +0 TLS +LOCAL +DEFAULT +7 sl4 + +[0-9]+: 0+30 +0 TLS +LOCAL +DEFAULT +7 sl5 + +[0-9]+: 0+34 +0 TLS +LOCAL +DEFAULT +7 sl6 + +[0-9]+: 0+38 +0 TLS +LOCAL +DEFAULT +7 sl7 + +[0-9]+: 0+3c +0 TLS +LOCAL +DEFAULT +7 sl8 + +[0-9]+: 0+80 +0 TLS +LOCAL +DEFAULT +8 bl1 + +[0-9]+: 0+84 +0 TLS +LOCAL +DEFAULT +8 bl2 + +[0-9]+: 0+88 +0 TLS +LOCAL +DEFAULT +8 bl3 + +[0-9]+: 0+8c +0 TLS +LOCAL +DEFAULT +8 bl4 + +[0-9]+: 0+90 +0 TLS +LOCAL +DEFAULT +8 bl5 + +[0-9]+: 0+94 +0 TLS +LOCAL +DEFAULT +8 bl6 + +[0-9]+: 0+98 +0 TLS +LOCAL +DEFAULT +8 bl7 + +[0-9]+: 0+9c +0 TLS +LOCAL +DEFAULT +8 bl8 + +[0-9]+: 0+1c +0 TLS +GLOBAL DEFAULT +7 sg8 + +[0-9]+: 0+7c +0 TLS +GLOBAL DEFAULT +8 bg8 + +[0-9]+: 0+74 +0 TLS +GLOBAL DEFAULT +8 bg6 + +[0-9]+: 0+ +0 TLS +GLOBAL DEFAULT +UND sG5 + +[0-9]+: 0+68 +0 TLS +GLOBAL DEFAULT +8 bg3 + +[0-9]+: 0+202208 +0 OBJECT +GLOBAL DEFAULT +ABS _DYNAMIC + +[0-9]+: 0+08 +0 TLS +GLOBAL DEFAULT +7 sg3 + +[0-9]+: 0+48 +0 TLS +GLOBAL HIDDEN +7 sh3 + +[0-9]+: 0+ +0 TLS +GLOBAL DEFAULT +UND sG2 + +[0-9]+: 0+0c +0 TLS +GLOBAL DEFAULT +7 sg4 + +[0-9]+: 0+10 +0 TLS +GLOBAL DEFAULT +7 sg5 + +[0-9]+: [0-9a-f]+ +0 OBJECT +GLOBAL DEFAULT +ABS _PROCEDURE_LINKAGE_TABLE_ + +[0-9]+: 0+70 +0 TLS +GLOBAL DEFAULT +8 bg5 + +[0-9]+: 0+ +0 FUNC +GLOBAL DEFAULT +UND __tls_get_addr + +[0-9]+: 0+58 +0 TLS +GLOBAL HIDDEN +7 sh7 + +[0-9]+: 0+5c +0 TLS +GLOBAL HIDDEN +7 sh8 + +[0-9]+: 0+ +0 TLS +GLOBAL DEFAULT +7 sg1 + +[0-9]+: 0+102000 +0 FUNC +GLOBAL DEFAULT +6 _start + +[0-9]+: 0+4c +0 TLS +GLOBAL HIDDEN +7 sh4 + +[0-9]+: 0+78 +0 TLS +GLOBAL DEFAULT +8 bg7 + +[0-9]+: 0+50 +0 TLS +GLOBAL HIDDEN +7 sh5 + +[0-9]+: [0-9a-f]+ +0 NOTYPE +GLOBAL DEFAULT +ABS __bss_start + +[0-9]+: 0+ +0 TLS +GLOBAL DEFAULT +UND sG6 + +[0-9]+: 0+101008 +0 FUNC +GLOBAL DEFAULT +6 fn2 + +[0-9]+: 0+04 +0 TLS +GLOBAL DEFAULT +7 sg2 + +[0-9]+: 0+ +0 TLS +GLOBAL DEFAULT +UND sG1 + +[0-9]+: 0+40 +0 TLS +GLOBAL HIDDEN +7 sh1 + +[0-9]+: 0+14 +0 TLS +GLOBAL DEFAULT +7 sg6 + +[0-9]+: 0+18 +0 TLS +GLOBAL DEFAULT +7 sg7 + +[0-9]+: [0-9a-f]+ +0 NOTYPE +GLOBAL DEFAULT +ABS _edata + +[0-9]+: 0+202308 +0 OBJECT +GLOBAL +HIDDEN +10 _GLOBAL_OFFSET_TABLE_ + +[0-9]+: [0-9a-f]+ +0 NOTYPE +GLOBAL DEFAULT +ABS _end + +[0-9]+: 0+44 +0 TLS +GLOBAL HIDDEN +7 sh2 + +[0-9]+: 0+54 +0 TLS +GLOBAL HIDDEN +7 sh6 + +[0-9]+: 0+64 +0 TLS +GLOBAL DEFAULT +8 bg2 + +[0-9]+: 0+60 +0 TLS +GLOBAL DEFAULT +8 bg1 + +[0-9]+: 0+6c +0 TLS +GLOBAL DEFAULT +8 bg4 diff --git a/ld/testsuite/ld-sparc/tlssunbin64.sd b/ld/testsuite/ld-sparc/tlssunbin64.sd index c57fc10..73a87e0 100644 --- a/ld/testsuite/ld-sparc/tlssunbin64.sd +++ b/ld/testsuite/ld-sparc/tlssunbin64.sd @@ -7,5 +7,6 @@ .*: +file format elf64-sparc Contents of section .got: -# FIXME -#pass + 202308 0+ 0+202208 0+ 0+ .* + 202318 0+ 0+ 0+ 0+ .* + 202328 0+ 0+ +.* diff --git a/ld/testsuite/ld-sparc/tlssunbin64.td b/ld/testsuite/ld-sparc/tlssunbin64.td index 57b5afa..f7eef83 100644 --- a/ld/testsuite/ld-sparc/tlssunbin64.td +++ b/ld/testsuite/ld-sparc/tlssunbin64.td @@ -7,5 +7,9 @@ .*: +file format elf64-sparc Contents of section .tdata: -# FIXME -#pass + 2021a4 00000011 00000012 00000013 00000014 .* + 2021b4 00000015 00000016 00000017 00000018 .* + 2021c4 00000041 00000042 00000043 00000044 .* + 2021d4 00000045 00000046 00000047 00000048 .* + 2021e4 00000101 00000102 00000103 00000104 .* + 2021f4 00000105 00000106 00000107 00000108 .* diff --git a/ld/testsuite/ld-sparc/tlssunnopic64.dd b/ld/testsuite/ld-sparc/tlssunnopic64.dd index 742449e..4443a94 100644 --- a/ld/testsuite/ld-sparc/tlssunnopic64.dd +++ b/ld/testsuite/ld-sparc/tlssunnopic64.dd @@ -8,5 +8,81 @@ .*: +file format elf64-sparc Disassembly of section .text: -# FIXME + +0+1000 <fn3>: + +1000: 9d e3 bf 60 save %sp, -160, %sp + +1004: 23 00 00 00 sethi %hi\(0\), %l1 + +1008: 25 00 00 00 sethi %hi\(0\), %l2 + +100c: a2 14 60 00 mov %l1, %l1 + +1010: a4 14 a0 00 mov %l2, %l2 + +1014: a3 2c 70 20 sllx %l1, 0x20, %l1 + +1018: a2 04 40 12 add %l1, %l2, %l1 + +101c: 01 00 00 00 nop * + +1020: 01 00 00 00 nop * + +1024: 01 00 00 00 nop * + +1028: 01 00 00 00 nop * + +102c: 17 00 00 00 sethi %hi\(0\), %o3 + +1030: 96 02 e0 18 add %o3, 0x18, %o3 ! 18 <.*> + +1034: d4 5c 40 0b ldx \[ %l1 \+ %o3 \], %o2 + +1038: 98 01 c0 0a add %g7, %o2, %o4 + +103c: 01 00 00 00 nop * + +1040: 01 00 00 00 nop * + +1044: 01 00 00 00 nop * + +1048: 01 00 00 00 nop * + +104c: 11 00 00 00 sethi %hi\(0\), %o0 + +1050: 90 02 20 20 add %o0, 0x20, %o0 ! 20 <.*> + +1054: d0 5c 40 08 ldx \[ %l1 \+ %o0 \], %o0 + +1058: d0 01 c0 08 ld \[ %g7 \+ %o0 \], %o0 + +105c: 01 00 00 00 nop * + +1060: 01 00 00 00 nop * + +1064: 01 00 00 00 nop * + +1068: 01 00 00 00 nop * + +106c: 11 00 00 00 sethi %hi\(0\), %o0 + +1070: 90 02 20 28 add %o0, 0x28, %o0 ! 28 <.*> + +1074: d0 5c 40 08 ldx \[ %l1 \+ %o0 \], %o0 + +1078: 90 01 c0 08 add %g7, %o0, %o0 + +107c: 01 00 00 00 nop * + +1080: 01 00 00 00 nop * + +1084: 01 00 00 00 nop * + +1088: 01 00 00 00 nop * + +108c: 1b 00 00 00 sethi %hi\(0\), %o5 + +1090: 92 03 60 30 add %o5, 0x30, %o1 ! 30 <.*> + +1094: d4 5c 40 09 ldx \[ %l1 \+ %o1 \], %o2 + +1098: d6 29 c0 0a stb %o3, \[ %g7 \+ %o2 \] + +109c: 01 00 00 00 nop * + +10a0: 01 00 00 00 nop * + +10a4: 01 00 00 00 nop * + +10a8: 01 00 00 00 nop * + +10ac: 11 00 00 00 sethi %hi\(0\), %o0 + +10b0: 90 02 20 08 add %o0, 8, %o0 ! 8 <.*> + +10b4: d0 5c 40 08 ldx \[ %l1 \+ %o0 \], %o0 + +10b8: 90 01 c0 08 add %g7, %o0, %o0 + +10bc: 01 00 00 00 nop * + +10c0: 01 00 00 00 nop * + +10c4: 01 00 00 00 nop * + +10c8: 01 00 00 00 nop * + +10cc: 1b 00 00 00 sethi %hi\(0\), %o5 + +10d0: 92 03 60 10 add %o5, 0x10, %o1 ! 10 <.*> + +10d4: d4 5c 40 09 ldx \[ %l1 \+ %o1 \], %o2 + +10d8: d6 29 c0 0a stb %o3, \[ %g7 \+ %o2 \] + +10dc: 01 00 00 00 nop * + +10e0: 01 00 00 00 nop * + +10e4: 01 00 00 00 nop * + +10e8: 01 00 00 00 nop * + +10ec: 15 00 00 00 sethi %hi\(0\), %o2 + +10f0: 98 1a a0 00 xor %o2, 0, %o4 + +10f4: 90 01 c0 0c add %g7, %o4, %o0 + +10f8: 01 00 00 00 nop * + +10fc: 01 00 00 00 nop * + +1100: 01 00 00 00 nop * + +1104: 01 00 00 00 nop * + +1108: 15 00 00 00 sethi %hi\(0\), %o2 + +110c: 94 1a a0 00 xor %o2, 0, %o2 + +1110: d4 01 c0 0a ld \[ %g7 \+ %o2 \], %o2 + +1114: 01 00 00 00 nop * + +1118: 01 00 00 00 nop * + +111c: 01 00 00 00 nop * + +1120: 01 00 00 00 nop * + +1124: 81 cf e0 08 rett %i7 \+ 8 + +1128: 01 00 00 00 nop * #pass diff --git a/ld/testsuite/ld-sparc/tlssunnopic64.rd b/ld/testsuite/ld-sparc/tlssunnopic64.rd index cbfd4aa..c12918e 100644 --- a/ld/testsuite/ld-sparc/tlssunnopic64.rd +++ b/ld/testsuite/ld-sparc/tlssunnopic64.rd @@ -5,5 +5,100 @@ #readelf: -WSsrl #target: sparc-*-* -# FIXME -#pass +There are 13 section headers, starting at offset 0x[0-9a-f]+: + +Section Headers: + +\[Nr\] Name +Type +Address +Off +Size +ES Flg Lk Inf Al + +\[ 0\] +NULL +0+ 0+ 0+ 0+ +0 +0 +0 + +\[ 1\] .hash +.* + +\[ 2\] .dynsym +.* + +\[ 3\] .dynstr +.* + +\[ 4\] .rela.dyn +.* + +\[ 5\] .text +PROGBITS +0+1000 0+1000 0+1000 0+ +AX +0 +0 4096 + +\[ 6\] .tbss +NOBITS +0+102000 0+2000 0+24 0+ WAT +0 +0 +4 + +\[ 7\] .dynamic +DYNAMIC +0+102000 0+2000 0+100 10 +WA +3 +0 +8 + +\[ 8\] .got +PROGBITS +0+102100 0+2100 0+38 08 +WA +0 +0 +8 + +\[ 9\] .plt +.* + +\[10\] .shstrtab +.* + +\[11\] .symtab +.* + +\[12\] .strtab +.* +#... +Elf file type is DYN \(Shared object file\) +Entry point 0x1000 +There are 4 program headers, starting at offset [0-9a-f]+ + +Program Headers: + +Type +Offset +VirtAddr +PhysAddr +FileSiz +MemSiz +Flg Align + +LOAD +0x0+ 0x0+ 0x0+ 0x0+2000 0x0+2000 R E 0x100000 + +LOAD +0x0+2000 0x0+102000 0x0+102000 0x0+200 0x0+200 RWE 0x100000 + +DYNAMIC +0x0+2000 0x0+102000 0x0+102000 0x0+100 0x0+100 RW +0x8 + +TLS +0x0+2000 0x0+102000 0x0+102000 0x0+ 0x0+24 R +0x4 +#... + +Relocation section '.rela.dyn' at offset 0x[0-9a-f]+ contains 14 entries: + +Offset +Info +Type +Symbol's Value +Symbol's Name \+ Addend +0+1004 +0+300000022 R_SPARC_HH22 +0+102100 +\.got \+ 102100 +0+1008 +0+300000024 R_SPARC_LM22 +0+102100 +\.got \+ 102100 +0+100c +0+300000023 R_SPARC_HM10 +0+102100 +\.got \+ 102100 +0+1010 +0+30000000c R_SPARC_LO10 +0+102100 +\.got \+ 102100 +0+10ec +0+48 R_SPARC_TLS_LE_HIX22 +0+9 +0+10f0 +0+49 R_SPARC_TLS_LE_LOX10 +0+9 +0+1108 +0+48 R_SPARC_TLS_LE_HIX22 +0+1c +0+110c +0+49 R_SPARC_TLS_LE_LOX10 +0+1c +0+102108 +0+4f R_SPARC_TLS_TPOFF64 +0+ +0+102110 +0+4f R_SPARC_TLS_TPOFF64 +0+4 +0+102128 +0+4f R_SPARC_TLS_TPOFF64 +0+14 +0+102130 +0+4f R_SPARC_TLS_TPOFF64 +0+18 +0+102118 +0+90000004f R_SPARC_TLS_TPOFF64 +0+ +sg1 \+ 0 +0+102120 +0+b0000004f R_SPARC_TLS_TPOFF64 +0+ +sg2 \+ 0 + +Symbol table '.dynsym' contains 14 entries: + +Num: +Value +Size Type +Bind +Vis +Ndx Name + +0: 0+ +0 NOTYPE +LOCAL +DEFAULT +UND * + +1: [0-9a-f]+ +0 SECTION LOCAL +DEFAULT +5 * + +2: [0-9a-f]+ +0 SECTION LOCAL +DEFAULT +6 * + +3: [0-9a-f]+ +0 SECTION LOCAL +DEFAULT +8 * + +4: 0+ +0 NOTYPE +LOCAL +DEFAULT +UND * + +5: 0+ +0 NOTYPE +LOCAL +DEFAULT +UND * + +6: 0+102000 +0 OBJECT +GLOBAL DEFAULT +ABS _DYNAMIC + +7: 0+1000 +0 FUNC +GLOBAL DEFAULT +5 fn3 + +8: [0-9a-f]+ +0 OBJECT +GLOBAL DEFAULT +ABS _PROCEDURE_LINKAGE_TABLE_ + +9: 0+ +0 TLS +GLOBAL DEFAULT +UND sg1 + +10: [0-9a-f]+ +0 NOTYPE +GLOBAL DEFAULT +ABS __bss_start + +11: 0+ +0 TLS +GLOBAL DEFAULT +UND sg2 + +12: [0-9a-f]+ +0 NOTYPE +GLOBAL DEFAULT +ABS _edata + +13: [0-9a-f]+ +0 NOTYPE +GLOBAL DEFAULT +ABS _end + +Symbol table '.symtab' contains 31 entries: + +Num: +Value +Size Type +Bind +Vis +Ndx Name + +0: 0+ +0 NOTYPE +LOCAL +DEFAULT +UND * + +1: [0-9a-f]+ +0 SECTION LOCAL +DEFAULT +1 * + +2: [0-9a-f]+ +0 SECTION LOCAL +DEFAULT +2 * + +3: [0-9a-f]+ +0 SECTION LOCAL +DEFAULT +3 * + +4: [0-9a-f]+ +0 SECTION LOCAL +DEFAULT +4 * + +5: [0-9a-f]+ +0 SECTION LOCAL +DEFAULT +5 * + +6: [0-9a-f]+ +0 SECTION LOCAL +DEFAULT +6 * + +7: [0-9a-f]+ +0 SECTION LOCAL +DEFAULT +7 * + +8: [0-9a-f]+ +0 SECTION LOCAL +DEFAULT +8 * + +9: [0-9a-f]+ +0 SECTION LOCAL +DEFAULT +9 * + +[0-9]+: [0-9a-f]+ +0 SECTION LOCAL +DEFAULT +10 * + +[0-9]+: [0-9a-f]+ +0 SECTION LOCAL +DEFAULT +11 * + +[0-9]+: [0-9a-f]+ +0 SECTION LOCAL +DEFAULT +12 * + +[0-9]+: 0+ +0 TLS +LOCAL +DEFAULT +6 bl1 + +[0-9]+: 0+4 +0 TLS +LOCAL +DEFAULT +6 bl2 + +[0-9]+: 0+8 +0 TLS +LOCAL +DEFAULT +6 bl3 + +[0-9]+: 0+c +0 TLS +LOCAL +DEFAULT +6 bl4 + +[0-9]+: 0+10 +0 TLS +LOCAL +DEFAULT +6 bl5 + +[0-9]+: 0+1c +0 TLS +LOCAL +HIDDEN +6 sh3 + +[0-9]+: 0+20 +0 TLS +LOCAL +HIDDEN +6 sh4 + +[0-9]+: 0+14 +0 TLS +LOCAL +HIDDEN +6 sh1 + +[0-9]+: 0+102100 +0 OBJECT +LOCAL +HIDDEN +ABS _GLOBAL_OFFSET_TABLE_ + +[0-9]+: 0+18 +0 TLS +LOCAL +HIDDEN +6 sh2 + +[0-9]+: 0+102000 +0 OBJECT +GLOBAL DEFAULT +ABS _DYNAMIC + +[0-9]+: 0+1000 +0 FUNC +GLOBAL DEFAULT +5 fn3 + +[0-9]+: [0-9a-f]+ +0 OBJECT +GLOBAL DEFAULT +ABS _PROCEDURE_LINKAGE_TABLE_ + +[0-9]+: 0+ +0 TLS +GLOBAL DEFAULT +UND sg1 + +[0-9]+: [0-9a-f]+ +0 NOTYPE +GLOBAL DEFAULT +ABS __bss_start + +[0-9]+: 0+ +0 TLS +GLOBAL DEFAULT +UND sg2 + +[0-9]+: [0-9a-f]+ +0 NOTYPE +GLOBAL DEFAULT +ABS _edata + +[0-9]+: [0-9a-f]+ +0 NOTYPE +GLOBAL DEFAULT +ABS _end diff --git a/ld/testsuite/ld-sparc/tlssunnopic64.sd b/ld/testsuite/ld-sparc/tlssunnopic64.sd index b288764..423b90c 100644 --- a/ld/testsuite/ld-sparc/tlssunnopic64.sd +++ b/ld/testsuite/ld-sparc/tlssunnopic64.sd @@ -8,5 +8,7 @@ .*: file format elf64-sparc Contents of section \.got: -# FIXME -#pass + 102100 0+ 0+102000 0+ 0+ .* + 102110 0+ 0+ 0+ 0+ .* + 102120 0+ 0+ 0+ 0+ .* + 102130 0+ 0+ .* diff --git a/ld/testsuite/ld-sparc/tlssunpic64.dd b/ld/testsuite/ld-sparc/tlssunpic64.dd index a1f97d9..0b41b68 100644 --- a/ld/testsuite/ld-sparc/tlssunpic64.dd +++ b/ld/testsuite/ld-sparc/tlssunpic64.dd @@ -8,5 +8,213 @@ .*: +file format elf64-sparc Disassembly of section .text: -# FIXME + +0+1000 <fn1-0x8>: + +1000: 81 c3 e0 08 retl * + +1004: ae 03 c0 17 add %o7, %l7, %l7 + +0+1008 <fn1>: + +1008: 9d e3 bf 60 save %sp, -160, %sp + +100c: 2f 00 04 04 sethi %hi\(0x101000\), %l7 + +1010: 7f ff ff fc call 1000 <.*> + +1014: ae 05 e1 80 add %l7, 0x180, %l7 ! 101180 <.*> + +1018: 01 00 00 00 nop * + +101c: 01 00 00 00 nop * + +1020: 01 00 00 00 nop * + +1024: 01 00 00 00 nop * + +1028: 23 00 00 00 sethi %hi\(0\), %l1 + +102c: 01 00 00 00 nop * + +1030: a4 04 60 58 add %l1, 0x58, %l2 + +1034: 01 00 00 00 nop * + +1038: 90 05 c0 12 add %l7, %l2, %o0 + +103c: 01 00 00 00 nop * + +1040: 40 04 04 d0 call [0-9a-f]+ <__tls_get_addr@plt> + +1044: 01 00 00 00 nop * + +1048: 01 00 00 00 nop * + +104c: 01 00 00 00 nop * + +1050: 01 00 00 00 nop * + +1054: 01 00 00 00 nop * + +1058: 11 00 00 00 sethi %hi\(0\), %o0 + +105c: 92 02 20 78 add %o0, 0x78, %o1 ! 78 <.*> + +1060: d0 5d c0 09 ldx \[ %l7 \+ %o1 \], %o0 + +1064: 90 01 c0 08 add %g7, %o0, %o0 + +1068: 01 00 00 00 nop * + +106c: 01 00 00 00 nop * + +1070: 01 00 00 00 nop * + +1074: 01 00 00 00 nop * + +1078: 01 00 00 00 nop * + +107c: 19 00 00 00 sethi %hi\(0\), %o4 + +1080: 98 03 20 08 add %o4, 8, %o4 ! 8 <.*> + +1084: 90 05 c0 0c add %l7, %o4, %o0 + +1088: 40 04 04 be call [0-9a-f]+ <__tls_get_addr@plt> + +108c: 01 00 00 00 nop * + +1090: 01 00 00 00 nop * + +1094: 01 00 00 00 nop * + +1098: 01 00 00 00 nop * + +109c: 01 00 00 00 nop * + +10a0: 11 00 00 00 sethi %hi\(0\), %o0 + +10a4: 90 02 20 18 add %o0, 0x18, %o0 ! 18 <.*> + +10a8: d0 5d c0 08 ldx \[ %l7 \+ %o0 \], %o0 + +10ac: 90 01 c0 08 add %g7, %o0, %o0 + +10b0: 01 00 00 00 nop * + +10b4: 01 00 00 00 nop * + +10b8: 01 00 00 00 nop * + +10bc: 01 00 00 00 nop * + +10c0: 01 00 00 00 nop * + +10c4: 19 00 00 00 sethi %hi\(0\), %o4 + +10c8: 98 03 20 80 add %o4, 0x80, %o4 ! 80 <.*> + +10cc: 90 05 c0 0c add %l7, %o4, %o0 + +10d0: 40 04 04 ac call [0-9a-f]+ <__tls_get_addr@plt> + +10d4: 01 00 00 00 nop * + +10d8: 01 00 00 00 nop * + +10dc: 01 00 00 00 nop * + +10e0: 01 00 00 00 nop * + +10e4: 01 00 00 00 nop * + +10e8: 11 00 00 00 sethi %hi\(0\), %o0 + +10ec: 90 02 20 90 add %o0, 0x90, %o0 ! 90 <.*> + +10f0: d0 5d c0 08 ldx \[ %l7 \+ %o0 \], %o0 + +10f4: 90 01 c0 08 add %g7, %o0, %o0 + +10f8: 01 00 00 00 nop * + +10fc: 01 00 00 00 nop * + +1100: 01 00 00 00 nop * + +1104: 01 00 00 00 nop * + +1108: 01 00 00 00 nop * + +110c: 19 00 00 00 sethi %hi\(0\), %o4 + +1110: 98 03 20 38 add %o4, 0x38, %o4 ! 38 <.*> + +1114: 90 05 c0 0c add %l7, %o4, %o0 + +1118: 40 04 04 9a call [0-9a-f]+ <__tls_get_addr@plt> + +111c: 01 00 00 00 nop * + +1120: 01 00 00 00 nop * + +1124: 01 00 00 00 nop * + +1128: 01 00 00 00 nop * + +112c: 01 00 00 00 nop * + +1130: 11 00 00 00 sethi %hi\(0\), %o0 + +1134: 90 02 20 48 add %o0, 0x48, %o0 ! 48 <.*> + +1138: d0 5d c0 08 ldx \[ %l7 \+ %o0 \], %o0 + +113c: 90 01 c0 08 add %g7, %o0, %o0 + +1140: 01 00 00 00 nop * + +1144: 01 00 00 00 nop * + +1148: 01 00 00 00 nop * + +114c: 01 00 00 00 nop * + +1150: 01 00 00 00 nop * + +1154: 23 00 00 00 sethi %hi\(0\), %l1 + +1158: 01 00 00 00 nop * + +115c: a4 04 60 28 add %l1, 0x28, %l2 + +1160: 01 00 00 00 nop * + +1164: 90 05 c0 12 add %l7, %l2, %o0 + +1168: 01 00 00 00 nop * + +116c: 40 04 04 85 call [0-9a-f]+ <__tls_get_addr@plt> + +1170: 01 00 00 00 nop * + +1174: 27 00 00 00 sethi %hi\(0\), %l3 + +1178: 01 00 00 00 nop * + +117c: a8 1c e0 20 xor %l3, 0x20, %l4 + +1180: 01 00 00 00 nop * + +1184: aa 02 00 14 add %o0, %l4, %l5 + +1188: 01 00 00 00 nop * + +118c: 25 00 00 00 sethi %hi\(0\), %l2 + +1190: 01 00 00 00 nop * + +1194: a6 1c a0 26 xor %l2, 0x26, %l3 + +1198: 01 00 00 00 nop * + +119c: ec 12 00 13 lduh \[ %o0 \+ %l3 \], %l6 + +11a0: 01 00 00 00 nop * + +11a4: 01 00 00 00 nop * + +11a8: 01 00 00 00 nop * + +11ac: 01 00 00 00 nop * + +11b0: 13 00 00 00 sethi %hi\(0\), %o1 + +11b4: 27 00 00 00 sethi %hi\(0\), %l3 + +11b8: 94 02 60 28 add %o1, 0x28, %o2 + +11bc: 25 00 00 00 sethi %hi\(0\), %l2 + +11c0: 90 05 c0 0a add %l7, %o2, %o0 + +11c4: a8 1c e0 40 xor %l3, 0x40, %l4 + +11c8: 40 04 04 6e call [0-9a-f]+ <__tls_get_addr@plt> + +11cc: a6 1c a0 45 xor %l2, 0x45, %l3 + +11d0: ea 5a 00 14 ldx \[ %o0 \+ %l4 \], %l5 + +11d4: ac 02 00 13 add %o0, %l3, %l6 + +11d8: 01 00 00 00 nop * + +11dc: 01 00 00 00 nop * + +11e0: 01 00 00 00 nop * + +11e4: 01 00 00 00 nop * + +11e8: 13 00 00 00 sethi %hi\(0\), %o1 + +11ec: 27 00 00 00 sethi %hi\(0\), %l3 + +11f0: 94 02 60 28 add %o1, 0x28, %o2 + +11f4: 25 00 00 00 sethi %hi\(0\), %l2 + +11f8: 90 05 c0 0a add %l7, %o2, %o0 + +11fc: a8 1c e0 63 xor %l3, 0x63, %l4 + +1200: 40 04 04 60 call [0-9a-f]+ <__tls_get_addr@plt> + +1204: a6 1c a0 64 xor %l2, 0x64, %l3 + +1208: aa 02 00 14 add %o0, %l4, %l5 + +120c: ec 02 00 13 ld \[ %o0 \+ %l3 \], %l6 + +1210: 01 00 00 00 nop * + +1214: 01 00 00 00 nop * + +1218: 01 00 00 00 nop * + +121c: 01 00 00 00 nop * + +1220: 23 00 00 00 sethi %hi\(0\), %l1 + +1224: 01 00 00 00 nop * + +1228: a4 04 60 78 add %l1, 0x78, %l2 + +122c: 01 00 00 00 nop * + +1230: e4 5d c0 12 ldx \[ %l7 \+ %l2 \], %l2 + +1234: 01 00 00 00 nop * + +1238: a4 01 c0 12 add %g7, %l2, %l2 + +123c: 01 00 00 00 nop * + +1240: 01 00 00 00 nop * + +1244: 01 00 00 00 nop * + +1248: 01 00 00 00 nop * + +124c: 17 00 00 00 sethi %hi\(0\), %o3 + +1250: 96 02 e0 18 add %o3, 0x18, %o3 ! 18 <.*> + +1254: d4 5d c0 0b ldx \[ %l7 \+ %o3 \], %o2 + +1258: 98 01 c0 0a add %g7, %o2, %o4 + +125c: 01 00 00 00 nop * + +1260: 01 00 00 00 nop * + +1264: 01 00 00 00 nop * + +1268: 01 00 00 00 nop * + +126c: 23 00 00 00 sethi %hi\(0\), %l1 + +1270: a4 04 60 90 add %l1, 0x90, %l2 ! 90 <.*> + +1274: e4 5d c0 12 ldx \[ %l7 \+ %l2 \], %l2 + +1278: a4 01 c0 12 add %g7, %l2, %l2 + +127c: 01 00 00 00 nop * + +1280: 01 00 00 00 nop * + +1284: 01 00 00 00 nop * + +1288: 01 00 00 00 nop * + +128c: 23 00 00 00 sethi %hi\(0\), %l1 + +1290: a4 04 60 48 add %l1, 0x48, %l2 ! 48 <.*> + +1294: e4 5d c0 12 ldx \[ %l7 \+ %l2 \], %l2 + +1298: a4 01 c0 12 add %g7, %l2, %l2 + +129c: 01 00 00 00 nop * + +12a0: 01 00 00 00 nop * + +12a4: 01 00 00 00 nop * + +12a8: 01 00 00 00 nop * + +12ac: 23 00 00 00 sethi %hi\(0\), %l1 + +12b0: a4 04 60 50 add %l1, 0x50, %l2 ! 50 <.*> + +12b4: e4 5d c0 12 ldx \[ %l7 \+ %l2 \], %l2 + +12b8: e4 59 c0 12 ldx \[ %g7 \+ %l2 \], %l2 + +12bc: 01 00 00 00 nop * + +12c0: 01 00 00 00 nop * + +12c4: 01 00 00 00 nop * + +12c8: 01 00 00 00 nop * + +12cc: 17 00 00 00 sethi %hi\(0\), %o3 + +12d0: 98 02 e0 20 add %o3, 0x20, %o4 ! 20 <.*> + +12d4: da 5d c0 0c ldx \[ %l7 \+ %o4 \], %o5 + +12d8: e4 29 c0 0d stb %l2, \[ %g7 \+ %o5 \] + +12dc: 01 00 00 00 nop * + +12e0: 01 00 00 00 nop * + +12e4: 01 00 00 00 nop * + +12e8: 01 00 00 00 nop * + +12ec: 17 00 00 00 sethi %hi\(0\), %o3 + +12f0: 98 02 e0 68 add %o3, 0x68, %o4 ! 68 <.*> + +12f4: da 5d c0 0c ldx \[ %l7 \+ %o4 \], %o5 + +12f8: e4 71 c0 0d stx %l2, \[ %g7 \+ %o5 \] + +12fc: 01 00 00 00 nop * + +1300: 01 00 00 00 nop * + +1304: 01 00 00 00 nop * + +1308: 01 00 00 00 nop * + +130c: 17 00 00 00 sethi %hi\(0\), %o3 + +1310: 98 02 e0 70 add %o3, 0x70, %o4 ! 70 <.*> + +1314: da 5d c0 0c ldx \[ %l7 \+ %o4 \], %o5 + +1318: e4 21 c0 0d st %l2, \[ %g7 \+ %o5 \] + +131c: 01 00 00 00 nop * + +1320: 01 00 00 00 nop * + +1324: 01 00 00 00 nop * + +1328: 01 00 00 00 nop * + +132c: 81 cf e0 08 rett %i7 \+ 8 + +1330: 01 00 00 00 nop * #pass diff --git a/ld/testsuite/ld-sparc/tlssunpic64.rd b/ld/testsuite/ld-sparc/tlssunpic64.rd index 9d56f70..6b395a9 100644 --- a/ld/testsuite/ld-sparc/tlssunpic64.rd +++ b/ld/testsuite/ld-sparc/tlssunpic64.rd @@ -5,5 +5,139 @@ #readelf: -WSsrl #target: sparc*-*-* -# FIXME -#pass +There are 15 section headers, starting at offset 0x[0-9a-f]+: + +Section Headers: + +\[Nr\] Name +Type +Address +Off +Size +ES Flg Lk Inf Al + +\[ 0\] +NULL +0+ 0+ 0+ 0+ +0 +0 +0 + +\[ 1\] .hash +.* + +\[ 2\] .dynsym +.* + +\[ 3\] .dynstr +.* + +\[ 4\] .rela.dyn +.* + +\[ 5\] .rela.plt +.* + +\[ 6\] .text +PROGBITS +0+1000 0+1000 0+1000 0+ +AX +0 +0 4096 + +\[ 7\] .tdata +PROGBITS +0+102000 0+2000 0+60 0+ WAT +0 +0 +4 + +\[ 8\] .tbss +NOBITS +0+102060 0+2060 0+20 0+ WAT +0 +0 +4 + +\[ 9\] .dynamic +DYNAMIC +0+102060 0+2060 0+130 10 +WA +3 +0 +8 + +\[10\] .got +PROGBITS +0+102190 0+2190 0+98 08 +WA +0 +0 +8 + +\[11\] .plt +.* + +\[12\] .shstrtab +.* + +\[13\] .symtab +.* + +\[14\] .strtab +.* +#... + +Elf file type is DYN \(Shared object file\) +Entry point 0x1000 +There are 4 program headers, starting at offset [0-9]+ + +Program Headers: + +Type +Offset +VirtAddr +PhysAddr +FileSiz +MemSiz +Flg Align + +LOAD +0x0+ 0x0+ 0x0+ 0x0+2000 0x0+2000 R E 0x100000 + +LOAD +0x0+2000 0x0+102000 0x0+102000 0x0+3a0 0x0+3a0 RWE 0x100000 + +DYNAMIC +0x0+2060 0x0+102060 0x0+102060 0x0+130 0x0+130 RW +0x8 + +TLS +0x0+2000 0x0+102000 0x0+102000 0x0+60 0x0+80 R +0x4 +#... + +Relocation section '.rela.dyn' at offset 0x[0-9a-f]+ contains 14 entries: + +Offset +Info +Type +Symbol's Value +Symbol's Name \+ Addend +0+102198 +0+4b R_SPARC_TLS_DTPMOD64 +0+ +0+1021a8 +0+4f R_SPARC_TLS_TPOFF64 +0+24 +0+1021b0 +0+4f R_SPARC_TLS_TPOFF64 +0+30 +0+1021b8 +0+4b R_SPARC_TLS_DTPMOD64 +0+ +0+1021c8 +0+4b R_SPARC_TLS_DTPMOD64 +0+ +0+1021d8 +0+4f R_SPARC_TLS_TPOFF64 +0+64 +0+1021f8 +0+4f R_SPARC_TLS_TPOFF64 +0+50 +0+102200 +0+4f R_SPARC_TLS_TPOFF64 +0+70 +0+102210 +0+4b R_SPARC_TLS_DTPMOD64 +0+ +0+102220 +0+4f R_SPARC_TLS_TPOFF64 +0+44 +0+1021e0 +0+b0000004f R_SPARC_TLS_TPOFF64 +0+10 +sg5 \+ 0 +0+1021e8 +0+e0000004b R_SPARC_TLS_DTPMOD64 +0+ +sg1 \+ 0 +0+1021f0 +0+e0000004d R_SPARC_TLS_DTPOFF64 +0+ +sg1 \+ 0 +0+102208 +0+110000004f R_SPARC_TLS_TPOFF64 +0+4 +sg2 \+ 0 + +Relocation section '.rela.plt' at offset 0x[0-9a-f]+ contains 1 entries: + +Offset +Info +Type +Symbol's Value +Symbol's Name \+ Addend +0+102380 +0+d00000015 R_SPARC_JMP_SLOT +0+ +__tls_get_addr \+ 0 + +Symbol table '.dynsym' contains 22 entries: + +Num: +Value +Size Type +Bind +Vis +Ndx Name + +0: 0+ +0 NOTYPE +LOCAL +DEFAULT +UND * + +[0-9]+: [0-9a-f]+ +0 SECTION LOCAL +DEFAULT +6 * + +[0-9]+: [0-9a-f]+ +0 SECTION LOCAL +DEFAULT +7 * + +[0-9]+: [0-9a-f]+ +0 SECTION LOCAL +DEFAULT +8 * + +[0-9]+: [0-9a-f]+ +0 SECTION LOCAL +DEFAULT +10 * + +[0-9]+: 0+ +0 NOTYPE +LOCAL +DEFAULT +UND * + +[0-9]+: 0+ +0 NOTYPE +LOCAL +DEFAULT +UND * + +[0-9]+: 0+1c +0 TLS +GLOBAL DEFAULT +7 sg8 + +[0-9]+: 0+102060 +0 OBJECT +GLOBAL DEFAULT +ABS _DYNAMIC + +[0-9]+: 0+8 +0 TLS +GLOBAL DEFAULT +7 sg3 + +[0-9]+: 0+c +0 TLS +GLOBAL DEFAULT +7 sg4 + +[0-9]+: 0+10 +0 TLS +GLOBAL DEFAULT +7 sg5 + +[0-9]+: [0-9a-f]+ +0 OBJECT +GLOBAL DEFAULT +ABS _PROCEDURE_LINKAGE_TABLE_ + +[0-9]+: 0+ +0 NOTYPE +GLOBAL DEFAULT +UND __tls_get_addr + +[0-9]+: 0+ +0 TLS +GLOBAL DEFAULT +7 sg1 + +[0-9]+: 0+1008 +0 FUNC +GLOBAL DEFAULT +6 fn1 + +[0-9]+: [0-9a-f]+ +0 NOTYPE +GLOBAL DEFAULT +ABS __bss_start + +[0-9]+: 0+4 +0 TLS +GLOBAL DEFAULT +7 sg2 + +[0-9]+: 0+14 +0 TLS +GLOBAL DEFAULT +7 sg6 + +[0-9]+: 0+18 +0 TLS +GLOBAL DEFAULT +7 sg7 + +[0-9]+: [0-9a-f]+ +0 NOTYPE +GLOBAL DEFAULT +ABS _edata + +[0-9]+: [0-9a-f]+ +0 NOTYPE +GLOBAL DEFAULT +ABS _end + +Symbol table '.symtab' contains 55 entries: + +Num: +Value +Size Type +Bind +Vis +Ndx Name + +0: 0+ +0 NOTYPE +LOCAL +DEFAULT +UND * + +[0-9]+: [0-9a-f]+ +0 SECTION LOCAL +DEFAULT +1 * + +[0-9]+: [0-9a-f]+ +0 SECTION LOCAL +DEFAULT +2 * + +[0-9]+: [0-9a-f]+ +0 SECTION LOCAL +DEFAULT +3 * + +[0-9]+: [0-9a-f]+ +0 SECTION LOCAL +DEFAULT +4 * + +[0-9]+: [0-9a-f]+ +0 SECTION LOCAL +DEFAULT +5 * + +[0-9]+: [0-9a-f]+ +0 SECTION LOCAL +DEFAULT +6 * + +[0-9]+: [0-9a-f]+ +0 SECTION LOCAL +DEFAULT +7 * + +[0-9]+: [0-9a-f]+ +0 SECTION LOCAL +DEFAULT +8 * + +[0-9]+: [0-9a-f]+ +0 SECTION LOCAL +DEFAULT +9 * + +[0-9]+: [0-9a-f]+ +0 SECTION LOCAL +DEFAULT +10 * + +[0-9]+: [0-9a-f]+ +0 SECTION LOCAL +DEFAULT +11 * + +[0-9]+: [0-9a-f]+ +0 SECTION LOCAL +DEFAULT +12 * + +[0-9]+: [0-9a-f]+ +0 SECTION LOCAL +DEFAULT +13 * + +[0-9]+: [0-9a-f]+ +0 SECTION LOCAL +DEFAULT +14 * + +[0-9]+: 0+20 +0 TLS +LOCAL +DEFAULT +7 sl1 + +[0-9]+: 0+24 +0 TLS +LOCAL +DEFAULT +7 sl2 + +[0-9]+: 0+28 +0 TLS +LOCAL +DEFAULT +7 sl3 + +[0-9]+: 0+2c +0 TLS +LOCAL +DEFAULT +7 sl4 + +[0-9]+: 0+30 +0 TLS +LOCAL +DEFAULT +7 sl5 + +[0-9]+: 0+34 +0 TLS +LOCAL +DEFAULT +7 sl6 + +[0-9]+: 0+38 +0 TLS +LOCAL +DEFAULT +7 sl7 + +[0-9]+: 0+3c +0 TLS +LOCAL +DEFAULT +7 sl8 + +[0-9]+: 0+60 +0 TLS +LOCAL +HIDDEN +8 sH1 + +[0-9]+: 0+48 +0 TLS +LOCAL +HIDDEN +7 sh3 + +[0-9]+: 0+64 +0 TLS +LOCAL +HIDDEN +8 sH2 + +[0-9]+: 0+78 +0 TLS +LOCAL +HIDDEN +8 sH7 + +[0-9]+: 0+58 +0 TLS +LOCAL +HIDDEN +7 sh7 + +[0-9]+: 0+5c +0 TLS +LOCAL +HIDDEN +7 sh8 + +[0-9]+: 0+6c +0 TLS +LOCAL +HIDDEN +8 sH4 + +[0-9]+: 0+4c +0 TLS +LOCAL +HIDDEN +7 sh4 + +[0-9]+: 0+68 +0 TLS +LOCAL +HIDDEN +8 sH3 + +[0-9]+: 0+50 +0 TLS +LOCAL +HIDDEN +7 sh5 + +[0-9]+: 0+70 +0 TLS +LOCAL +HIDDEN +8 sH5 + +[0-9]+: 0+74 +0 TLS +LOCAL +HIDDEN +8 sH6 + +[0-9]+: 0+7c +0 TLS +LOCAL +HIDDEN +8 sH8 + +[0-9]+: 0+40 +0 TLS +LOCAL +HIDDEN +7 sh1 + +[0-9]+: 0+102190 +0 OBJECT +LOCAL HIDDEN +ABS _GLOBAL_OFFSET_TABLE_ + +[0-9]+: 0+44 +0 TLS +LOCAL +HIDDEN +7 sh2 + +[0-9]+: 0+54 +0 TLS +LOCAL +HIDDEN +7 sh6 + +[0-9]+: 0+1c +0 TLS +GLOBAL DEFAULT +7 sg8 + +[0-9]+: 0+102060 +0 OBJECT +GLOBAL DEFAULT +ABS _DYNAMIC + +[0-9]+: 0+8 +0 TLS +GLOBAL DEFAULT +7 sg3 + +[0-9]+: 0+c +0 TLS +GLOBAL DEFAULT +7 sg4 + +[0-9]+: 0+10 +0 TLS +GLOBAL DEFAULT +7 sg5 + +[0-9]+: [0-9a-f]+ +0 OBJECT +GLOBAL DEFAULT +ABS _PROCEDURE_LINKAGE_TABLE_ + +[0-9]+: 0+ +0 NOTYPE +GLOBAL DEFAULT +UND __tls_get_addr + +[0-9]+: 0+ +0 TLS +GLOBAL DEFAULT +7 sg1 + +[0-9]+: 0+1008 +0 FUNC +GLOBAL DEFAULT +6 fn1 + +[0-9]+: [0-9a-f]+ +0 NOTYPE +GLOBAL DEFAULT +ABS __bss_start + +[0-9]+: 0+4 +0 TLS +GLOBAL DEFAULT +7 sg2 + +[0-9]+: 0+14 +0 TLS +GLOBAL DEFAULT +7 sg6 + +[0-9]+: 0+18 +0 TLS +GLOBAL DEFAULT +7 sg7 + +[0-9]+: [0-9a-f]+ +0 NOTYPE +GLOBAL DEFAULT +ABS _edata + +[0-9]+: [0-9a-f]+ +0 NOTYPE +GLOBAL DEFAULT +ABS _end diff --git a/ld/testsuite/ld-sparc/tlssunpic64.sd b/ld/testsuite/ld-sparc/tlssunpic64.sd index 83d4092..9061c2e 100644 --- a/ld/testsuite/ld-sparc/tlssunpic64.sd +++ b/ld/testsuite/ld-sparc/tlssunpic64.sd @@ -8,5 +8,13 @@ .*: +file format elf64-sparc Contents of section .got: -# FIXME -#pass + 102190 00000000 00102060 00000000 00000000 .* + 1021a0 00000000 00000020 00000000 00000000 .* + 1021b0 00000000 00000000 00000000 00000000 .* + 1021c0 00000000 00000000 00000000 00000000 .* + 1021d0 00000000 00000060 00000000 00000000 .* + 1021e0 00000000 00000000 00000000 00000000 .* + 1021f0 00000000 00000000 00000000 00000000 .* + 102200 00000000 00000000 00000000 00000000 .* + 102210 00000000 00000000 00000000 00000040 .* + 102220 00000000 00000000 .* diff --git a/ld/testsuite/ld-sparc/tlssunpic64.td b/ld/testsuite/ld-sparc/tlssunpic64.td index 77f6507..1e82d2b 100644 --- a/ld/testsuite/ld-sparc/tlssunpic64.td +++ b/ld/testsuite/ld-sparc/tlssunpic64.td @@ -8,5 +8,9 @@ .*: +file format elf64-sparc Contents of section .tdata: -# FIXME -#pass + 102000 00000011 00000012 00000013 00000014 .* + 102010 00000015 00000016 00000017 00000018 .* + 102020 00000041 00000042 00000043 00000044 .* + 102030 00000045 00000046 00000047 00000048 .* + 102040 00000101 00000102 00000103 00000104 .* + 102050 00000105 00000106 00000107 00000108 .* |