aboutsummaryrefslogtreecommitdiffstats
path: root/test/MC/ARM/arm-elf-relocations.s
diff options
context:
space:
mode:
Diffstat (limited to 'test/MC/ARM/arm-elf-relocations.s')
-rw-r--r--test/MC/ARM/arm-elf-relocations.s37
1 files changed, 37 insertions, 0 deletions
diff --git a/test/MC/ARM/arm-elf-relocations.s b/test/MC/ARM/arm-elf-relocations.s
new file mode 100644
index 0000000..4059591
--- /dev/null
+++ b/test/MC/ARM/arm-elf-relocations.s
@@ -0,0 +1,37 @@
+@ RUN: llvm-mc -triple armv7-eabi -filetype obj -o - %s | llvm-readobj -r - \
+@ RUN: | FileCheck %s
+@ RUN: llvm-mc -triple thumbv7-eabi -filetype obj -o - %s | llvm-readobj -r - \
+@ RUN: | FileCheck %s
+
+ .syntax unified
+
+ .section .text.r_arm_abs8
+
+ .byte abs8_0 -128
+ .byte abs8_1 +255
+
+@ CHECK: Section {{.*}} .rel.text.r_arm_abs8 {
+@ CHECK: 0x0 R_ARM_ABS8 abs8_0 0x0
+@ CHECK: 0x1 R_ARM_ABS8 abs8_1 0x0
+@ CHECK: }
+
+ .section .text.r_arm_abs16
+
+ .short abs16_0 -32768
+ .short abs16_1 +65535
+
+@ CHECK: Section {{.*}} .rel.text.r_arm_abs16 {
+@ CHECK: 0x0 R_ARM_ABS16 abs16_0 0x0
+@ CHECK: 0x2 R_ARM_ABS16 abs16_1 0x0
+@ CHECK: }
+
+ .section .text.r_arm_sbrel32
+
+ .word target(sbrel)
+ .word target(SBREL)
+
+@ CHECK: Section {{.*}} .rel.text.r_arm_sbrel32 {
+@ CHECK: 0x0 R_ARM_SBREL32 target 0x0
+@ CHECK: 0x4 R_ARM_SBREL32 target 0x0
+@ CHECK: }
+