summaryrefslogtreecommitdiff
path: root/ld/testsuite/ld-aarch64/ifunc-21.d
diff options
context:
space:
mode:
Diffstat (limited to 'ld/testsuite/ld-aarch64/ifunc-21.d')
-rw-r--r--ld/testsuite/ld-aarch64/ifunc-21.d26
1 files changed, 26 insertions, 0 deletions
diff --git a/ld/testsuite/ld-aarch64/ifunc-21.d b/ld/testsuite/ld-aarch64/ifunc-21.d
new file mode 100644
index 0000000..9ea01e6
--- /dev/null
+++ b/ld/testsuite/ld-aarch64/ifunc-21.d
@@ -0,0 +1,26 @@
+#source: ifunc-21.s
+#ld: -shared -z nocombreloc
+#objdump: -d -s -j .got.plt -j .text
+#target: aarch64*-*-*
+
+# Ensure the .got.plt slot used is correct
+
+.*: file format elf64-(little|big)aarch64
+
+Contents of section .text:
+ [0-9a-f]+ .*
+Contents of section .got.plt:
+ [0-9a-f]+ 0+ 0+ 0+ 0+ .*
+ (103b8|10408) 0+ 0+ [0-9a-f]+ [0-9a-f]+ .*
+
+Disassembly of section .text:
+
+.* <ifunc>:
+ .*: d65f03c0 ret
+
+.* <bar>:
+ .*: 90000080 adrp x0, 10000 <.*>
+ .*: .* ldr x0, \[x0,#(960|1040)\]
+ .*: d65f03c0 ret
+
+#pass \ No newline at end of file