49 lines · plain
1@ RUN: llvm-mc -filetype=obj -triple=armv7 %s -o %t2@ RUN: llvm-readelf -r %t | FileCheck %s --check-prefix=ARM3@ RUN: llvm-objdump -d --triple=armv7 %t | FileCheck %s --check-prefix=ARM_ADDEND4@ RUN: llvm-mc -filetype=obj --triple=armebv7-unknown-unknown %s -o %t5@ RUN: llvm-readelf -r %t | FileCheck %s --check-prefix=ARM6@ RUN: llvm-objdump -d --triple=armebv7-unknown-unknown %t | FileCheck %s --check-prefix=ARM_ADDEND7 8@ ARM: R_ARM_LDRS_PC_G09@ ARM: R_ARM_LDRS_PC_G010@ ARM: R_ARM_LDRS_PC_G011@ ARM: R_ARM_LDRS_PC_G012@ ARM: R_ARM_LDRS_PC_G013@ ARM: R_ARM_LDRS_PC_G014@ ARM: R_ARM_LDRS_PC_G015 16// The value format is decimal in these specific cases, but it's hex for other17// ldr instructions. These checks are valid for both formats.18 19@ ARM_ADDEND: r0, [pc, #-{{(0x)?}}8]20@ ARM_ADDEND: r0, [pc, #-{{(0x)?}}8]21@ ARM_ADDEND: r0, [pc, #-{{(0x)?}}8]22@ ARM_ADDEND: r0, [pc, #-{{16|0x10}}]23@ ARM_ADDEND: r0, [pc, #-{{16|0x10}}]24@ ARM_ADDEND: r0, [pc]25@ ARM_ADDEND: r0, r1, [pc]26 27 .arm28 .section .text.bar, "ax"29 .balign 430 .global bar31 .type bar, %function32bar:33 ldrh r0, foo34 ldrsb r0, foo35 ldrsh r0, foo36 ldrh r0, just_after-837 ldrsb r0, just_after-838 ldrsh r0, foo+839 ldrd r0,r1, foo+840 bx lr41 42 .section .data.foo, "a", %progbits43 .balign 444 .global foo45foo:46 .word 0x11223344, 0x5566778847just_after:48 .word 0x9900aabb, 0xccddeeff49