diff options
author | Marcus Shawcroft <mshawcroft@sourceware.org> | 2013-07-02 06:39:26 +0000 |
---|---|---|
committer | Marcus Shawcroft <mshawcroft@sourceware.org> | 2013-07-02 06:39:26 +0000 |
commit | cc0efaa8024bd8b8774cb9f1bea0241f81e20a67 (patch) | |
tree | 6934bd82112e2f52f684e866144268a7cdb901a6 /ld | |
parent | 9d115506b6d9d15714cca1469ac621d73b49297d (diff) | |
download | gdb-cc0efaa8024bd8b8774cb9f1bea0241f81e20a67.zip gdb-cc0efaa8024bd8b8774cb9f1bea0241f81e20a67.tar.gz gdb-cc0efaa8024bd8b8774cb9f1bea0241f81e20a67.tar.bz2 |
[AArch64] Fix creation of .got and placement of _GLOBAL_OFFSET_TABLE_
Diffstat (limited to 'ld')
-rw-r--r-- | ld/testsuite/ChangeLog | 10 | ||||
-rw-r--r-- | ld/testsuite/ld-aarch64/emit-relocs-311.d | 2 | ||||
-rw-r--r-- | ld/testsuite/ld-aarch64/gc-plt-relocs.d | 8 | ||||
-rw-r--r-- | ld/testsuite/ld-aarch64/tls-desc-ie.d | 14 | ||||
-rw-r--r-- | ld/testsuite/ld-aarch64/tls-relax-all.d | 4 | ||||
-rw-r--r-- | ld/testsuite/ld-aarch64/tls-relax-gd-ie.d | 2 | ||||
-rw-r--r-- | ld/testsuite/ld-aarch64/tls-relax-gdesc-ie-2.d | 2 | ||||
-rw-r--r-- | ld/testsuite/ld-aarch64/tls-relax-gdesc-ie.d | 2 |
8 files changed, 27 insertions, 17 deletions
diff --git a/ld/testsuite/ChangeLog b/ld/testsuite/ChangeLog index 08c2552..54e7a78 100644 --- a/ld/testsuite/ChangeLog +++ b/ld/testsuite/ChangeLog @@ -1,3 +1,13 @@ +2013-07-02 Marcus Shawcroft <marcus.shawcroft@arm.com> + + * ld-aarch64/gc-plt-relocs.d: Adjust expected .got offsets. + * ld-aarch64/tls-desc-ie.d: Likewise. + * ld-aarch64/emit-relocs-311.d: Adjust expected symbol. + * ld-aarch64/tls-relax-all.d: Likewise. + * ld-aarch64/tls-relax-gd-ie.d: Likewise. + * ld-aarch64/tls-relax-gdesc-ie.d: Likewise. + * ld-aarch64/tls-relax-gdesc-ie-2.d: Likewise. + 2013-07-01 H.J. Lu <hongjiu.lu@intel.com> * ld-x86-64/tlsg.sd: Adjusted. diff --git a/ld/testsuite/ld-aarch64/emit-relocs-311.d b/ld/testsuite/ld-aarch64/emit-relocs-311.d index 5f1b47f..578d6d3 100644 --- a/ld/testsuite/ld-aarch64/emit-relocs-311.d +++ b/ld/testsuite/ld-aarch64/emit-relocs-311.d @@ -10,5 +10,5 @@ +1000c: R_AARCH64_ADR_PREL_PG_HI21 tempy2 +10010: b0ffff91 adrp x17, 1000 <tempy3-0x234> +10010: R_AARCH64_ADR_PREL_PG_HI21 tempy3 - +10014: 90000083 adrp x3, 20000 <tempy[+]0xf000> + +10014: 90000083 adrp x3, 20000 <_GLOBAL_OFFSET_TABLE_> +10014: R_AARCH64_ADR_GOT_PAGE gempy diff --git a/ld/testsuite/ld-aarch64/gc-plt-relocs.d b/ld/testsuite/ld-aarch64/gc-plt-relocs.d index 6c4d3ca..cb38c8d 100644 --- a/ld/testsuite/ld-aarch64/gc-plt-relocs.d +++ b/ld/testsuite/ld-aarch64/gc-plt-relocs.d @@ -36,13 +36,13 @@ Disassembly of section .plt: 0+8010 \<\.plt\>: 8010: a9bf7bf0 stp x16, x30, \[sp,#-16\]! 8014: b0000010 adrp x16, 9000 .* - 8018: f9400a11 ldr x17, \[x16,#16\] - 801c: 91004210 add x16, x16, #0x10 + 8018: f9400e11 ldr x17, \[x16,#24\] + 801c: 91006210 add x16, x16, #0x18 8020: d61f0220 br x17 8024: d503201f nop 8028: d503201f nop 802c: d503201f nop 8030: b0000010 adrp x16, 9000 .* - 8034: f9400e11 ldr x17, \[x16,#24\] - 8038: 91006210 add x16, x16, #0x18 + 8034: f9401211 ldr x17, \[x16,#32\] + 8038: 91008210 add x16, x16, #0x20 803c: d61f0220 br x17 diff --git a/ld/testsuite/ld-aarch64/tls-desc-ie.d b/ld/testsuite/ld-aarch64/tls-desc-ie.d index 712e39c..037da07 100644 --- a/ld/testsuite/ld-aarch64/tls-desc-ie.d +++ b/ld/testsuite/ld-aarch64/tls-desc-ie.d @@ -3,18 +3,18 @@ #objdump: -dr #... +10000: 90000080 adrp x0, 20000 <_GLOBAL_OFFSET_TABLE_> - +10004: 91002000 add x0, x0, #0x8 + +10004: 91004000 add x0, x0, #0x10 +10008: 94000016 bl 10060 <v1\+0x10060> +1000c: d503201f nop +10010: 90000080 adrp x0, 20000 <_GLOBAL_OFFSET_TABLE_> - +10014: f9400000 ldr x0, \[x0\] + +10014: f9400400 ldr x0, \[x0,#8\] +10018: d503201f nop +1001c: d503201f nop +10020: d53bd041 mrs x1, tpidr_el0 +10024: 8b000020 add x0, x1, x0 +10028: d53bd042 mrs x2, tpidr_el0 +1002c: 90000080 adrp x0, 20000 <_GLOBAL_OFFSET_TABLE_> - +10030: f9400000 ldr x0, \[x0\] + +10030: f9400400 ldr x0, \[x0,#8\] +10034: 8b000040 add x0, x2, x0 +10038: b9400000 ldr w0, \[x0\] +1003c: 0b000020 add w0, w1, w0 @@ -24,13 +24,13 @@ Disassembly of section .plt: 0000000000010040 <.plt>: +10040: a9bf7bf0 stp x16, x30, \[sp,#-16\]! +10044: 90000090 adrp x16, 20000 <_GLOBAL_OFFSET_TABLE_> - +10048: f9401611 ldr x17, \[x16,#40\] - +1004c: 9100a210 add x16, x16, #0x28 + +10048: f9401a11 ldr x17, \[x16,#48\] + +1004c: 9100c210 add x16, x16, #0x30 +10050: d61f0220 br x17 +10054: d503201f nop +10058: d503201f nop +1005c: d503201f nop +10060: 90000090 adrp x16, 20000 <_GLOBAL_OFFSET_TABLE_> - +10064: f9401a11 ldr x17, \[x16,#48\] - +10068: 9100c210 add x16, x16, #0x30 + +10064: f9401e11 ldr x17, \[x16,#56\] + +10068: 9100e210 add x16, x16, #0x38 +1006c: d61f0220 br x17 diff --git a/ld/testsuite/ld-aarch64/tls-relax-all.d b/ld/testsuite/ld-aarch64/tls-relax-all.d index f8485f1..b36b634 100644 --- a/ld/testsuite/ld-aarch64/tls-relax-all.d +++ b/ld/testsuite/ld-aarch64/tls-relax-all.d @@ -4,7 +4,7 @@ #... +10000: a9bf7bfd stp x29, x30, \[sp,#-16\]! +10004: 910003fd mov x29, sp - +10008: 90000080 adrp x0, 20000 <ie_var\+0x1fff0> + +10008: 90000080 adrp x0, 20000 <_GLOBAL_OFFSET_TABLE_> +1000c: f9400400 ldr x0, \[x0,#8\] +10010: d503201f nop +10014: d503201f nop @@ -19,7 +19,7 @@ +10038: 8b000040 add x0, x2, x0 +1003c: b9400000 ldr w0, \[x0\] +10040: 0b000021 add w1, w1, w0 - +10044: 90000080 adrp x0, 20000 <ie_var\+0x1fff0> + +10044: 90000080 adrp x0, 20000 <_GLOBAL_OFFSET_TABLE_> +10048: f9400800 ldr x0, \[x0,#16\] +1004c: d53bd041 mrs x1, tpidr_el0 +10050: 8b000020 add x0, x1, x0 diff --git a/ld/testsuite/ld-aarch64/tls-relax-gd-ie.d b/ld/testsuite/ld-aarch64/tls-relax-gd-ie.d index 2dc00ca..d3783ac 100644 --- a/ld/testsuite/ld-aarch64/tls-relax-gd-ie.d +++ b/ld/testsuite/ld-aarch64/tls-relax-gd-ie.d @@ -2,7 +2,7 @@ #ld: -T relocs.ld -e0 #objdump: -dr #... - +10000: 90000080 adrp x0, 20000 <var\+0x20000> + +10000: 90000080 adrp x0, 20000 <_GLOBAL_OFFSET_TABLE_> +10004: f9400400 ldr x0, \[x0,#8\] +10008: d53bd041 mrs x1, tpidr_el0 +1000c: 8b000020 add x0, x1, x0 diff --git a/ld/testsuite/ld-aarch64/tls-relax-gdesc-ie-2.d b/ld/testsuite/ld-aarch64/tls-relax-gdesc-ie-2.d index 23d9d1d..92002de 100644 --- a/ld/testsuite/ld-aarch64/tls-relax-gdesc-ie-2.d +++ b/ld/testsuite/ld-aarch64/tls-relax-gdesc-ie-2.d @@ -2,7 +2,7 @@ #ld: -T relocs.ld -e0 #objdump: -dr #... - +10000: 90000080 adrp x0, 20000 <var\+0x20000> + +10000: 90000080 adrp x0, 20000 <_GLOBAL_OFFSET_TABLE_> +10004: d503201f nop +10008: f9400400 ldr x0, \[x0,#8\] +1000c: d503201f nop diff --git a/ld/testsuite/ld-aarch64/tls-relax-gdesc-ie.d b/ld/testsuite/ld-aarch64/tls-relax-gdesc-ie.d index 3aec3ad..634a55a 100644 --- a/ld/testsuite/ld-aarch64/tls-relax-gdesc-ie.d +++ b/ld/testsuite/ld-aarch64/tls-relax-gdesc-ie.d @@ -2,7 +2,7 @@ #ld: -T relocs.ld -e0 #objdump: -dr #... - +10000: 90000080 adrp x0, 20000 <var\+0x20000> + +10000: 90000080 adrp x0, 20000 <_GLOBAL_OFFSET_TABLE_> +10004: f9400400 ldr x0, \[x0,#8\] +10008: d503201f nop +1000c: d503201f nop |