• Home
  • History
  • Annotate
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
1 @ RUN: llvm-mc -triple thumbv7s-apple-ios9.0 %s -filetype obj -o %t.o
2 @ RUN: llvm-readobj -r %t.o | FileCheck %s
3 
4         .thumb
5         movw r0, :lower16:_x
6         movt r0, :upper16:_x
7 
8         movw r0, :lower16:_x+4
9         movt r0, :upper16:_x+4
10 
11         movw r0, :lower16:_x+0x10000
12         movt r0, :upper16:_x+0x10000
13 
14         .arm
15         movw r0, :lower16:_x
16         movt r0, :upper16:_x
17 
18         movw r0, :lower16:_x+4
19         movt r0, :upper16:_x+4
20 
21         movw r0, :lower16:_x+0x10000
22         movt r0, :upper16:_x+0x10000
23 
24 @ Enter the bizarre world of MachO relocations. First, they're in reverse order
25 @ to the actual instructions
26 
27 @ First column on the second line is the "other half" of the addend, its partner
28 @ being in the instruction itself.
29 
30 @ Third column identifies ARM/Thumb & HI/LO.
31 
32 @ CHECK: 0x2C 0 1 1 ARM_RELOC_HALF 0 _x
33 @ CHECK: 0x0 0 1 0 ARM_RELOC_PAIR 0 -
34 
35 @ CHECK: 0x28 0 0 1 ARM_RELOC_HALF 0 _x
36 @ CHECK: 0x1 0 0 0 ARM_RELOC_PAIR 0 -
37 
38 @ CHECK: 0x24 0 1 1 ARM_RELOC_HALF 0 _x
39 @ CHECK: 0x4 0 1 0 ARM_RELOC_PAIR 0 -
40 
41 @ CHECK: 0x20 0 0 1 ARM_RELOC_HALF 0 _x
42 @ CHECK: 0x0 0 0 0 ARM_RELOC_PAIR 0 -
43 
44 @ CHECK: 0x1C 0 1 1 ARM_RELOC_HALF 0 _x
45 @ CHECK: 0x0 0 1 0 ARM_RELOC_PAIR 0 -
46 
47 @ CHECK: 0x18 0 0 1 ARM_RELOC_HALF 0 _x
48 @ CHECK: 0x0 0 0 0 ARM_RELOC_PAIR 0 -
49 
50 @ CHECK: 0x14 0 3 1 ARM_RELOC_HALF 0 _x
51 @ CHECK: 0x0 0 3 0 ARM_RELOC_PAIR 0 -
52 
53 @ CHECK: 0x10 0 2 1 ARM_RELOC_HALF 0 _x
54 @ CHECK: 0x1 0 2 0 ARM_RELOC_PAIR 0 -
55 
56 @ CHECK: 0xC 0 3 1 ARM_RELOC_HALF 0 _x
57 @ CHECK: 0x4 0 3 0 ARM_RELOC_PAIR 0 -
58 
59 @ CHECK: 0x8 0 2 1 ARM_RELOC_HALF 0 _x
60 @ CHECK: 0x0 0 2 0 ARM_RELOC_PAIR 0 -
61 
62 @ CHECK: 0x4 0 3 1 ARM_RELOC_HALF 0 _x
63 @ CHECK: 0x0 0 3 0 ARM_RELOC_PAIR 0 -
64 
65 @ CHECK: 0x0 0 2 1 ARM_RELOC_HALF 0 _x
66 @ CHECK: 0x0 0 2 0 ARM_RELOC_PAIR 0 -
67