summaryrefslogtreecommitdiff
path: root/test/old-elf/x86_64-kinds.test
diff options
context:
space:
mode:
Diffstat (limited to 'test/old-elf/x86_64-kinds.test')
-rw-r--r--test/old-elf/x86_64-kinds.test23
1 files changed, 23 insertions, 0 deletions
diff --git a/test/old-elf/x86_64-kinds.test b/test/old-elf/x86_64-kinds.test
new file mode 100644
index 000000000000..111cea53bf0c
--- /dev/null
+++ b/test/old-elf/x86_64-kinds.test
@@ -0,0 +1,23 @@
+REQUIRES: x86
+
+RUN: lld -flavor old-gnu -target x86_64-linux -o %t1 %p/Inputs/relocs.x86-64 \
+RUN: -e _start -static
+RUN: llvm-objdump -d %t1 | FileCheck %s -check-prefix=RELOCS
+
+RUN: lld -flavor old-gnu -target x86_64-linux --output-filetype=yaml -e _start -static \
+RUN: %p/Inputs/relocs.x86-64 | FileCheck %s -check-prefix=X86_64
+
+RELOCS: ELF64-x86-64
+
+// R_X86_64_32S
+RELOCS: c7 04 25
+RELOCS-NOT: 00 00 00 00
+RELOCS: 05 00 00 00 movl
+
+// R_X86_64_PC32
+RELOCS: e8
+RELOCS-NOT: 00 00 00 00
+RELOCS: callq
+
+X86_64: R_X86_64_32S
+X86_64: R_X86_64_PC32