aboutsummaryrefslogtreecommitdiff
path: root/test/ExecutionEngine/RuntimeDyld/AArch64/ELF_ARM64_BE-relocations.s
diff options
context:
space:
mode:
Diffstat (limited to 'test/ExecutionEngine/RuntimeDyld/AArch64/ELF_ARM64_BE-relocations.s')
-rw-r--r--test/ExecutionEngine/RuntimeDyld/AArch64/ELF_ARM64_BE-relocations.s11
1 files changed, 10 insertions, 1 deletions
diff --git a/test/ExecutionEngine/RuntimeDyld/AArch64/ELF_ARM64_BE-relocations.s b/test/ExecutionEngine/RuntimeDyld/AArch64/ELF_ARM64_BE-relocations.s
index 3ba95e4d394b..a9ec00939504 100644
--- a/test/ExecutionEngine/RuntimeDyld/AArch64/ELF_ARM64_BE-relocations.s
+++ b/test/ExecutionEngine/RuntimeDyld/AArch64/ELF_ARM64_BE-relocations.s
@@ -1,6 +1,11 @@
# RUN: llvm-mc -triple=aarch64_be-none-linux-gnu -filetype=obj -o %T/be-reloc.o %s
# RUN: llvm-rtdyld -triple=aarch64_be-none-linux-gnu -verify -dummy-extern f=0x0123456789abcdef -check=%s %T/be-reloc.o
+ .globl Q
+ .section .dummy, "ax"
+Q:
+ nop
+
.text
.globl g
.p2align 2
@@ -23,8 +28,11 @@ g:
.globl k
.p2align 3
k:
- .xword f
+ .xword f
.size k, 8
+r:
+# R_AARCH64_PREL32: use Q instead of f to fit in 32 bits.
+ .word Q - .
# LE instructions read as BE
# rtdyld-check: *{4}(g) = 0x6024e0d2
@@ -32,3 +40,4 @@ k:
# rtdyld-check: *{4}(g + 8) = 0x6035b1f2
# rtdyld-check: *{4}(g + 12) = 0xe0bd99f2
# rtdyld-check: *{8}k = f
+# rtdyld-check: *{4}r = (Q - r)[31:0]