diff options
Diffstat (limited to 'test/ELF/arm-data-relocs.s')
-rw-r--r-- | test/ELF/arm-data-relocs.s | 20 |
1 files changed, 20 insertions, 0 deletions
diff --git a/test/ELF/arm-data-relocs.s b/test/ELF/arm-data-relocs.s new file mode 100644 index 000000000000..ed237850c4c1 --- /dev/null +++ b/test/ELF/arm-data-relocs.s @@ -0,0 +1,20 @@ +// RUN: llvm-mc -filetype=obj -triple=armv7a-none-linux-gnueabi %s -o %t +// RUN: llvm-mc -filetype=obj -triple=armv7a-none-linux-gnueabi %S/Inputs/abs256.s -o %t256.o +// RUN: ld.lld %t %t256.o -o %t2 +// RUN: llvm-objdump -d %t2 | FileCheck %s +// REQUIRES: arm + .syntax unified + .globl _start +_start: + .section .R_ARM_ABS32POS, "ax",%progbits + .word foo + 0x24 + +// S = 0x100, A = 0x24 +// S + A = 0x124 +// CHECK: Disassembly of section .R_ARM_ABS32POS: +// CHECK: 11000: 24 01 00 00 + .section .R_ARM_ABS32NEG, "ax",%progbits + .word foo - 0x24 +// S = 0x100, A = -0x24 +// CHECK: Disassembly of section .R_ARM_ABS32NEG: +// CHECK: 11004: dc 00 00 00 |