[RuntimeDyld] Replace a crufty old ARM RuntimeDyld test with a new one that uses
authorLang Hames <lhames@gmail.com>
Thu, 10 Jul 2014 23:29:11 +0000 (23:29 +0000)
committerLang Hames <lhames@gmail.com>
Thu, 10 Jul 2014 23:29:11 +0000 (23:29 +0000)
RuntimeDyldChecker.

This allows us to remove one of the six remaining object files in the LLVM
source tree.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@212780 91177308-0d34-0410-b5e6-96231b3b80d8

test/ExecutionEngine/RuntimeDyld/ARM/MachO_ARM_PIC_relocations.s [new file with mode: 0644]
test/ExecutionEngine/RuntimeDyld/ARM/lit.local.cfg [new file with mode: 0644]
test/ExecutionEngine/RuntimeDyld/Inputs/arm_secdiff_reloc.o [deleted file]
test/ExecutionEngine/RuntimeDyld/macho_relocations.test [deleted file]

diff --git a/test/ExecutionEngine/RuntimeDyld/ARM/MachO_ARM_PIC_relocations.s b/test/ExecutionEngine/RuntimeDyld/ARM/MachO_ARM_PIC_relocations.s
new file mode 100644 (file)
index 0000000..8604183
--- /dev/null
@@ -0,0 +1,27 @@
+# RUN: llvm-mc -triple=armv7s-apple-ios7.0.0 -relocation-model=pic -filetype=obj -o %t.o %s
+# RUN: llvm-rtdyld -triple=armv7s-apple-ios7.0.0 -verify -check=%s %t.o
+# RUN: rm %t.o
+
+       .syntax unified
+       .section        __TEXT,__text,regular,pure_instructions
+       .globl  bar
+       .align  2
+bar:
+# Check lower 16-bits of section difference relocation
+# rtdyld-check: decode_operand(insn1, 1) = (foo-(nextPC+8))[15:0]
+insn1:
+       movw    r0, :lower16:(foo-(nextPC+8))
+# Check upper 16-bits of section difference relocation
+# rtdyld-check: decode_operand(insn2, 2) = (foo-(nextPC+8))[31:16]
+insn2:
+       movt    r0, :upper16:(foo-(nextPC+8))
+nextPC:
+       add     r0, pc, r0
+       bx      lr
+
+       .globl  foo
+       .align  2
+foo:
+       bx      lr
+
+.subsections_via_symbols
diff --git a/test/ExecutionEngine/RuntimeDyld/ARM/lit.local.cfg b/test/ExecutionEngine/RuntimeDyld/ARM/lit.local.cfg
new file mode 100644 (file)
index 0000000..98c6700
--- /dev/null
@@ -0,0 +1,3 @@
+if not 'ARM' in config.root.targets:
+    config.unsupported = True
+
diff --git a/test/ExecutionEngine/RuntimeDyld/Inputs/arm_secdiff_reloc.o b/test/ExecutionEngine/RuntimeDyld/Inputs/arm_secdiff_reloc.o
deleted file mode 100644 (file)
index 5392266..0000000
Binary files a/test/ExecutionEngine/RuntimeDyld/Inputs/arm_secdiff_reloc.o and /dev/null differ
diff --git a/test/ExecutionEngine/RuntimeDyld/macho_relocations.test b/test/ExecutionEngine/RuntimeDyld/macho_relocations.test
deleted file mode 100644 (file)
index 92e4dd7..0000000
+++ /dev/null
@@ -1 +0,0 @@
-RUN: llvm-rtdyld -printline %p/Inputs/arm_secdiff_reloc.o