diff options
author | Alan Modra <amodra@gmail.com> | 2022-01-26 10:31:36 +1030 |
---|---|---|
committer | Alan Modra <amodra@gmail.com> | 2022-02-03 13:40:41 +1030 |
commit | 3a3a4c1fe4ccb1914d29fbf8f5930d55aacec78f (patch) | |
tree | d70433071d319f0d23a4f09aa62380be09291430 /ld/testsuite | |
parent | 36a13a0e62bc672f59c6d27bc2b963edee32b488 (diff) | |
download | gdb-3a3a4c1fe4ccb1914d29fbf8f5930d55aacec78f.zip gdb-3a3a4c1fe4ccb1914d29fbf8f5930d55aacec78f.tar.gz gdb-3a3a4c1fe4ccb1914d29fbf8f5930d55aacec78f.tar.bz2 |
PowerPC64 treatment of absolute symbols
Supporting -static-pie on PowerPC64 requires the linker to properly
treat SHN_ABS symbols for cases like glibc's _nl_current_LC_CTYPE_used
absolute symbol. I've been slow to fix the linker on powerpc because
there is some chance that this will break some shared libraries or
PIEs.
bfd/
* elf64-ppc.c (ppc64_elf_check_relocs): Consolidate local sym
handling code. Don't count dyn relocs against non-dynamic
absolute symbols.
(dec_dynrel_count): Adjust to suit.
(ppc64_elf_edit_toc): Don't remove entries for absolute symbols
when pic.
(allocate_got): Don't allocate space for got relocs against
non-dynamic absolute syms.
(ppc64_elf_layout_multitoc): Likewise.
(got_and_plt_relr): Likewise.
(ppc64_elf_size_dynamic_sections): Likewise for local got.
(got_and_plt_relr_for_local_syms): Likewise.
(ppc64_elf_size_stubs): Don't allocate space for relr either.
(ppc64_elf_relocate_section): Don't write relocs against non-dynamic
absolute symbols. Don't optimise got and toc code sequences
loading absolute symbol entries.
ld/
* testsuite/ld-powerpc/abs-reloc.s,
* testsuite/ld-powerpc/abs-static.d,
* testsuite/ld-powerpc/abs-static.r,
* testsuite/ld-powerpc/abs-pie.d,
* testsuite/ld-powerpc/abs-pie.r,
* testsuite/ld-powerpc/abs-shared.d,
* testsuite/ld-powerpc/abs-shared.r,
* testsuite/ld-powerpc/abs-pie-relr.d,
* testsuite/ld-powerpc/abs-pie-relr.r,
* testsuite/ld-powerpc/abs-shared-relr.d,
* testsuite/ld-powerpc/abs-shared-relr.r: New tests.
* testsuite/ld-powerpc/powerpc.exp: Run them.
Diffstat (limited to 'ld/testsuite')
-rw-r--r-- | ld/testsuite/ld-powerpc/abs-pie-relr.d | 34 | ||||
-rw-r--r-- | ld/testsuite/ld-powerpc/abs-pie-relr.r | 8 | ||||
-rw-r--r-- | ld/testsuite/ld-powerpc/abs-pie.d | 34 | ||||
-rw-r--r-- | ld/testsuite/ld-powerpc/abs-pie.r | 8 | ||||
-rw-r--r-- | ld/testsuite/ld-powerpc/abs-reloc.s | 49 | ||||
-rw-r--r-- | ld/testsuite/ld-powerpc/abs-shared-relr.d | 34 | ||||
-rw-r--r-- | ld/testsuite/ld-powerpc/abs-shared-relr.r | 17 | ||||
-rw-r--r-- | ld/testsuite/ld-powerpc/abs-shared.d | 34 | ||||
-rw-r--r-- | ld/testsuite/ld-powerpc/abs-shared.r | 14 | ||||
-rw-r--r-- | ld/testsuite/ld-powerpc/abs-static.d | 32 | ||||
-rw-r--r-- | ld/testsuite/ld-powerpc/abs-static.r | 6 | ||||
-rw-r--r-- | ld/testsuite/ld-powerpc/powerpc.exp | 20 |
12 files changed, 290 insertions, 0 deletions
diff --git a/ld/testsuite/ld-powerpc/abs-pie-relr.d b/ld/testsuite/ld-powerpc/abs-pie-relr.d new file mode 100644 index 0000000..edf0b43 --- /dev/null +++ b/ld/testsuite/ld-powerpc/abs-pie-relr.d @@ -0,0 +1,34 @@ +#source: abs-reloc.s +#as: -a64 +#ld: -melf64ppc -pie --hash-style=sysv -z pack-relative-relocs --defsym a=1 --defsym 'HIDDEN(b=2)' --defsym c=0x123456789abcdef0 +#objdump: -sdr + +#... +Contents of section .got: +.* (00000000 00018300|00830100 00000000) (00000000 00000001|01000000 00000000) .* +.* (00000000 00000002|02000000 00000000) (12345678 9abcdef0|f0debc9a 78563412) .* +.* (00000000 00000002|02000000 00000000) (12345678 9abcdef0|f0debc9a 78563412) .* +.* (00000000 00000001|01000000 00000000) .* +Contents of section \.data: +.* (00000000 00010338|38030100 00000000) (00000000 00000001|01000000 00000000) .* +.* (00000000 00000002|02000000 00000000) (12345678 9abcdef0|f0debc9a 78563412) .* +#... +.* <_start>: +.*: (3c 4c 00 02|02 00 4c 3c) addis r2,r12,2 +.*: (38 42 81 58|58 81 42 38) addi r2,r2,-32424 +.*: (60 00 00 00|00 00 00 60) nop +.*: (38 62 80 38|38 80 62 38) addi r3,r2,-32712 +.*: (60 00 00 00|00 00 00 60) nop +.*: (e8 82 80 08|08 80 82 e8) ld r4,-32760\(r2\) +.*: (60 00 00 00|00 00 00 60) nop +.*: (e8 a2 80 10|10 80 a2 e8) ld r5,-32752\(r2\) +.*: (60 00 00 00|00 00 00 60) nop +.*: (e8 c2 80 18|18 80 c2 e8) ld r6,-32744\(r2\) +.*: (60 00 00 00|00 00 00 60) nop +.*: (38 e2 80 38|38 80 e2 38) addi r7,r2,-32712 +.*: (3d 02 00 00|00 00 02 3d) addis r8,r2,0 +.*: (e9 08 80 30|30 80 08 e9) ld r8,-32720\(r8\) +.*: (3d 22 00 00|00 00 22 3d) addis r9,r2,0 +.*: (e9 29 80 20|20 80 29 e9) ld r9,-32736\(r9\) +.*: (3d 42 00 00|00 00 42 3d) addis r10,r2,0 +.*: (e9 4a 80 28|28 80 4a e9) ld r10,-32728\(r10\) diff --git a/ld/testsuite/ld-powerpc/abs-pie-relr.r b/ld/testsuite/ld-powerpc/abs-pie-relr.r new file mode 100644 index 0000000..22effe8 --- /dev/null +++ b/ld/testsuite/ld-powerpc/abs-pie-relr.r @@ -0,0 +1,8 @@ +#source: abs-reloc.s +#as: -a64 +#ld: -melf64ppc -pie --hash-style=sysv -z pack-relative-relocs --defsym a=1 --defsym 'HIDDEN(b=2)' --defsym c=0x123456789abcdef0 +#readelf: -rW + +Relocation section '\.relr\.dyn' at offset .* contains 1 entry: + 1 offset +0+10338 diff --git a/ld/testsuite/ld-powerpc/abs-pie.d b/ld/testsuite/ld-powerpc/abs-pie.d new file mode 100644 index 0000000..b0930b6 --- /dev/null +++ b/ld/testsuite/ld-powerpc/abs-pie.d @@ -0,0 +1,34 @@ +#source: abs-reloc.s +#as: -a64 +#ld: -melf64ppc -pie --hash-style=sysv --defsym a=1 --defsym 'HIDDEN(b=2)' --defsym c=0x123456789abcdef0 +#objdump: -sdr + +#... +Contents of section \.got: +.* (00000000 00018400|00840100 00000000) (00000000 00000001|01000000 00000000) .* +.* (00000000 00000002|02000000 00000000) (12345678 9abcdef0|f0debc9a 78563412) .* +.* (00000000 00000002|02000000 00000000) (12345678 9abcdef0|f0debc9a 78563412) .* +.* (00000000 00000001|01000000 00000000) .* +Contents of section \.data: +.* (00000000 00010438|38040100 00000000) (00000000 00000001|01000000 00000000) .* +.* (00000000 00000002|02000000 00000000) (12345678 9abcdef0|f0debc9a 78563412) .* +#... +.* <_start>: +.*: (3c 4c 00 02|02 00 4c 3c) addis r2,r12,2 +.*: (38 42 82 10|10 82 42 38) addi r2,r2,-32240 +.*: (60 00 00 00|00 00 00 60) nop +.*: (38 62 80 38|38 80 62 38) addi r3,r2,-32712 +.*: (60 00 00 00|00 00 00 60) nop +.*: (e8 82 80 08|08 80 82 e8) ld r4,-32760\(r2\) +.*: (60 00 00 00|00 00 00 60) nop +.*: (e8 a2 80 10|10 80 a2 e8) ld r5,-32752\(r2\) +.*: (60 00 00 00|00 00 00 60) nop +.*: (e8 c2 80 18|18 80 c2 e8) ld r6,-32744\(r2\) +.*: (60 00 00 00|00 00 00 60) nop +.*: (38 e2 80 38|38 80 e2 38) addi r7,r2,-32712 +.*: (3d 02 00 00|00 00 02 3d) addis r8,r2,0 +.*: (e9 08 80 30|30 80 08 e9) ld r8,-32720\(r8\) +.*: (3d 22 00 00|00 00 22 3d) addis r9,r2,0 +.*: (e9 29 80 20|20 80 29 e9) ld r9,-32736\(r9\) +.*: (3d 42 00 00|00 00 42 3d) addis r10,r2,0 +.*: (e9 4a 80 28|28 80 4a e9) ld r10,-32728\(r10\) diff --git a/ld/testsuite/ld-powerpc/abs-pie.r b/ld/testsuite/ld-powerpc/abs-pie.r new file mode 100644 index 0000000..2ae4d0e --- /dev/null +++ b/ld/testsuite/ld-powerpc/abs-pie.r @@ -0,0 +1,8 @@ +#source: abs-reloc.s +#as: -a64 +#ld: -melf64ppc -pie --hash-style=sysv --defsym a=1 --defsym 'HIDDEN(b=2)' --defsym c=0x123456789abcdef0 +#readelf: -rW + +Relocation section '\.rela\.dyn' at offset .* contains 1 entry: + +Offset +Info +Type +Symbol's Value +Symbol's Name \+ Addend +0+10438 +0+16 R_PPC64_RELATIVE +10438 diff --git a/ld/testsuite/ld-powerpc/abs-reloc.s b/ld/testsuite/ld-powerpc/abs-reloc.s new file mode 100644 index 0000000..a5898e1 --- /dev/null +++ b/ld/testsuite/ld-powerpc/abs-reloc.s @@ -0,0 +1,49 @@ + .globl x + .hidden x + + .section .toc,"aw" + .p2align 3 +.Lx: + .quad x +.La: + .quad a +.Lb: + .quad b +.Lc: + .quad c + + .data + .p2align 3 +x: + .quad x + .quad a + .quad b + .quad c + + .text + .p2align 2 + .globl _start + .type _start,@function +_start: +0: + addis 2,12,.TOC.-0b@ha + addi 2,2,.TOC.-0b@l + .localentry _start,.-_start + addis 3,2,.Lx@toc@ha + ld 3,.Lx@toc@l(3) + addis 4,2,.La@toc@ha + ld 4,.La@toc@l(4) + addis 5,2,.Lb@toc@ha + ld 5,.Lb@toc@l(5) + addis 6,2,.Lc@toc@ha + ld 6,.Lc@toc@l(6) + + addis 7,2,x@got@ha + ld 7,x@got@l(7) + addis 8,2,a@got@ha + ld 8,a@got@l(8) + addis 9,2,b@got@ha + ld 9,b@got@l(9) + addis 10,2,c@got@ha + ld 10,c@got@l(10) + .size _start,.-_start diff --git a/ld/testsuite/ld-powerpc/abs-shared-relr.d b/ld/testsuite/ld-powerpc/abs-shared-relr.d new file mode 100644 index 0000000..1460809 --- /dev/null +++ b/ld/testsuite/ld-powerpc/abs-shared-relr.d @@ -0,0 +1,34 @@ +#source: abs-reloc.s +#as: -a64 +#ld: -melf64ppc -shared --hash-style=sysv -z pack-relative-relocs --defsym a=1 --defsym 'HIDDEN(b=2)' --defsym c=0x123456789abcdef0 +#objdump: -sdr + +#... +Contents of section \.got: +.* (00000000 00018400|00840100 00000000) 00000000 00000000 .* +.* (00000000 00000002|02000000 00000000) 00000000 00000000 .* +.* (00000000 00000002|02000000 00000000) 00000000 00000000 .* +.* 00000000 00000000 .* +Contents of section \.data: +.* (00000000 00010438|38040100 00000000) 00000000 00000000 .* +.* (00000000 00000002|02000000 00000000) 00000000 00000000 .* +#... +.* <_start>: +.*: (3c 4c 00 02|02 00 4c 3c) addis r2,r12,2 +.*: (38 42 81 b0|b0 81 42 38) addi r2,r2,-32336 +.*: (60 00 00 00|00 00 00 60) nop +.*: (38 62 80 38|38 80 62 38) addi r3,r2,-32712 +.*: (60 00 00 00|00 00 00 60) nop +.*: (e8 82 80 08|08 80 82 e8) ld r4,-32760\(r2\) +.*: (60 00 00 00|00 00 00 60) nop +.*: (e8 a2 80 10|10 80 a2 e8) ld r5,-32752\(r2\) +.*: (60 00 00 00|00 00 00 60) nop +.*: (e8 c2 80 18|18 80 c2 e8) ld r6,-32744\(r2\) +.*: (60 00 00 00|00 00 00 60) nop +.*: (38 e2 80 38|38 80 e2 38) addi r7,r2,-32712 +.*: (3d 02 00 00|00 00 02 3d) addis r8,r2,0 +.*: (e9 08 80 30|30 80 08 e9) ld r8,-32720\(r8\) +.*: (3d 22 00 00|00 00 22 3d) addis r9,r2,0 +.*: (e9 29 80 20|20 80 29 e9) ld r9,-32736\(r9\) +.*: (3d 42 00 00|00 00 42 3d) addis r10,r2,0 +.*: (e9 4a 80 28|28 80 4a e9) ld r10,-32728\(r10\) diff --git a/ld/testsuite/ld-powerpc/abs-shared-relr.r b/ld/testsuite/ld-powerpc/abs-shared-relr.r new file mode 100644 index 0000000..978c43a --- /dev/null +++ b/ld/testsuite/ld-powerpc/abs-shared-relr.r @@ -0,0 +1,17 @@ +#source: abs-reloc.s +#as: -a64 +#ld: -melf64ppc -pie --hash-style=sysv -z pack-relative-relocs --defsym a=1 --defsym 'HIDDEN(b=2)' --defsym c=0x123456789abcdef0 +#readelf: -rW + +Relocation section '\.rela\.dyn' at offset .* contains 6 entries: + +Offset +Info +Type +Symbol's Value +Symbol's Name \+ Addend +0+10408 0+500000026 R_PPC64_ADDR64 0+1 a \+ 0 +0+10430 0+500000014 R_PPC64_GLOB_DAT 0+1 a \+ 0 +0+10440 0+500000026 R_PPC64_ADDR64 0+1 a \+ 0 +0+10418 0+400000026 R_PPC64_ADDR64 123456789abcdef0 c \+ 0 +0+10428 0+400000014 R_PPC64_GLOB_DAT 123456789abcdef0 c \+ 0 +0+10450 0+400000026 R_PPC64_ADDR64 123456789abcdef0 c \+ 0 + +Relocation section '\.relr\.dyn' at offset .* contains 1 entry: + 1 offset +0+10438 diff --git a/ld/testsuite/ld-powerpc/abs-shared.d b/ld/testsuite/ld-powerpc/abs-shared.d new file mode 100644 index 0000000..b66a4b0 --- /dev/null +++ b/ld/testsuite/ld-powerpc/abs-shared.d @@ -0,0 +1,34 @@ +#source: abs-reloc.s +#as: -a64 +#ld: -melf64ppc -shared --hash-style=sysv --defsym a=1 --defsym 'HIDDEN(b=2)' --defsym c=0x123456789abcdef0 +#objdump: -sdr + +#... +Contents of section \.got: +.* (00000000 00018400|00840100 00000000) 00000000 00000000 .* +.* (00000000 00000002|02000000 00000000) 00000000 00000000 .* +.* (00000000 00000002|02000000 00000000) 00000000 00000000 .* +.* 00000000 00000000 .* +Contents of section \.data: +.* (00000000 00010438|38040100 00000000) 00000000 00000000 .* +.* (00000000 00000002|02000000 00000000) 00000000 00000000 .* +#... +.* <_start>: +.*: (3c 4c 00 02|02 00 4c 3c) addis r2,r12,2 +.*: (38 42 81 a0|a0 81 42 38) addi r2,r2,-32352 +.*: (60 00 00 00|00 00 00 60) nop +.*: (38 62 80 38|38 80 62 38) addi r3,r2,-32712 +.*: (60 00 00 00|00 00 00 60) nop +.*: (e8 82 80 08|08 80 82 e8) ld r4,-32760\(r2\) +.*: (60 00 00 00|00 00 00 60) nop +.*: (e8 a2 80 10|10 80 a2 e8) ld r5,-32752\(r2\) +.*: (60 00 00 00|00 00 00 60) nop +.*: (e8 c2 80 18|18 80 c2 e8) ld r6,-32744\(r2\) +.*: (60 00 00 00|00 00 00 60) nop +.*: (38 e2 80 38|38 80 e2 38) addi r7,r2,-32712 +.*: (3d 02 00 00|00 00 02 3d) addis r8,r2,0 +.*: (e9 08 80 30|30 80 08 e9) ld r8,-32720\(r8\) +.*: (3d 22 00 00|00 00 22 3d) addis r9,r2,0 +.*: (e9 29 80 20|20 80 29 e9) ld r9,-32736\(r9\) +.*: (3d 42 00 00|00 00 42 3d) addis r10,r2,0 +.*: (e9 4a 80 28|28 80 4a e9) ld r10,-32728\(r10\) diff --git a/ld/testsuite/ld-powerpc/abs-shared.r b/ld/testsuite/ld-powerpc/abs-shared.r new file mode 100644 index 0000000..70fb781 --- /dev/null +++ b/ld/testsuite/ld-powerpc/abs-shared.r @@ -0,0 +1,14 @@ +#source: abs-reloc.s +#as: -a64 +#ld: -melf64ppc -shared --hash-style=sysv --defsym a=1 --defsym 'HIDDEN(b=2)' --defsym c=0x123456789abcdef0 +#readelf: -rW + +Relocation section '\.rela\.dyn' at offset .* contains 7 entries: + +Offset +Info +Type +Symbol's Value +Symbol's Name \+ Addend +0+10438 0+000000016 R_PPC64_RELATIVE +10438 +0+10408 0+500000026 R_PPC64_ADDR64 0+1 a \+ 0 +0+10430 0+500000014 R_PPC64_GLOB_DAT 0+1 a \+ 0 +0+10440 0+500000026 R_PPC64_ADDR64 0+1 a \+ 0 +0+10418 0+400000026 R_PPC64_ADDR64 123456789abcdef0 c \+ 0 +0+10428 0+400000014 R_PPC64_GLOB_DAT 123456789abcdef0 c \+ 0 +0+10450 0+400000026 R_PPC64_ADDR64 123456789abcdef0 c \+ 0 diff --git a/ld/testsuite/ld-powerpc/abs-static.d b/ld/testsuite/ld-powerpc/abs-static.d new file mode 100644 index 0000000..fafb1a6 --- /dev/null +++ b/ld/testsuite/ld-powerpc/abs-static.d @@ -0,0 +1,32 @@ +#source: abs-reloc.s +#as: -a64 +#ld: -melf64ppc -static --defsym a=1 --defsym 'HIDDEN(b=2)' --defsym c=0x123456789abcdef0 +#objdump: -sdr + +#... +Contents of section \.got: +.* (00000000 10018100|00810110 00000000) (12345678 9abcdef0|f0debc9a 78563412) .* +.* (12345678 9abcdef0|f0debc9a 78563412) .* +Contents of section \.data: +.* (00000000 10010118|18010110 00000000) (00000000 00000001|01000000 00000000) .* +.* (00000000 00000002|02000000 00000000) (12345678 9abcdef0|f0debc9a 78563412) .* +#... +.* <_start>: +.*: (3c 40 10 02|02 10 40 3c) lis r2,4098 +.*: (38 42 81 00|00 81 42 38) addi r2,r2,-32512 +.*: (60 00 00 00|00 00 00 60) nop +.*: (38 62 80 18|18 80 62 38) addi r3,r2,-32744 +.*: (3c 82 ef fe|fe ef 82 3c) addis r4,r2,-4098 +.*: (38 84 7f 01|01 7f 84 38) addi r4,r4,32513 +.*: (3c a2 ef fe|fe ef a2 3c) addis r5,r2,-4098 +.*: (38 a5 7f 02|02 7f a5 38) addi r5,r5,32514 +.*: (60 00 00 00|00 00 00 60) nop +.*: (e8 c2 80 08|08 80 c2 e8) ld r6,-32760\(r2\) +.*: (60 00 00 00|00 00 00 60) nop +.*: (38 e2 80 18|18 80 e2 38) addi r7,r2,-32744 +.*: (3d 02 ef fe|fe ef 02 3d) addis r8,r2,-4098 +.*: (39 08 7f 01|01 7f 08 39) addi r8,r8,32513 +.*: (3d 22 ef fe|fe ef 22 3d) addis r9,r2,-4098 +.*: (39 29 7f 02|02 7f 29 39) addi r9,r9,32514 +.*: (60 00 00 00|00 00 00 60) nop +.*: (e9 42 80 10|10 80 42 e9) ld r10,-32752\(r2\) diff --git a/ld/testsuite/ld-powerpc/abs-static.r b/ld/testsuite/ld-powerpc/abs-static.r new file mode 100644 index 0000000..4b5886c --- /dev/null +++ b/ld/testsuite/ld-powerpc/abs-static.r @@ -0,0 +1,6 @@ +#source: abs-reloc.s +#as: -a64 +#ld: -melf64ppc -static --defsym a=1 --defsym 'HIDDEN(b=2)' --defsym c=0x123456789abcdef0 +#readelf: -rW + +There are no relocations in this file. diff --git a/ld/testsuite/ld-powerpc/powerpc.exp b/ld/testsuite/ld-powerpc/powerpc.exp index 3d738f5..318bf92 100644 --- a/ld/testsuite/ld-powerpc/powerpc.exp +++ b/ld/testsuite/ld-powerpc/powerpc.exp @@ -354,6 +354,26 @@ set ppc64elftests { {"startstop" "-shared -melf64ppc --hash-style=sysv --gc-sections -z start-stop-gc" "" "-a64 -mpower10" {startstop.s} {{objdump -d startstop.d} {readelf {-rW} startstop.r}} "startstop.so"} + {"abs-static" "-melf64ppc -static --defsym a=1 --defsym 'HIDDEN(b=2)' --defsym c=0x123456789abcdef0" "" + "-a64" {abs-reloc.s} + {{objdump {-sdr} abs-static.d} + {readelf {-rW} abs-static.r}} "abs-static"} + {"abs-pie" "-melf64ppc -pie --hash-style=sysv --defsym a=1 --defsym 'HIDDEN(b=2)' --defsym c=0x123456789abcdef0" "" + "-a64" {abs-reloc.s} + {{objdump {-sdr} abs-pie.d} + {readelf {-rW} abs-pie.r}} "abs-pie"} + {"abs-shared" "-melf64ppc -shared --hash-style=sysv --defsym a=1 --defsym 'HIDDEN(b=2)' --defsym c=0x123456789abcdef0" "" + "-a64" {abs-reloc.s} + {{objdump {-sdr} abs-shared.d} + {readelf {-rW} abs-shared.r}} "abs-shared"} + {"abs-pie-relr" "-melf64ppc -pie --hash-style=sysv -z pack-relative-relocs --defsym a=1 --defsym 'HIDDEN(b=2)' --defsym c=0x123456789abcdef0" "" + "-a64" {abs-reloc.s} + {{objdump {-sdr} abs-pie-relr.d} + {readelf {-rW} abs-pie-relr.r}} "abs-pie-relr"} + {"abs-shared-relr" "-melf64ppc -shared --hash-style=sysv -z pack-relative-relocs --defsym a=1 --defsym 'HIDDEN(b=2)' --defsym c=0x123456789abcdef0" "" + "-a64" {abs-reloc.s} + {{objdump {-sdr} abs-shared-relr.d} + {readelf {-rW} abs-shared-relr.r}} "abs-shared-relr"} } set ppceabitests { |