summaryrefslogtreecommitdiff
path: root/ld/testsuite/ld-aarch64/tls-relax-gdesc-ie-2.s
diff options
context:
space:
mode:
Diffstat (limited to 'ld/testsuite/ld-aarch64/tls-relax-gdesc-ie-2.s')
-rw-r--r--ld/testsuite/ld-aarch64/tls-relax-gdesc-ie-2.s24
1 files changed, 24 insertions, 0 deletions
diff --git a/ld/testsuite/ld-aarch64/tls-relax-gdesc-ie-2.s b/ld/testsuite/ld-aarch64/tls-relax-gdesc-ie-2.s
new file mode 100644
index 0000000..790b6c6
--- /dev/null
+++ b/ld/testsuite/ld-aarch64/tls-relax-gdesc-ie-2.s
@@ -0,0 +1,24 @@
+// Test TLS Desc to TLS IE relaxation when instructions are not consecutive.
+
+ .global var
+ .section .tdata
+var:
+ .word 2
+ .text
+ adrp x0, :tlsdesc:var
+ nop
+ ldr x1, [x0, #:tlsdesc_lo12:var]
+ nop
+ nop
+ nop
+ add x0, x0, :tlsdesc_lo12:var
+ nop
+ nop
+ .tlsdesccall var
+ blr x1
+ nop
+ mrs x1, tpidr_el0
+ add x0, x1, x0
+ ldr w0, [x0]
+ .global var
+ .section .tdata