diff options
Diffstat (limited to 'ld')
-rw-r--r-- | ld/ChangeLog | 7 | ||||
-rw-r--r-- | ld/testsuite/ld-powerpc/big.s | 2 | ||||
-rw-r--r-- | ld/testsuite/ld-powerpc/powerpc.exp | 3 | ||||
-rw-r--r-- | ld/testsuite/ld-powerpc/relaxr.d | 26 | ||||
-rw-r--r-- | ld/testsuite/ld-powerpc/relaxrl.d | 27 |
5 files changed, 47 insertions, 18 deletions
diff --git a/ld/ChangeLog b/ld/ChangeLog index ecbbf485c90..0b3058b20e5 100644 --- a/ld/ChangeLog +++ b/ld/ChangeLog @@ -1,3 +1,10 @@ +2018-07-25 Alan Modra <amodra@gmail.com> + + * testsuite/ld-powerpc/big.s: New file. + * testsuite/ld-powerpc/relaxrl.d: New test. + * testsuite/ld-powerpc/powerpc.exp: Run new test. + * testsuite/ld-powerpc/relaxr.d: Adjust. + 2018-07-24 Nick Clifton <nickc@redhat.com> * po/fr.po: Updated French translation. diff --git a/ld/testsuite/ld-powerpc/big.s b/ld/testsuite/ld-powerpc/big.s new file mode 100644 index 00000000000..e372c979ee7 --- /dev/null +++ b/ld/testsuite/ld-powerpc/big.s @@ -0,0 +1,2 @@ + .text + .space 32*1024*1024 diff --git a/ld/testsuite/ld-powerpc/powerpc.exp b/ld/testsuite/ld-powerpc/powerpc.exp index 0359ba28cb2..cfeb277f043 100644 --- a/ld/testsuite/ld-powerpc/powerpc.exp +++ b/ld/testsuite/ld-powerpc/powerpc.exp @@ -160,6 +160,9 @@ set ppcelftests { {"relocatable relaxing" "-melf32ppc -r --relax" "" "-a32" "relax.s" {{objdump -dr relaxr.d}} "rrelax"} + {"relocatable relaxing large" "-melf32ppc -r --relax" "" "-a32" "relax.s big.s" + {{objdump -dr relaxrl.d}} + "rrelax"} } set ppc64elftests { diff --git a/ld/testsuite/ld-powerpc/relaxr.d b/ld/testsuite/ld-powerpc/relaxr.d index 3ce2751c158..1b3a3c147d0 100644 --- a/ld/testsuite/ld-powerpc/relaxr.d +++ b/ld/testsuite/ld-powerpc/relaxr.d @@ -4,23 +4,13 @@ Disassembly of section .text: 00000000 <_start>: - 0: (48 00 00 15|15 00 00 48) bl 14 <_start\+0x14> - 4: (48 00 00 21|21 00 00 48) bl 24 <_start\+0x24> - 8: (48 00 00 0d|0d 00 00 48) bl 14 <_start\+0x14> - 8: R_PPC_NONE \*ABS\* - c: (48 00 00 19|19 00 00 48) bl 24 <_start\+0x24> - c: R_PPC_NONE \*ABS\* + 0: (48 00 00 01|01 00 00 48) bl 0 <_start> + 0: R_PPC_REL24 near + 4: (48 00 00 01|01 00 00 48) bl 4 <_start\+0x4> + 4: R_PPC_REL24 far + 8: (48 00 00 01|01 00 00 48) bl 8 <_start\+0x8> + 8: R_PPC_REL24 near + c: (48 00 00 01|01 00 00 48) bl c <_start\+0xc> + c: R_PPC_REL24 far 10: (48 00 00 00|00 00 00 48) b 10 <_start\+0x10> 10: R_PPC_REL24 _start - 14: (3d 80 00 00|00 00 80 3d) lis r12,0 - 1(6|4): R_PPC_ADDR16_HA near - 18: (39 8c 00 00|00 00 8c 39) addi r12,r12,0 - 1(a|8): R_PPC_ADDR16_LO near - 1c: (7d 89 03 a6|a6 03 89 7d) mtctr r12 - 20: (4e 80 04 20|20 04 80 4e) bctr - 24: (3d 80 00 00|00 00 80 3d) lis r12,0 - 2(6|4): R_PPC_ADDR16_HA far - 28: (39 8c 00 00|00 00 8c 39) addi r12,r12,0 - 2(a|8): R_PPC_ADDR16_LO far - 2c: (7d 89 03 a6|a6 03 89 7d) mtctr r12 - 30: (4e 80 04 20|20 04 80 4e) bctr diff --git a/ld/testsuite/ld-powerpc/relaxrl.d b/ld/testsuite/ld-powerpc/relaxrl.d new file mode 100644 index 00000000000..8557e3fcfb9 --- /dev/null +++ b/ld/testsuite/ld-powerpc/relaxrl.d @@ -0,0 +1,27 @@ + +.*: file format .* + +Disassembly of section .text: + +0+ <_start>: + +0: (48 00 00 15|15 00 00 48) bl 14 <_start\+0x14> + +4: (48 00 00 21|21 00 00 48) bl 24 <_start\+0x24> + +8: (48 00 00 0d|0d 00 00 48) bl 14 <_start\+0x14> + 8: R_PPC_NONE \*ABS\* + +c: (48 00 00 19|19 00 00 48) bl 24 <_start\+0x24> + c: R_PPC_NONE \*ABS\* + +10: (48 00 00 00|00 00 00 48) b 10 <_start\+0x10> + 10: R_PPC_REL24 _start + +14: (3d 80 00 00|00 00 80 3d) lis r12,0 + 1(6|4): R_PPC_ADDR16_HA near + +18: (39 8c 00 00|00 00 8c 39) addi r12,r12,0 + 1(a|8): R_PPC_ADDR16_LO near + +1c: (7d 89 03 a6|a6 03 89 7d) mtctr r12 + +20: (4e 80 04 20|20 04 80 4e) bctr + +24: (3d 80 00 00|00 00 80 3d) lis r12,0 + 2(6|4): R_PPC_ADDR16_HA far + +28: (39 8c 00 00|00 00 8c 39) addi r12,r12,0 + 2(a|8): R_PPC_ADDR16_LO far + +2c: (7d 89 03 a6|a6 03 89 7d) mtctr r12 + +30: (4e 80 04 20|20 04 80 4e) bctr + \.\.\. |