[AVX-512] Make spacing between comma and {sae} operand consistent in asm strings.
[oota-llvm.git] / test / MC / MachO / reloc.s
1 // RUN: llvm-mc -triple i386-apple-darwin9 %s -filetype=obj -o - | llvm-readobj -r -expand-relocs | FileCheck %s
2
3         .data
4         .long undef
5         .long (undef + 4)
6
7         .globl local_a_ext
8 local_a_ext:
9         .long local_a_ext
10
11 local_a:
12         .long 0
13 local_a_elt:
14         .long 0
15 local_b:
16         .long local_b - local_c + 245
17         .long 0
18 local_c:
19         .long 0
20
21
22         .long local_a_elt + 1
23         .long local_a_elt + 10
24         .short local_a_elt + 20
25         .byte local_a_elt + 89
26
27         .const
28
29         .long
30 bar:
31         .long local_a_elt - bar + 33
32
33 L0:
34         .long L0
35         .long L1
36
37         .text
38 _f0:
39 L1:
40         jmp     0xbabecafe
41         jmp L0
42         jmp L1
43         ret
44
45         .objc_class_name_A=0
46         .globl .objc_class_name_A
47
48         .text
49         .globl _f1
50         .weak_definition _f1
51 _f1:
52         .data
53         .long _f1
54         .long _f1 + 4
55
56 // CHECK:     Relocations [
57 // CHECK-NEXT:  Section __text {
58 // CHECK-NEXT:    Relocation {
59 // CHECK-NEXT:      Offset: 0x6
60 // CHECK-NEXT:      PCRel: 1
61 // CHECK-NEXT:      Length: 2
62 // CHECK-NEXT:      Type: GENERIC_RELOC_VANILLA (0)
63 // CHECK-NEXT:      Section: __const
64 // CHECK-NEXT:    }
65 // CHECK-NEXT:    Relocation {
66 // CHECK-NEXT:      Offset: 0x1
67 // CHECK-NEXT:      PCRel: 1
68 // CHECK-NEXT:      Length: 2
69 // CHECK-NEXT:      Type: GENERIC_RELOC_VANILLA (0)
70 // CHECK-NEXT:      Section: - (0)
71 // CHECK-NEXT:    }
72 // CHECK-NEXT:  }
73 // CHECK-NEXT:  Section __data {
74 // CHECK-NEXT:    Relocation {
75 // CHECK-NEXT:      Offset: 0x2F
76 // CHECK-NEXT:      PCRel: 0
77 // CHECK-NEXT:      Length: 2
78 // CHECK-NEXT:      Type: GENERIC_RELOC_VANILLA (0)
79 // CHECK-NEXT:      Symbol: _f1
80 // CHECK-NEXT:    }
81 // CHECK-NEXT:    Relocation {
82 // CHECK-NEXT:      Offset: 0x2B
83 // CHECK-NEXT:      PCRel: 0
84 // CHECK-NEXT:      Length: 2
85 // CHECK-NEXT:      Type: GENERIC_RELOC_VANILLA (0)
86 // CHECK-NEXT:      Symbol: _f1
87 // CHECK-NEXT:    }
88 // CHECK-NEXT:    Relocation {
89 // CHECK-NEXT:      Offset: 0x2A
90 // CHECK-NEXT:      PCRel: 0
91 // CHECK-NEXT:      Length: 0
92 // CHECK-NEXT:      Type: GENERIC_RELOC_VANILLA (0)
93 // CHECK-NEXT:      Value: 0x1D
94 // CHECK-NEXT:    }
95 // CHECK-NEXT:    Relocation {
96 // CHECK-NEXT:      Offset: 0x28
97 // CHECK-NEXT:      PCRel: 0
98 // CHECK-NEXT:      Length: 1
99 // CHECK-NEXT:      Type: GENERIC_RELOC_VANILLA (0)
100 // CHECK-NEXT:      Value: 0x1D
101 // CHECK-NEXT:    }
102 // CHECK-NEXT:    Relocation {
103 // CHECK-NEXT:      Offset: 0x24
104 // CHECK-NEXT:      PCRel: 0
105 // CHECK-NEXT:      Length: 2
106 // CHECK-NEXT:      Type: GENERIC_RELOC_VANILLA (0)
107 // CHECK-NEXT:      Value: 0x1D
108 // CHECK-NEXT:    }
109 // CHECK-NEXT:    Relocation {
110 // CHECK-NEXT:      Offset: 0x20
111 // CHECK-NEXT:      PCRel: 0
112 // CHECK-NEXT:      Length: 2
113 // CHECK-NEXT:      Type: GENERIC_RELOC_VANILLA (0)
114 // CHECK-NEXT:      Value: 0x1D
115 // CHECK-NEXT:    }
116 // CHECK-NEXT:    Relocation {
117 // CHECK-NEXT:      Offset: 0x14
118 // CHECK-NEXT:      PCRel: 0
119 // CHECK-NEXT:      Length: 2
120 // CHECK-NEXT:      Type: GENERIC_RELOC_LOCAL_SECTDIFF (4)
121 // CHECK-NEXT:      Value: 0x21
122 // CHECK-NEXT:    }
123 // CHECK-NEXT:    Relocation {
124 // CHECK-NEXT:      Offset: 0x0
125 // CHECK-NEXT:      PCRel: 0
126 // CHECK-NEXT:      Length: 2
127 // CHECK-NEXT:      Type: GENERIC_RELOC_PAIR (1)
128 // CHECK-NEXT:      Value: 0x29
129 // CHECK-NEXT:    }
130 // CHECK-NEXT:    Relocation {
131 // CHECK-NEXT:      Offset: 0x8
132 // CHECK-NEXT:      PCRel: 0
133 // CHECK-NEXT:      Length: 2
134 // CHECK-NEXT:      Type: GENERIC_RELOC_VANILLA (0)
135 // CHECK-NEXT:      Section: __data
136 // CHECK-NEXT:    }
137 // CHECK-NEXT:    Relocation {
138 // CHECK-NEXT:      Offset: 0x4
139 // CHECK-NEXT:      PCRel: 0
140 // CHECK-NEXT:      Length: 2
141 // CHECK-NEXT:      Type: GENERIC_RELOC_VANILLA (0)
142 // CHECK-NEXT:      Symbol: undef
143 // CHECK-NEXT:    }
144 // CHECK-NEXT:    Relocation {
145 // CHECK-NEXT:      Offset: 0x0
146 // CHECK-NEXT:      PCRel: 0
147 // CHECK-NEXT:      Length: 2
148 // CHECK-NEXT:      Type: GENERIC_RELOC_VANILLA (0)
149 // CHECK-NEXT:      Symbol: undef
150 // CHECK-NEXT:    }
151 // CHECK-NEXT:  }
152 // CHECK-NEXT:  Section __const {
153 // CHECK-NEXT:    Relocation {
154 // CHECK-NEXT:      Offset: 0x8
155 // CHECK-NEXT:      PCRel: 0
156 // CHECK-NEXT:      Length: 2
157 // CHECK-NEXT:      Type: GENERIC_RELOC_VANILLA (0)
158 // CHECK-NEXT:      Section: __text
159 // CHECK-NEXT:    }
160 // CHECK-NEXT:    Relocation {
161 // CHECK-NEXT:      Offset: 0x4
162 // CHECK-NEXT:      PCRel: 0
163 // CHECK-NEXT:      Length: 2
164 // CHECK-NEXT:      Type: GENERIC_RELOC_VANILLA (0)
165 // CHECK-NEXT:      Section: __const
166 // CHECK-NEXT:    }
167 // CHECK-NEXT:    Relocation {
168 // CHECK-NEXT:      Offset: 0x0
169 // CHECK-NEXT:      PCRel: 0
170 // CHECK-NEXT:      Length: 2
171 // CHECK-NEXT:      Type: GENERIC_RELOC_LOCAL_SECTDIFF (4)
172 // CHECK-NEXT:      Value: 0x1D
173 // CHECK-NEXT:    }
174 // CHECK-NEXT:    Relocation {
175 // CHECK-NEXT:      Offset: 0x0
176 // CHECK-NEXT:      PCRel: 0
177 // CHECK-NEXT:      Length: 2
178 // CHECK-NEXT:      Type: GENERIC_RELOC_PAIR (1)
179 // CHECK-NEXT:      Value: 0x40
180 // CHECK-NEXT:    }
181 // CHECK-NEXT:  }
182 // CHECK-NEXT:]