diff options
author | Alan Modra <amodra@gmail.com> | 2017-08-30 20:35:09 +0930 |
---|---|---|
committer | Alan Modra <amodra@gmail.com> | 2017-08-30 20:35:09 +0930 |
commit | b9f04fe0dfe64bc6224e7bb96378607f17da7446 (patch) | |
tree | c97562790bfe1c4b7e81aab4a9368666ef177a6b /ld/testsuite/ld-powerpc/tlsmark.d | |
parent | c7dffc390cf861b313001fd08049a5fd8d758d0d (diff) | |
download | gdb-b9f04fe0dfe64bc6224e7bb96378607f17da7446.zip gdb-b9f04fe0dfe64bc6224e7bb96378607f17da7446.tar.gz gdb-b9f04fe0dfe64bc6224e7bb96378607f17da7446.tar.bz2 |
PowerPC64 __tls_get_addr sequence optimization
There isn't a good reason for ld.bfd to behave differently from gold
in the code generated by TLS GD/LD to LE optimization.
bfd/
* elf64-ppc.c (ppc64_elf_relocate_section): When optimizing
__tls_get_addr call sequences to LE, don't move the addi down
to the nop. Replace the bl with addi and leave the nop alone.
ld/
* testsuite/ld-powerpc/tls.d: Update.
* testsuite/ld-powerpc/tlsexe.d: Update.
* testsuite/ld-powerpc/tlsexetoc.d: Update.
* testsuite/ld-powerpc/tlsld.d: Update.
* testsuite/ld-powerpc/tlsmark.d: Update.
* testsuite/ld-powerpc/tlsopt4.d: Update.
* testsuite/ld-powerpc/tlstoc.d: Update.
Diffstat (limited to 'ld/testsuite/ld-powerpc/tlsmark.d')
-rw-r--r-- | ld/testsuite/ld-powerpc/tlsmark.d | 8 |
1 files changed, 4 insertions, 4 deletions
diff --git a/ld/testsuite/ld-powerpc/tlsmark.d b/ld/testsuite/ld-powerpc/tlsmark.d index 786a811..720a31f 100644 --- a/ld/testsuite/ld-powerpc/tlsmark.d +++ b/ld/testsuite/ld-powerpc/tlsmark.d @@ -11,26 +11,26 @@ Disassembly of section \.text: 0+100000e8 <_start>: .*: (48 00 00 18|18 00 00 48) b 10000100 <_start\+0x18> -.*: (60 00 00 00|00 00 00 60) nop .*: (38 63 90 00|00 90 63 38) addi r3,r3,-28672 +.*: (60 00 00 00|00 00 00 60) nop .*: (e8 83 00 00|00 00 83 e8) ld r4,0\(r3\) .*: (3c 6d 00 00|00 00 6d 3c) addis r3,r13,0 .*: (48 00 00 0c|0c 00 00 48) b 10000108 <_start\+0x20> .*: (3c 6d 00 00|00 00 6d 3c) addis r3,r13,0 .*: (4b ff ff e8|e8 ff ff 4b) b 100000ec <_start\+0x4> -.*: (60 00 00 00|00 00 00 60) nop .*: (38 63 10 00|00 10 63 38) addi r3,r3,4096 +.*: (60 00 00 00|00 00 00 60) nop .*: (e8 83 80 00|00 80 83 e8) ld r4,-32768\(r3\) .*: (3c 6d 00 00|00 00 6d 3c) addis r3,r13,0 .*: (48 00 00 0c|0c 00 00 48) b 10000124 <_start\+0x3c> .*: (3c 6d 00 00|00 00 6d 3c) addis r3,r13,0 .*: (48 00 00 14|14 00 00 48) b 10000134 <_start\+0x4c> -.*: (60 00 00 00|00 00 00 60) nop .*: (38 63 90 04|04 90 63 38) addi r3,r3,-28668 +.*: (60 00 00 00|00 00 00 60) nop .*: (e8 a3 00 00|00 00 a3 e8) ld r5,0\(r3\) .*: (4b ff ff ec|ec ff ff 4b) b 1000011c <_start\+0x34> -.*: (60 00 00 00|00 00 00 60) nop .*: (38 63 10 00|00 10 63 38) addi r3,r3,4096 +.*: (60 00 00 00|00 00 00 60) nop .*: (e8 a3 80 04|04 80 a3 e8) ld r5,-32764\(r3\) 0+10000140 <\.__tls_get_addr>: |