xref: /llvm-project/llvm/test/MC/ARM/pcrel-ldrd-same-section.s (revision d88c1f94894ff568d1f5fa2dfc9219a9361d9932)
1@ RUN: llvm-mc -filetype=obj -o %t %s -triple=armv7
2@ RUN: llvm-readelf -r %t | FileCheck %s --check-prefix=RELOC
3@ RUN: llvm-objdump -d --triple=armv7 %t | FileCheck %s --check-prefix=ARM_OFFSET
4
5@ RUN: llvm-mc -filetype=obj -o %t %s -triple=armebv7
6@ RUN: llvm-readelf -r %t | FileCheck %s --check-prefix=RELOC
7@ RUN: llvm-objdump -d --triple=armebv7  %t | FileCheck %s --check-prefix=ARM_OFFSET
8
9@ RUN: llvm-mc -filetype=obj -o %t %s -triple=thumbv7
10@ RUN: llvm-readelf -r %t | FileCheck %s --check-prefix=RELOC
11@ RUN: llvm-objdump -d --triple=thumbv7  %t | FileCheck %s --check-prefix=THUMB_OFFSET
12
13@ RUN: llvm-mc -filetype=obj -o %t %s -triple=thumbebv7
14@ RUN: llvm-readelf -r %t | FileCheck %s --check-prefix=RELOC
15@ RUN: llvm-objdump -d --triple=thumbebv7 %t | FileCheck %s --check-prefix=THUMB_OFFSET
16
17baz:
18    .word 0x11223344, 0x55667788
19label:
20
21    ldrd r0, r1, foo      @ arm_pcrel_10_unscaled / t2_pcrel_10
22    ldrd r0, r1, bar-8    @ arm_pcrel_10_unscaled / t2_pcrel_10
23
24    ldrd r0, r1, baz      @ arm_pcrel_10_unscaled / t2_pcrel_10
25    ldrd r0, r1, label-8  @ arm_pcrel_10_unscaled / t2_pcrel_10
26foo:
27    .word 0x11223344, 0x55667788
28bar:
29
30@ RELOC: There are no relocations in this file.
31
32@ ARM_OFFSET:   ldrd	r0, r1, [pc, #8]        @ 0x18 <foo>
33@ ARM_OFFSET:   ldrd	r0, r1, [pc, #4]        @ 0x18 <foo>
34@ ARM_OFFSET:   ldrd	r0, r1, [pc, #-24]      @ 0x0 <baz>
35@ ARM_OFFSET:   ldrd	r0, r1, [pc, #-28]      @ 0x0 <baz>
36@ THUMB_OFFSET: ldrd	r0, r1, [pc, #12]       @ 0x18 <foo>
37@ THUMB_OFFSET: ldrd	r0, r1, [pc, #8]        @ 0x18 <foo>
38@ THUMB_OFFSET: ldrd	r0, r1, [pc, #-20]      @ 0x0 <baz>
39@ THUMB_OFFSET: ldrd	r0, r1, [pc, #-24]      @ 0x0 <baz>
40