[PowerPC] Add predicted forms of branches
[oota-llvm.git] / test / MC / PowerPC / ppc64-encoding-ext.s
1
2 # RUN: llvm-mc -triple powerpc64-unknown-unknown --show-encoding %s | FileCheck %s
3
4 # FIXME: Condition register bit symbols
5
6 # Branch mnemonics
7
8 # CHECK: blr                             # encoding: [0x4e,0x80,0x00,0x20]
9          blr
10 # CHECK: bctr                            # encoding: [0x4e,0x80,0x04,0x20]
11          bctr
12 # CHECK: blrl                            # encoding: [0x4e,0x80,0x00,0x21]
13          blrl
14 # CHECK: bctrl                           # encoding: [0x4e,0x80,0x04,0x21]
15          bctrl
16
17 # CHECK: bc 12, 2, target                # encoding: [0x41,0x82,A,0bAAAAAA00]
18 # CHECK-NEXT:                            #   fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14
19          bt 2, target
20 # CHECK: bca 12, 2, target               # encoding: [0x41,0x82,A,0bAAAAAA10]
21 # CHECK-NEXT:                            #   fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14abs
22          bta 2, target
23 # CHECK: bclr 12, 2, 0                   # encoding: [0x4d,0x82,0x00,0x20]
24          btlr 2
25 # CHECK: bcctr 12, 2, 0                  # encoding: [0x4d,0x82,0x04,0x20]
26          btctr 2
27 # CHECK: bcl 12, 2, target               # encoding: [0x41,0x82,A,0bAAAAAA01]
28 # CHECK-NEXT:                            #   fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14
29          btl 2, target
30 # CHECK: bcla 12, 2, target              # encoding: [0x41,0x82,A,0bAAAAAA11]
31 # CHECK-NEXT:                            #   fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14abs
32          btla 2, target
33 # CHECK: bclrl 12, 2, 0                  # encoding: [0x4d,0x82,0x00,0x21]
34          btlrl 2
35 # CHECK: bcctrl 12, 2, 0                 # encoding: [0x4d,0x82,0x04,0x21]
36          btctrl 2
37
38 # CHECK: bc 15, 2, target                # encoding: [0x41,0xe2,A,0bAAAAAA00]
39 # CHECK-NEXT:                            #   fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14
40          bt+ 2, target
41 # CHECK: bca 15, 2, target               # encoding: [0x41,0xe2,A,0bAAAAAA10]
42 # CHECK-NEXT:                            #   fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14abs
43          bta+ 2, target
44 # CHECK: bclr 15, 2, 0                   # encoding: [0x4d,0xe2,0x00,0x20]
45          btlr+ 2
46 # CHECK: bcctr 15, 2, 0                  # encoding: [0x4d,0xe2,0x04,0x20]
47          btctr+ 2
48 # CHECK: bcl 15, 2, target               # encoding: [0x41,0xe2,A,0bAAAAAA01]
49 # CHECK-NEXT:                            #   fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14
50          btl+ 2, target
51 # CHECK: bcla 15, 2, target              # encoding: [0x41,0xe2,A,0bAAAAAA11]
52 # CHECK-NEXT:                            #   fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14abs
53          btla+ 2, target
54 # CHECK: bclrl 15, 2, 0                  # encoding: [0x4d,0xe2,0x00,0x21]
55          btlrl+ 2
56 # CHECK: bcctrl 15, 2, 0                 # encoding: [0x4d,0xe2,0x04,0x21]
57          btctrl+ 2
58
59 # CHECK: bc 14, 2, target                # encoding: [0x41,0xc2,A,0bAAAAAA00]
60 # CHECK-NEXT:                            #   fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14
61          bt- 2, target
62 # CHECK: bca 14, 2, target               # encoding: [0x41,0xc2,A,0bAAAAAA10]
63 # CHECK-NEXT:                            #   fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14abs
64          bta- 2, target
65 # CHECK: bclr 14, 2, 0                   # encoding: [0x4d,0xc2,0x00,0x20]
66          btlr- 2
67 # CHECK: bcctr 14, 2, 0                  # encoding: [0x4d,0xc2,0x04,0x20]
68          btctr- 2
69 # CHECK: bcl 14, 2, target               # encoding: [0x41,0xc2,A,0bAAAAAA01]
70 # CHECK-NEXT:                            #   fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14
71          btl- 2, target
72 # CHECK: bcla 14, 2, target              # encoding: [0x41,0xc2,A,0bAAAAAA11]
73 # CHECK-NEXT:                            #   fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14abs
74          btla- 2, target
75 # CHECK: bclrl 14, 2, 0                  # encoding: [0x4d,0xc2,0x00,0x21]
76          btlrl- 2
77 # CHECK: bcctrl 14, 2, 0                 # encoding: [0x4d,0xc2,0x04,0x21]
78          btctrl- 2
79
80 # CHECK: bc 4, 2, target                 # encoding: [0x40,0x82,A,0bAAAAAA00]
81 # CHECK-NEXT:                            #   fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14
82          bf 2, target
83 # CHECK: bca 4, 2, target                # encoding: [0x40,0x82,A,0bAAAAAA10]
84 # CHECK-NEXT:                            #   fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14abs
85          bfa 2, target
86 # CHECK: bclr 4, 2, 0                    # encoding: [0x4c,0x82,0x00,0x20]
87          bflr 2
88 # CHECK: bcctr 4, 2, 0                   # encoding: [0x4c,0x82,0x04,0x20]
89          bfctr 2
90 # CHECK: bcl 4, 2, target                # encoding: [0x40,0x82,A,0bAAAAAA01]
91 # CHECK-NEXT:                            #   fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14
92          bfl 2, target
93 # CHECK: bcla 4, 2, target               # encoding: [0x40,0x82,A,0bAAAAAA11]
94 # CHECK-NEXT:                            #   fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14abs
95          bfla 2, target
96 # CHECK: bclrl 4, 2, 0                   # encoding: [0x4c,0x82,0x00,0x21]
97          bflrl 2
98 # CHECK: bcctrl 4, 2, 0                  # encoding: [0x4c,0x82,0x04,0x21]
99          bfctrl 2
100
101 # CHECK: bc 7, 2, target                 # encoding: [0x40,0xe2,A,0bAAAAAA00]
102 # CHECK-NEXT:                            #   fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14
103          bf+ 2, target
104 # CHECK: bca 7, 2, target                # encoding: [0x40,0xe2,A,0bAAAAAA10]
105 # CHECK-NEXT:                            #   fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14abs
106          bfa+ 2, target
107 # CHECK: bclr 7, 2, 0                    # encoding: [0x4c,0xe2,0x00,0x20]
108          bflr+ 2
109 # CHECK: bcctr 7, 2, 0                   # encoding: [0x4c,0xe2,0x04,0x20]
110          bfctr+ 2
111 # CHECK: bcl 7, 2, target                # encoding: [0x40,0xe2,A,0bAAAAAA01]
112 # CHECK-NEXT:                            #   fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14
113          bfl+ 2, target
114 # CHECK: bcla 7, 2, target               # encoding: [0x40,0xe2,A,0bAAAAAA11]
115 # CHECK-NEXT:                            #   fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14abs
116          bfla+ 2, target
117 # CHECK: bclrl 7, 2, 0                   # encoding: [0x4c,0xe2,0x00,0x21]
118          bflrl+ 2
119 # CHECK: bcctrl 7, 2, 0                  # encoding: [0x4c,0xe2,0x04,0x21]
120          bfctrl+ 2
121
122 # CHECK: bc 6, 2, target                 # encoding: [0x40,0xc2,A,0bAAAAAA00]
123 # CHECK-NEXT:                            #   fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14
124          bf- 2, target
125 # CHECK: bca 6, 2, target                # encoding: [0x40,0xc2,A,0bAAAAAA10]
126 # CHECK-NEXT:                            #   fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14abs
127          bfa- 2, target
128 # CHECK: bclr 6, 2, 0                    # encoding: [0x4c,0xc2,0x00,0x20]
129          bflr- 2
130 # CHECK: bcctr 6, 2, 0                   # encoding: [0x4c,0xc2,0x04,0x20]
131          bfctr- 2
132 # CHECK: bcl 6, 2, target                # encoding: [0x40,0xc2,A,0bAAAAAA01]
133 # CHECK-NEXT:                            #   fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14
134          bfl- 2, target
135 # CHECK: bcla 6, 2, target               # encoding: [0x40,0xc2,A,0bAAAAAA11]
136 # CHECK-NEXT:                            #   fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14abs
137          bfla- 2, target
138 # CHECK: bclrl 6, 2, 0                   # encoding: [0x4c,0xc2,0x00,0x21]
139          bflrl- 2
140 # CHECK: bcctrl 6, 2, 0                  # encoding: [0x4c,0xc2,0x04,0x21]
141          bfctrl- 2
142
143 # CHECK: bdnz target                     # encoding: [0x42,0x00,A,0bAAAAAA00]
144 # CHECK-NEXT:                            #   fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14
145          bdnz target
146 # CHECK: bdnza target                    # encoding: [0x42,0x00,A,0bAAAAAA10]
147 # CHECK-NEXT:                            #   fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14abs
148          bdnza target
149 # CHECK: bdnzlr                          # encoding: [0x4e,0x00,0x00,0x20]
150          bdnzlr
151 # CHECK: bdnzl target                    # encoding: [0x42,0x00,A,0bAAAAAA01]
152 # CHECK-NEXT:                            #   fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14
153          bdnzl target
154 # CHECK: bdnzla target                   # encoding: [0x42,0x00,A,0bAAAAAA11]
155 # CHECK-NEXT:                            #   fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14abs
156          bdnzla target
157 # CHECK: bdnzlrl                         # encoding: [0x4e,0x00,0x00,0x21]
158          bdnzlrl
159
160 # CHECK: bdnz+ target                    # encoding: [0x43,0x20,A,0bAAAAAA00]
161 # CHECK-NEXT:                            #   fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14
162          bdnz+ target
163 # CHECK: bdnza+ target                   # encoding: [0x43,0x20,A,0bAAAAAA10]
164 # CHECK-NEXT:                            #   fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14abs
165          bdnza+ target
166 # CHECK: bdnzlr+                         # encoding: [0x4f,0x20,0x00,0x20]
167          bdnzlr+
168 # CHECK: bdnzl+ target                   # encoding: [0x43,0x20,A,0bAAAAAA01]
169 # CHECK-NEXT:                            #   fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14
170          bdnzl+ target
171 # CHECK: bdnzla+ target                  # encoding: [0x43,0x20,A,0bAAAAAA11]
172 # CHECK-NEXT:                            #   fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14abs
173          bdnzla+ target
174 # CHECK: bdnzlrl+                        # encoding: [0x4f,0x20,0x00,0x21]
175          bdnzlrl+
176
177 # CHECK: bdnz- target                    # encoding: [0x43,0x00,A,0bAAAAAA00]
178 # CHECK-NEXT:                            #   fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14
179          bdnz- target
180 # CHECK: bdnza- target                   # encoding: [0x43,0x00,A,0bAAAAAA10]
181 # CHECK-NEXT:                            #   fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14abs
182          bdnza- target
183 # CHECK: bdnzlr-                         # encoding: [0x4f,0x00,0x00,0x20]
184          bdnzlr-
185 # CHECK: bdnzl- target                   # encoding: [0x43,0x00,A,0bAAAAAA01]
186 # CHECK-NEXT:                            #   fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14
187          bdnzl- target
188 # CHECK: bdnzla- target                  # encoding: [0x43,0x00,A,0bAAAAAA11]
189 # CHECK-NEXT:                            #   fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14abs
190          bdnzla- target
191 # CHECK: bdnzlrl-                        # encoding: [0x4f,0x00,0x00,0x21]
192          bdnzlrl-
193
194 # CHECK: bc 8, 2, target                 # encoding: [0x41,0x02,A,0bAAAAAA00]
195 # CHECK-NEXT:                            #   fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14
196          bdnzt 2, target
197 # CHECK: bca 8, 2, target                # encoding: [0x41,0x02,A,0bAAAAAA10]
198 # CHECK-NEXT:                            #   fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14abs
199          bdnzta 2, target
200 # CHECK: bclr 8, 2, 0                    # encoding: [0x4d,0x02,0x00,0x20]
201          bdnztlr 2
202 # CHECK: bcl 8, 2, target                # encoding: [0x41,0x02,A,0bAAAAAA01]
203 # CHECK-NEXT:                            #   fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14
204          bdnztl 2, target
205 # CHECK: bcla 8, 2, target               # encoding: [0x41,0x02,A,0bAAAAAA11]
206 # CHECK-NEXT:                            #   fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14abs
207          bdnztla 2, target
208 # CHECK: bclrl 8, 2, 0                   # encoding: [0x4d,0x02,0x00,0x21]
209          bdnztlrl 2
210
211 # CHECK: bc 0, 2, target                 # encoding: [0x40,0x02,A,0bAAAAAA00]
212 # CHECK-NEXT:                            #   fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14
213          bdnzf 2, target
214 # CHECK: bca 0, 2, target                # encoding: [0x40,0x02,A,0bAAAAAA10]
215 # CHECK-NEXT:                            #   fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14abs
216          bdnzfa 2, target
217 # CHECK: bclr 0, 2, 0                    # encoding: [0x4c,0x02,0x00,0x20]
218          bdnzflr 2
219 # CHECK: bcl 0, 2, target                # encoding: [0x40,0x02,A,0bAAAAAA01]
220 # CHECK-NEXT:                            #   fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14
221          bdnzfl 2, target
222 # CHECK: bcla 0, 2, target               # encoding: [0x40,0x02,A,0bAAAAAA11]
223 # CHECK-NEXT:                            #   fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14abs
224          bdnzfla 2, target
225 # CHECK: bclrl 0, 2, 0                   # encoding: [0x4c,0x02,0x00,0x21]
226          bdnzflrl 2
227
228 # CHECK: bdz target                      # encoding: [0x42,0x40,A,0bAAAAAA00]
229 # CHECK-NEXT:                            #   fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14
230          bdz target
231 # CHECK: bdza target                     # encoding: [0x42,0x40,A,0bAAAAAA10]
232 # CHECK-NEXT:                            #   fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14abs
233          bdza target
234 # CHECK: bdzlr                           # encoding: [0x4e,0x40,0x00,0x20]
235          bdzlr
236 # CHECK: bdzl target                     # encoding: [0x42,0x40,A,0bAAAAAA01]
237 # CHECK-NEXT:                            #   fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14
238          bdzl target
239 # CHECK: bdzla target                    # encoding: [0x42,0x40,A,0bAAAAAA11]
240 # CHECK-NEXT:                            #   fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14abs
241          bdzla target
242 # CHECK: bdzlrl                          # encoding: [0x4e,0x40,0x00,0x21]
243          bdzlrl
244
245 # CHECK: bdz+ target                     # encoding: [0x43,0x60,A,0bAAAAAA00]
246 # CHECK-NEXT:                            #   fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14
247          bdz+ target
248 # CHECK: bdza+ target                    # encoding: [0x43,0x60,A,0bAAAAAA10]
249 # CHECK-NEXT:                            #   fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14abs
250          bdza+ target
251 # CHECK: bdzlr+                          # encoding: [0x4f,0x60,0x00,0x20]
252          bdzlr+
253 # CHECK: bdzl+ target                    # encoding: [0x43,0x60,A,0bAAAAAA01]
254 # CHECK-NEXT:                            #   fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14
255          bdzl+ target
256 # CHECK: bdzla+ target                   # encoding: [0x43,0x60,A,0bAAAAAA11]
257 # CHECK-NEXT:                            #   fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14abs
258          bdzla+ target
259 # CHECK: bdzlrl+                         # encoding: [0x4f,0x60,0x00,0x21]
260          bdzlrl+
261
262 # CHECK: bdz- target                     # encoding: [0x43,0x40,A,0bAAAAAA00]
263 # CHECK-NEXT:                            #   fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14
264          bdz- target
265 # CHECK: bdza- target                    # encoding: [0x43,0x40,A,0bAAAAAA10]
266 # CHECK-NEXT:                            #   fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14abs
267          bdza- target
268 # CHECK: bdzlr-                          # encoding: [0x4f,0x40,0x00,0x20]
269          bdzlr-
270 # CHECK: bdzl- target                    # encoding: [0x43,0x40,A,0bAAAAAA01]
271 # CHECK-NEXT:                            #   fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14
272          bdzl- target
273 # CHECK: bdzla- target                   # encoding: [0x43,0x40,A,0bAAAAAA11]
274 # CHECK-NEXT:                            #   fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14abs
275          bdzla- target
276 # CHECK: bdzlrl-                         # encoding: [0x4f,0x40,0x00,0x21]
277          bdzlrl-
278
279 # CHECK: bc 10, 2, target                # encoding: [0x41,0x42,A,0bAAAAAA00]
280 # CHECK-NEXT:                            #   fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14
281          bdzt 2, target
282 # CHECK: bca 10, 2, target               # encoding: [0x41,0x42,A,0bAAAAAA10]
283 # CHECK-NEXT:                            #   fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14abs
284          bdzta 2, target
285 # CHECK: bclr 10, 2, 0                   # encoding: [0x4d,0x42,0x00,0x20]
286          bdztlr 2
287 # CHECK: bcl 10, 2, target               # encoding: [0x41,0x42,A,0bAAAAAA01]
288 # CHECK-NEXT:                            #   fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14
289          bdztl 2, target
290 # CHECK: bcla 10, 2, target              # encoding: [0x41,0x42,A,0bAAAAAA11]
291 # CHECK-NEXT:                            #   fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14abs
292          bdztla 2, target
293 # CHECK: bclrl 10, 2, 0                  # encoding: [0x4d,0x42,0x00,0x21]
294          bdztlrl 2
295
296 # CHECK: bc 2, 2, target                 # encoding: [0x40,0x42,A,0bAAAAAA00]
297 # CHECK-NEXT:                            #   fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14
298          bdzf 2, target
299 # CHECK: bca 2, 2, target                # encoding: [0x40,0x42,A,0bAAAAAA10]
300 # CHECK-NEXT:                            #   fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14abs
301          bdzfa 2, target
302 # CHECK: bclr 2, 2, 0                    # encoding: [0x4c,0x42,0x00,0x20]
303          bdzflr 2
304 # CHECK: bcl 2, 2, target                # encoding: [0x40,0x42,A,0bAAAAAA01]
305 # CHECK-NEXT:                            #   fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14
306          bdzfl 2, target
307 # CHECK: bcla 2, 2, target               # encoding: [0x40,0x42,A,0bAAAAAA11]
308 # CHECK-NEXT:                            #   fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14abs
309          bdzfla 2, target
310 # CHECK: bclrl 2, 2, 0                   # encoding: [0x4c,0x42,0x00,0x21]
311          bdzflrl 2
312
313 # CHECK: blt 2, target                   # encoding: [0x41,0x88,A,0bAAAAAA00]
314 # CHECK-NEXT:                            #   fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14
315          blt 2, target
316 # CHECK: blt 0, target                   # encoding: [0x41,0x80,A,0bAAAAAA00]
317 # CHECK-NEXT:                            #   fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14
318          blt target
319 # CHECK: blta 2, target                  # encoding: [0x41,0x88,A,0bAAAAAA10]
320 # CHECK-NEXT:                            #   fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14abs
321          blta 2, target
322 # CHECK: blta 0, target                  # encoding: [0x41,0x80,A,0bAAAAAA10]
323 # CHECK-NEXT:                            #   fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14abs
324          blta target
325 # CHECK: bltlr 2                         # encoding: [0x4d,0x88,0x00,0x20]
326          bltlr 2
327 # CHECK: bltlr 0                         # encoding: [0x4d,0x80,0x00,0x20]
328          bltlr
329 # CHECK: bltctr 2                        # encoding: [0x4d,0x88,0x04,0x20]
330          bltctr 2
331 # CHECK: bltctr 0                        # encoding: [0x4d,0x80,0x04,0x20]
332          bltctr
333 # CHECK: bltl 2, target                  # encoding: [0x41,0x88,A,0bAAAAAA01]
334 # CHECK-NEXT:                            #   fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14
335          bltl 2, target
336 # CHECK: bltl 0, target                  # encoding: [0x41,0x80,A,0bAAAAAA01]
337 # CHECK-NEXT:                            #   fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14
338          bltl target
339 # CHECK: bltla 2, target                 # encoding: [0x41,0x88,A,0bAAAAAA11]
340 # CHECK-NEXT:                            #   fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14abs
341          bltla 2, target
342 # CHECK: bltla 0, target                 # encoding: [0x41,0x80,A,0bAAAAAA11]
343 # CHECK-NEXT:                            #   fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14abs
344          bltla target
345 # CHECK: bltlrl 2                        # encoding: [0x4d,0x88,0x00,0x21]
346          bltlrl 2
347 # CHECK: bltlrl 0                        # encoding: [0x4d,0x80,0x00,0x21]
348          bltlrl
349 # CHECK: bltctrl 2                       # encoding: [0x4d,0x88,0x04,0x21]
350          bltctrl 2
351 # CHECK: bltctrl 0                       # encoding: [0x4d,0x80,0x04,0x21]
352          bltctrl
353
354 # CHECK: blt+ 2, target                  # encoding: [0x41,0xe8,A,0bAAAAAA00]
355 # CHECK-NEXT:                            #   fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14
356          blt+ 2, target
357 # CHECK: blt+ 0, target                  # encoding: [0x41,0xe0,A,0bAAAAAA00]
358 # CHECK-NEXT:                            #   fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14
359          blt+ target
360 # CHECK: blta+ 2, target                 # encoding: [0x41,0xe8,A,0bAAAAAA10]
361 # CHECK-NEXT:                            #   fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14abs
362          blta+ 2, target
363 # CHECK: blta+ 0, target                 # encoding: [0x41,0xe0,A,0bAAAAAA10]
364 # CHECK-NEXT:                            #   fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14abs
365          blta+ target
366 # CHECK: bltlr+ 2                        # encoding: [0x4d,0xe8,0x00,0x20]
367          bltlr+ 2
368 # CHECK: bltlr+ 0                        # encoding: [0x4d,0xe0,0x00,0x20]
369          bltlr+
370 # CHECK: bltctr+ 2                       # encoding: [0x4d,0xe8,0x04,0x20]
371          bltctr+ 2
372 # CHECK: bltctr+ 0                       # encoding: [0x4d,0xe0,0x04,0x20]
373          bltctr+
374 # CHECK: bltl+ 2, target                 # encoding: [0x41,0xe8,A,0bAAAAAA01]
375 # CHECK-NEXT:                            #   fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14
376          bltl+ 2, target
377 # CHECK: bltl+ 0, target                 # encoding: [0x41,0xe0,A,0bAAAAAA01]
378 # CHECK-NEXT:                            #   fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14
379          bltl+ target
380 # CHECK: bltla+ 2, target                # encoding: [0x41,0xe8,A,0bAAAAAA11]
381 # CHECK-NEXT:                            #   fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14abs
382          bltla+ 2, target
383 # CHECK: bltla+ 0, target                # encoding: [0x41,0xe0,A,0bAAAAAA11]
384 # CHECK-NEXT:                            #   fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14abs
385          bltla+ target
386 # CHECK: bltlrl+ 2                       # encoding: [0x4d,0xe8,0x00,0x21]
387          bltlrl+ 2
388 # CHECK: bltlrl+ 0                       # encoding: [0x4d,0xe0,0x00,0x21]
389          bltlrl+
390 # CHECK: bltctrl+ 2                      # encoding: [0x4d,0xe8,0x04,0x21]
391          bltctrl+ 2
392 # CHECK: bltctrl+ 0                      # encoding: [0x4d,0xe0,0x04,0x21]
393          bltctrl+
394
395 # CHECK: blt- 2, target                  # encoding: [0x41,0xc8,A,0bAAAAAA00]
396 # CHECK-NEXT:                            #   fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14
397          blt- 2, target
398 # CHECK: blt- 0, target                  # encoding: [0x41,0xc0,A,0bAAAAAA00]
399 # CHECK-NEXT:                            #   fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14
400          blt- target
401 # CHECK: blta- 2, target                 # encoding: [0x41,0xc8,A,0bAAAAAA10]
402 # CHECK-NEXT:                            #   fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14abs
403          blta- 2, target
404 # CHECK: blta- 0, target                 # encoding: [0x41,0xc0,A,0bAAAAAA10]
405 # CHECK-NEXT:                            #   fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14abs
406          blta- target
407 # CHECK: bltlr- 2                        # encoding: [0x4d,0xc8,0x00,0x20]
408          bltlr- 2
409 # CHECK: bltlr- 0                        # encoding: [0x4d,0xc0,0x00,0x20]
410          bltlr-
411 # CHECK: bltctr- 2                       # encoding: [0x4d,0xc8,0x04,0x20]
412          bltctr- 2
413 # CHECK: bltctr- 0                       # encoding: [0x4d,0xc0,0x04,0x20]
414          bltctr-
415 # CHECK: bltl- 2, target                 # encoding: [0x41,0xc8,A,0bAAAAAA01]
416 # CHECK-NEXT:                            #   fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14
417          bltl- 2, target
418 # CHECK: bltl- 0, target                 # encoding: [0x41,0xc0,A,0bAAAAAA01]
419 # CHECK-NEXT:                            #   fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14
420          bltl- target
421 # CHECK: bltla- 2, target                # encoding: [0x41,0xc8,A,0bAAAAAA11]
422 # CHECK-NEXT:                            #   fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14abs
423          bltla- 2, target
424 # CHECK: bltla- 0, target                # encoding: [0x41,0xc0,A,0bAAAAAA11]
425 # CHECK-NEXT:                            #   fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14abs
426          bltla- target
427 # CHECK: bltlrl- 2                       # encoding: [0x4d,0xc8,0x00,0x21]
428          bltlrl- 2
429 # CHECK: bltlrl- 0                       # encoding: [0x4d,0xc0,0x00,0x21]
430          bltlrl-
431 # CHECK: bltctrl- 2                      # encoding: [0x4d,0xc8,0x04,0x21]
432          bltctrl- 2
433 # CHECK: bltctrl- 0                      # encoding: [0x4d,0xc0,0x04,0x21]
434          bltctrl-
435
436 # CHECK: ble 2, target                   # encoding: [0x40,0x89,A,0bAAAAAA00]
437 # CHECK-NEXT:                            #   fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14
438          ble 2, target
439 # CHECK: ble 0, target                   # encoding: [0x40,0x81,A,0bAAAAAA00]
440 # CHECK-NEXT:                            #   fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14
441          ble target
442 # CHECK: blea 2, target                  # encoding: [0x40,0x89,A,0bAAAAAA10]
443 # CHECK-NEXT:                            #   fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14abs
444          blea 2, target
445 # CHECK: blea 0, target                  # encoding: [0x40,0x81,A,0bAAAAAA10]
446 # CHECK-NEXT:                            #   fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14abs
447          blea target
448 # CHECK: blelr 2                         # encoding: [0x4c,0x89,0x00,0x20]
449          blelr 2
450 # CHECK: blelr 0                         # encoding: [0x4c,0x81,0x00,0x20]
451          blelr
452 # CHECK: blectr 2                        # encoding: [0x4c,0x89,0x04,0x20]
453          blectr 2
454 # CHECK: blectr 0                        # encoding: [0x4c,0x81,0x04,0x20]
455          blectr
456 # CHECK: blel 2, target                  # encoding: [0x40,0x89,A,0bAAAAAA01]
457 # CHECK-NEXT:                            #   fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14
458          blel 2, target
459 # CHECK: blel 0, target                  # encoding: [0x40,0x81,A,0bAAAAAA01]
460 # CHECK-NEXT:                            #   fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14
461          blel target
462 # CHECK: blela 2, target                 # encoding: [0x40,0x89,A,0bAAAAAA11]
463 # CHECK-NEXT:                            #   fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14abs
464          blela 2, target
465 # CHECK: blela 0, target                 # encoding: [0x40,0x81,A,0bAAAAAA11]
466 # CHECK-NEXT:                            #   fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14abs
467          blela target
468 # CHECK: blelrl 2                        # encoding: [0x4c,0x89,0x00,0x21]
469          blelrl 2
470 # CHECK: blelrl 0                        # encoding: [0x4c,0x81,0x00,0x21]
471          blelrl
472 # CHECK: blectrl 2                       # encoding: [0x4c,0x89,0x04,0x21]
473          blectrl 2
474 # CHECK: blectrl 0                       # encoding: [0x4c,0x81,0x04,0x21]
475          blectrl
476
477 # CHECK: ble+ 2, target                  # encoding: [0x40,0xe9,A,0bAAAAAA00]
478 # CHECK-NEXT:                            #   fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14
479          ble+ 2, target
480 # CHECK: ble+ 0, target                  # encoding: [0x40,0xe1,A,0bAAAAAA00]
481 # CHECK-NEXT:                            #   fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14
482          ble+ target
483 # CHECK: blea+ 2, target                 # encoding: [0x40,0xe9,A,0bAAAAAA10]
484 # CHECK-NEXT:                            #   fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14abs
485          blea+ 2, target
486 # CHECK: blea+ 0, target                 # encoding: [0x40,0xe1,A,0bAAAAAA10]
487 # CHECK-NEXT:                            #   fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14abs
488          blea+ target
489 # CHECK: blelr+ 2                        # encoding: [0x4c,0xe9,0x00,0x20]
490          blelr+ 2
491 # CHECK: blelr+ 0                        # encoding: [0x4c,0xe1,0x00,0x20]
492          blelr+
493 # CHECK: blectr+ 2                       # encoding: [0x4c,0xe9,0x04,0x20]
494          blectr+ 2
495 # CHECK: blectr+ 0                       # encoding: [0x4c,0xe1,0x04,0x20]
496          blectr+
497 # CHECK: blel+ 2, target                 # encoding: [0x40,0xe9,A,0bAAAAAA01]
498 # CHECK-NEXT:                            #   fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14
499          blel+ 2, target
500 # CHECK: blel+ 0, target                 # encoding: [0x40,0xe1,A,0bAAAAAA01]
501 # CHECK-NEXT:                            #   fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14
502          blel+ target
503 # CHECK: blela+ 2, target                # encoding: [0x40,0xe9,A,0bAAAAAA11]
504 # CHECK-NEXT:                            #   fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14abs
505          blela+ 2, target
506 # CHECK: blela+ 0, target                # encoding: [0x40,0xe1,A,0bAAAAAA11]
507 # CHECK-NEXT:                            #   fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14abs
508          blela+ target
509 # CHECK: blelrl+ 2                       # encoding: [0x4c,0xe9,0x00,0x21]
510          blelrl+ 2
511 # CHECK: blelrl+ 0                       # encoding: [0x4c,0xe1,0x00,0x21]
512          blelrl+
513 # CHECK: blectrl+ 2                      # encoding: [0x4c,0xe9,0x04,0x21]
514          blectrl+ 2
515 # CHECK: blectrl+ 0                      # encoding: [0x4c,0xe1,0x04,0x21]
516          blectrl+
517
518 # CHECK: ble- 2, target                  # encoding: [0x40,0xc9,A,0bAAAAAA00]
519 # CHECK-NEXT:                            #   fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14
520          ble- 2, target
521 # CHECK: ble- 0, target                  # encoding: [0x40,0xc1,A,0bAAAAAA00]
522 # CHECK-NEXT:                            #   fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14
523          ble- target
524 # CHECK: blea- 2, target                 # encoding: [0x40,0xc9,A,0bAAAAAA10]
525 # CHECK-NEXT:                            #   fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14abs
526          blea- 2, target
527 # CHECK: blea- 0, target                 # encoding: [0x40,0xc1,A,0bAAAAAA10]
528 # CHECK-NEXT:                            #   fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14abs
529          blea- target
530 # CHECK: blelr- 2                        # encoding: [0x4c,0xc9,0x00,0x20]
531          blelr- 2
532 # CHECK: blelr- 0                        # encoding: [0x4c,0xc1,0x00,0x20]
533          blelr-
534 # CHECK: blectr- 2                       # encoding: [0x4c,0xc9,0x04,0x20]
535          blectr- 2
536 # CHECK: blectr- 0                       # encoding: [0x4c,0xc1,0x04,0x20]
537          blectr-
538 # CHECK: blel- 2, target                 # encoding: [0x40,0xc9,A,0bAAAAAA01]
539 # CHECK-NEXT:                            #   fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14
540          blel- 2, target
541 # CHECK: blel- 0, target                 # encoding: [0x40,0xc1,A,0bAAAAAA01]
542 # CHECK-NEXT:                            #   fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14
543          blel- target
544 # CHECK: blela- 2, target                # encoding: [0x40,0xc9,A,0bAAAAAA11]
545 # CHECK-NEXT:                            #   fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14abs
546          blela- 2, target
547 # CHECK: blela- 0, target                # encoding: [0x40,0xc1,A,0bAAAAAA11]
548 # CHECK-NEXT:                            #   fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14abs
549          blela- target
550 # CHECK: blelrl- 2                       # encoding: [0x4c,0xc9,0x00,0x21]
551          blelrl- 2
552 # CHECK: blelrl- 0                       # encoding: [0x4c,0xc1,0x00,0x21]
553          blelrl-
554 # CHECK: blectrl- 2                      # encoding: [0x4c,0xc9,0x04,0x21]
555          blectrl- 2
556 # CHECK: blectrl- 0                      # encoding: [0x4c,0xc1,0x04,0x21]
557          blectrl-
558
559 # CHECK: beq 2, target                   # encoding: [0x41,0x8a,A,0bAAAAAA00]
560 # CHECK-NEXT:                            #   fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14
561          beq 2, target
562 # CHECK: beq 0, target                   # encoding: [0x41,0x82,A,0bAAAAAA00]
563 # CHECK-NEXT:                            #   fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14
564          beq target
565 # CHECK: beqa 2, target                  # encoding: [0x41,0x8a,A,0bAAAAAA10]
566 # CHECK-NEXT:                            #   fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14abs
567          beqa 2, target
568 # CHECK: beqa 0, target                  # encoding: [0x41,0x82,A,0bAAAAAA10]
569 # CHECK-NEXT:                            #   fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14abs
570          beqa target
571 # CHECK: beqlr 2                         # encoding: [0x4d,0x8a,0x00,0x20]
572          beqlr 2
573 # CHECK: beqlr 0                         # encoding: [0x4d,0x82,0x00,0x20]
574          beqlr
575 # CHECK: beqctr 2                        # encoding: [0x4d,0x8a,0x04,0x20]
576          beqctr 2
577 # CHECK: beqctr 0                        # encoding: [0x4d,0x82,0x04,0x20]
578          beqctr
579 # CHECK: beql 2, target                  # encoding: [0x41,0x8a,A,0bAAAAAA01]
580 # CHECK-NEXT:                            #   fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14
581          beql 2, target
582 # CHECK: beql 0, target                  # encoding: [0x41,0x82,A,0bAAAAAA01]
583 # CHECK-NEXT:                            #   fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14
584          beql target
585 # CHECK: beqla 2, target                 # encoding: [0x41,0x8a,A,0bAAAAAA11]
586 # CHECK-NEXT:                            #   fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14abs
587          beqla 2, target
588 # CHECK: beqla 0, target                 # encoding: [0x41,0x82,A,0bAAAAAA11]
589 # CHECK-NEXT:                            #   fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14abs
590          beqla target
591 # CHECK: beqlrl 2                        # encoding: [0x4d,0x8a,0x00,0x21]
592          beqlrl 2
593 # CHECK: beqlrl 0                        # encoding: [0x4d,0x82,0x00,0x21]
594          beqlrl
595 # CHECK: beqctrl 2                       # encoding: [0x4d,0x8a,0x04,0x21]
596          beqctrl 2
597 # CHECK: beqctrl 0                       # encoding: [0x4d,0x82,0x04,0x21]
598          beqctrl
599
600 # CHECK: beq+ 2, target                  # encoding: [0x41,0xea,A,0bAAAAAA00]
601 # CHECK-NEXT:                            #   fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14
602          beq+ 2, target
603 # CHECK: beq+ 0, target                  # encoding: [0x41,0xe2,A,0bAAAAAA00]
604 # CHECK-NEXT:                            #   fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14
605          beq+ target
606 # CHECK: beqa+ 2, target                 # encoding: [0x41,0xea,A,0bAAAAAA10]
607 # CHECK-NEXT:                            #   fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14abs
608          beqa+ 2, target
609 # CHECK: beqa+ 0, target                 # encoding: [0x41,0xe2,A,0bAAAAAA10]
610 # CHECK-NEXT:                            #   fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14abs
611          beqa+ target
612 # CHECK: beqlr+ 2                        # encoding: [0x4d,0xea,0x00,0x20]
613          beqlr+ 2
614 # CHECK: beqlr+ 0                        # encoding: [0x4d,0xe2,0x00,0x20]
615          beqlr+
616 # CHECK: beqctr+ 2                       # encoding: [0x4d,0xea,0x04,0x20]
617          beqctr+ 2
618 # CHECK: beqctr+ 0                       # encoding: [0x4d,0xe2,0x04,0x20]
619          beqctr+
620 # CHECK: beql+ 2, target                 # encoding: [0x41,0xea,A,0bAAAAAA01]
621 # CHECK-NEXT:                            #   fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14
622          beql+ 2, target
623 # CHECK: beql+ 0, target                 # encoding: [0x41,0xe2,A,0bAAAAAA01]
624 # CHECK-NEXT:                            #   fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14
625          beql+ target
626 # CHECK: beqla+ 2, target                # encoding: [0x41,0xea,A,0bAAAAAA11]
627 # CHECK-NEXT:                            #   fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14abs
628          beqla+ 2, target
629 # CHECK: beqla+ 0, target                # encoding: [0x41,0xe2,A,0bAAAAAA11]
630 # CHECK-NEXT:                            #   fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14abs
631          beqla+ target
632 # CHECK: beqlrl+ 2                       # encoding: [0x4d,0xea,0x00,0x21]
633          beqlrl+ 2
634 # CHECK: beqlrl+ 0                       # encoding: [0x4d,0xe2,0x00,0x21]
635          beqlrl+
636 # CHECK: beqctrl+ 2                      # encoding: [0x4d,0xea,0x04,0x21]
637          beqctrl+ 2
638 # CHECK: beqctrl+ 0                      # encoding: [0x4d,0xe2,0x04,0x21]
639          beqctrl+
640
641 # CHECK: beq- 2, target                  # encoding: [0x41,0xca,A,0bAAAAAA00]
642 # CHECK-NEXT:                            #   fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14
643          beq- 2, target
644 # CHECK: beq- 0, target                  # encoding: [0x41,0xc2,A,0bAAAAAA00]
645 # CHECK-NEXT:                            #   fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14
646          beq- target
647 # CHECK: beqa- 2, target                 # encoding: [0x41,0xca,A,0bAAAAAA10]
648 # CHECK-NEXT:                            #   fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14abs
649          beqa- 2, target
650 # CHECK: beqa- 0, target                 # encoding: [0x41,0xc2,A,0bAAAAAA10]
651 # CHECK-NEXT:                            #   fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14abs
652          beqa- target
653 # CHECK: beqlr- 2                        # encoding: [0x4d,0xca,0x00,0x20]
654          beqlr- 2
655 # CHECK: beqlr- 0                        # encoding: [0x4d,0xc2,0x00,0x20]
656          beqlr-
657 # CHECK: beqctr- 2                       # encoding: [0x4d,0xca,0x04,0x20]
658          beqctr- 2
659 # CHECK: beqctr- 0                       # encoding: [0x4d,0xc2,0x04,0x20]
660          beqctr-
661 # CHECK: beql- 2, target                 # encoding: [0x41,0xca,A,0bAAAAAA01]
662 # CHECK-NEXT:                            #   fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14
663          beql- 2, target
664 # CHECK: beql- 0, target                 # encoding: [0x41,0xc2,A,0bAAAAAA01]
665 # CHECK-NEXT:                            #   fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14
666          beql- target
667 # CHECK: beqla- 2, target                # encoding: [0x41,0xca,A,0bAAAAAA11]
668 # CHECK-NEXT:                            #   fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14abs
669          beqla- 2, target
670 # CHECK: beqla- 0, target                # encoding: [0x41,0xc2,A,0bAAAAAA11]
671 # CHECK-NEXT:                            #   fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14abs
672          beqla- target
673 # CHECK: beqlrl- 2                       # encoding: [0x4d,0xca,0x00,0x21]
674          beqlrl- 2
675 # CHECK: beqlrl- 0                       # encoding: [0x4d,0xc2,0x00,0x21]
676          beqlrl-
677 # CHECK: beqctrl- 2                      # encoding: [0x4d,0xca,0x04,0x21]
678          beqctrl- 2
679 # CHECK: beqctrl- 0                      # encoding: [0x4d,0xc2,0x04,0x21]
680          beqctrl-
681
682 # CHECK: bge 2, target                   # encoding: [0x40,0x88,A,0bAAAAAA00]
683 # CHECK-NEXT:                            #   fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14
684          bge 2, target
685 # CHECK: bge 0, target                   # encoding: [0x40,0x80,A,0bAAAAAA00]
686 # CHECK-NEXT:                            #   fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14
687          bge target
688 # CHECK: bgea 2, target                  # encoding: [0x40,0x88,A,0bAAAAAA10]
689 # CHECK-NEXT:                            #   fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14abs
690          bgea 2, target
691 # CHECK: bgea 0, target                  # encoding: [0x40,0x80,A,0bAAAAAA10]
692 # CHECK-NEXT:                            #   fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14abs
693          bgea target
694 # CHECK: bgelr 2                         # encoding: [0x4c,0x88,0x00,0x20]
695          bgelr 2
696 # CHECK: bgelr 0                         # encoding: [0x4c,0x80,0x00,0x20]
697          bgelr
698 # CHECK: bgectr 2                        # encoding: [0x4c,0x88,0x04,0x20]
699          bgectr 2
700 # CHECK: bgectr 0                        # encoding: [0x4c,0x80,0x04,0x20]
701          bgectr
702 # CHECK: bgel 2, target                  # encoding: [0x40,0x88,A,0bAAAAAA01]
703 # CHECK-NEXT:                            #   fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14
704          bgel 2, target
705 # CHECK: bgel 0, target                  # encoding: [0x40,0x80,A,0bAAAAAA01]
706 # CHECK-NEXT:                            #   fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14
707          bgel target
708 # CHECK: bgela 2, target                 # encoding: [0x40,0x88,A,0bAAAAAA11]
709 # CHECK-NEXT:                            #   fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14abs
710          bgela 2, target
711 # CHECK: bgela 0, target                 # encoding: [0x40,0x80,A,0bAAAAAA11]
712 # CHECK-NEXT:                            #   fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14abs
713          bgela target
714 # CHECK: bgelrl 2                        # encoding: [0x4c,0x88,0x00,0x21]
715          bgelrl 2
716 # CHECK: bgelrl 0                        # encoding: [0x4c,0x80,0x00,0x21]
717          bgelrl
718 # CHECK: bgectrl 2                       # encoding: [0x4c,0x88,0x04,0x21]
719          bgectrl 2
720 # CHECK: bgectrl 0                       # encoding: [0x4c,0x80,0x04,0x21]
721          bgectrl
722
723 # CHECK: bge+ 2, target                   # encoding: [0x40,0xe8,A,0bAAAAAA00]
724 # CHECK-NEXT:                            #   fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14
725          bge+ 2, target
726 # CHECK: bge+ 0, target                   # encoding: [0x40,0xe0,A,0bAAAAAA00]
727 # CHECK-NEXT:                            #   fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14
728          bge+ target
729 # CHECK: bgea+ 2, target                  # encoding: [0x40,0xe8,A,0bAAAAAA10]
730 # CHECK-NEXT:                            #   fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14abs
731          bgea+ 2, target
732 # CHECK: bgea+ 0, target                  # encoding: [0x40,0xe0,A,0bAAAAAA10]
733 # CHECK-NEXT:                            #   fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14abs
734          bgea+ target
735 # CHECK: bgelr+ 2                         # encoding: [0x4c,0xe8,0x00,0x20]
736          bgelr+ 2
737 # CHECK: bgelr+ 0                         # encoding: [0x4c,0xe0,0x00,0x20]
738          bgelr+
739 # CHECK: bgectr+ 2                        # encoding: [0x4c,0xe8,0x04,0x20]
740          bgectr+ 2
741 # CHECK: bgectr+ 0                        # encoding: [0x4c,0xe0,0x04,0x20]
742          bgectr+
743 # CHECK: bgel+ 2, target                  # encoding: [0x40,0xe8,A,0bAAAAAA01]
744 # CHECK-NEXT:                            #   fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14
745          bgel+ 2, target
746 # CHECK: bgel+ 0, target                  # encoding: [0x40,0xe0,A,0bAAAAAA01]
747 # CHECK-NEXT:                            #   fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14
748          bgel+ target
749 # CHECK: bgela+ 2, target                 # encoding: [0x40,0xe8,A,0bAAAAAA11]
750 # CHECK-NEXT:                            #   fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14abs
751          bgela+ 2, target
752 # CHECK: bgela+ 0, target                 # encoding: [0x40,0xe0,A,0bAAAAAA11]
753 # CHECK-NEXT:                            #   fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14abs
754          bgela+ target
755 # CHECK: bgelrl+ 2                        # encoding: [0x4c,0xe8,0x00,0x21]
756          bgelrl+ 2
757 # CHECK: bgelrl+ 0                        # encoding: [0x4c,0xe0,0x00,0x21]
758          bgelrl+
759 # CHECK: bgectrl+ 2                       # encoding: [0x4c,0xe8,0x04,0x21]
760          bgectrl+ 2
761 # CHECK: bgectrl+ 0                       # encoding: [0x4c,0xe0,0x04,0x21]
762          bgectrl+
763
764 # CHECK: bge- 2, target                   # encoding: [0x40,0xc8,A,0bAAAAAA00]
765 # CHECK-NEXT:                            #   fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14
766          bge- 2, target
767 # CHECK: bge- 0, target                   # encoding: [0x40,0xc0,A,0bAAAAAA00]
768 # CHECK-NEXT:                            #   fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14
769          bge- target
770 # CHECK: bgea- 2, target                  # encoding: [0x40,0xc8,A,0bAAAAAA10]
771 # CHECK-NEXT:                            #   fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14abs
772          bgea- 2, target
773 # CHECK: bgea- 0, target                  # encoding: [0x40,0xc0,A,0bAAAAAA10]
774 # CHECK-NEXT:                            #   fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14abs
775          bgea- target
776 # CHECK: bgelr- 2                         # encoding: [0x4c,0xc8,0x00,0x20]
777          bgelr- 2
778 # CHECK: bgelr- 0                         # encoding: [0x4c,0xc0,0x00,0x20]
779          bgelr-
780 # CHECK: bgectr- 2                        # encoding: [0x4c,0xc8,0x04,0x20]
781          bgectr- 2
782 # CHECK: bgectr- 0                        # encoding: [0x4c,0xc0,0x04,0x20]
783          bgectr-
784 # CHECK: bgel- 2, target                  # encoding: [0x40,0xc8,A,0bAAAAAA01]
785 # CHECK-NEXT:                            #   fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14
786          bgel- 2, target
787 # CHECK: bgel- 0, target                  # encoding: [0x40,0xc0,A,0bAAAAAA01]
788 # CHECK-NEXT:                            #   fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14
789          bgel- target
790 # CHECK: bgela- 2, target                 # encoding: [0x40,0xc8,A,0bAAAAAA11]
791 # CHECK-NEXT:                            #   fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14abs
792          bgela- 2, target
793 # CHECK: bgela- 0, target                 # encoding: [0x40,0xc0,A,0bAAAAAA11]
794 # CHECK-NEXT:                            #   fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14abs
795          bgela- target
796 # CHECK: bgelrl- 2                        # encoding: [0x4c,0xc8,0x00,0x21]
797          bgelrl- 2
798 # CHECK: bgelrl- 0                        # encoding: [0x4c,0xc0,0x00,0x21]
799          bgelrl-
800 # CHECK: bgectrl- 2                       # encoding: [0x4c,0xc8,0x04,0x21]
801          bgectrl- 2
802 # CHECK: bgectrl- 0                       # encoding: [0x4c,0xc0,0x04,0x21]
803          bgectrl-
804
805 # CHECK: bgt 2, target                   # encoding: [0x41,0x89,A,0bAAAAAA00]
806 # CHECK-NEXT:                            #   fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14
807          bgt 2, target
808 # CHECK: bgt 0, target                   # encoding: [0x41,0x81,A,0bAAAAAA00]
809 # CHECK-NEXT:                            #   fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14
810          bgt target
811 # CHECK: bgta 2, target                  # encoding: [0x41,0x89,A,0bAAAAAA10]
812 # CHECK-NEXT:                            #   fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14abs
813          bgta 2, target
814 # CHECK: bgta 0, target                  # encoding: [0x41,0x81,A,0bAAAAAA10]
815 # CHECK-NEXT:                            #   fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14abs
816          bgta target
817 # CHECK: bgtlr 2                         # encoding: [0x4d,0x89,0x00,0x20]
818          bgtlr 2
819 # CHECK: bgtlr 0                         # encoding: [0x4d,0x81,0x00,0x20]
820          bgtlr
821 # CHECK: bgtctr 2                        # encoding: [0x4d,0x89,0x04,0x20]
822          bgtctr 2
823 # CHECK: bgtctr 0                        # encoding: [0x4d,0x81,0x04,0x20]
824          bgtctr
825 # CHECK: bgtl 2, target                  # encoding: [0x41,0x89,A,0bAAAAAA01]
826 # CHECK-NEXT:                            #   fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14
827          bgtl 2, target
828 # CHECK: bgtl 0, target                  # encoding: [0x41,0x81,A,0bAAAAAA01]
829 # CHECK-NEXT:                            #   fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14
830          bgtl target
831 # CHECK: bgtla 2, target                 # encoding: [0x41,0x89,A,0bAAAAAA11]
832 # CHECK-NEXT:                            #   fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14abs
833          bgtla 2, target
834 # CHECK: bgtla 0, target                 # encoding: [0x41,0x81,A,0bAAAAAA11]
835 # CHECK-NEXT:                            #   fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14abs
836          bgtla target
837 # CHECK: bgtlrl 2                        # encoding: [0x4d,0x89,0x00,0x21]
838          bgtlrl 2
839 # CHECK: bgtlrl 0                        # encoding: [0x4d,0x81,0x00,0x21]
840          bgtlrl
841 # CHECK: bgtctrl 2                       # encoding: [0x4d,0x89,0x04,0x21]
842          bgtctrl 2
843 # CHECK: bgtctrl 0                       # encoding: [0x4d,0x81,0x04,0x21]
844          bgtctrl
845
846 # CHECK: bgt+ 2, target                  # encoding: [0x41,0xe9,A,0bAAAAAA00]
847 # CHECK-NEXT:                            #   fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14
848          bgt+ 2, target
849 # CHECK: bgt+ 0, target                  # encoding: [0x41,0xe1,A,0bAAAAAA00]
850 # CHECK-NEXT:                            #   fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14
851          bgt+ target
852 # CHECK: bgta+ 2, target                 # encoding: [0x41,0xe9,A,0bAAAAAA10]
853 # CHECK-NEXT:                            #   fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14abs
854          bgta+ 2, target
855 # CHECK: bgta+ 0, target                 # encoding: [0x41,0xe1,A,0bAAAAAA10]
856 # CHECK-NEXT:                            #   fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14abs
857          bgta+ target
858 # CHECK: bgtlr+ 2                        # encoding: [0x4d,0xe9,0x00,0x20]
859          bgtlr+ 2
860 # CHECK: bgtlr+ 0                        # encoding: [0x4d,0xe1,0x00,0x20]
861          bgtlr+
862 # CHECK: bgtctr+ 2                       # encoding: [0x4d,0xe9,0x04,0x20]
863          bgtctr+ 2
864 # CHECK: bgtctr+ 0                       # encoding: [0x4d,0xe1,0x04,0x20]
865          bgtctr+
866 # CHECK: bgtl+ 2, target                 # encoding: [0x41,0xe9,A,0bAAAAAA01]
867 # CHECK-NEXT:                            #   fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14
868          bgtl+ 2, target
869 # CHECK: bgtl+ 0, target                 # encoding: [0x41,0xe1,A,0bAAAAAA01]
870 # CHECK-NEXT:                            #   fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14
871          bgtl+ target
872 # CHECK: bgtla+ 2, target                # encoding: [0x41,0xe9,A,0bAAAAAA11]
873 # CHECK-NEXT:                            #   fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14abs
874          bgtla+ 2, target
875 # CHECK: bgtla+ 0, target                # encoding: [0x41,0xe1,A,0bAAAAAA11]
876 # CHECK-NEXT:                            #   fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14abs
877          bgtla+ target
878 # CHECK: bgtlrl+ 2                       # encoding: [0x4d,0xe9,0x00,0x21]
879          bgtlrl+ 2
880 # CHECK: bgtlrl+ 0                       # encoding: [0x4d,0xe1,0x00,0x21]
881          bgtlrl+
882 # CHECK: bgtctrl+ 2                      # encoding: [0x4d,0xe9,0x04,0x21]
883          bgtctrl+ 2
884 # CHECK: bgtctrl+ 0                      # encoding: [0x4d,0xe1,0x04,0x21]
885          bgtctrl+
886
887 # CHECK: bgt- 2, target                  # encoding: [0x41,0xc9,A,0bAAAAAA00]
888 # CHECK-NEXT:                            #   fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14
889          bgt- 2, target
890 # CHECK: bgt- 0, target                  # encoding: [0x41,0xc1,A,0bAAAAAA00]
891 # CHECK-NEXT:                            #   fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14
892          bgt- target
893 # CHECK: bgta- 2, target                 # encoding: [0x41,0xc9,A,0bAAAAAA10]
894 # CHECK-NEXT:                            #   fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14abs
895          bgta- 2, target
896 # CHECK: bgta- 0, target                 # encoding: [0x41,0xc1,A,0bAAAAAA10]
897 # CHECK-NEXT:                            #   fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14abs
898          bgta- target
899 # CHECK: bgtlr- 2                        # encoding: [0x4d,0xc9,0x00,0x20]
900          bgtlr- 2
901 # CHECK: bgtlr- 0                        # encoding: [0x4d,0xc1,0x00,0x20]
902          bgtlr-
903 # CHECK: bgtctr- 2                       # encoding: [0x4d,0xc9,0x04,0x20]
904          bgtctr- 2
905 # CHECK: bgtctr- 0                       # encoding: [0x4d,0xc1,0x04,0x20]
906          bgtctr-
907 # CHECK: bgtl- 2, target                 # encoding: [0x41,0xc9,A,0bAAAAAA01]
908 # CHECK-NEXT:                            #   fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14
909          bgtl- 2, target
910 # CHECK: bgtl- 0, target                 # encoding: [0x41,0xc1,A,0bAAAAAA01]
911 # CHECK-NEXT:                            #   fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14
912          bgtl- target
913 # CHECK: bgtla- 2, target                # encoding: [0x41,0xc9,A,0bAAAAAA11]
914 # CHECK-NEXT:                            #   fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14abs
915          bgtla- 2, target
916 # CHECK: bgtla- 0, target                # encoding: [0x41,0xc1,A,0bAAAAAA11]
917 # CHECK-NEXT:                            #   fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14abs
918          bgtla- target
919 # CHECK: bgtlrl- 2                       # encoding: [0x4d,0xc9,0x00,0x21]
920          bgtlrl- 2
921 # CHECK: bgtlrl- 0                       # encoding: [0x4d,0xc1,0x00,0x21]
922          bgtlrl-
923 # CHECK: bgtctrl- 2                      # encoding: [0x4d,0xc9,0x04,0x21]
924          bgtctrl- 2
925 # CHECK: bgtctrl- 0                      # encoding: [0x4d,0xc1,0x04,0x21]
926          bgtctrl-
927
928 # CHECK: bge 2, target                   # encoding: [0x40,0x88,A,0bAAAAAA00]
929 # CHECK-NEXT:                            #   fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14
930          bnl 2, target
931 # CHECK: bge 0, target                   # encoding: [0x40,0x80,A,0bAAAAAA00]
932 # CHECK-NEXT:                            #   fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14
933          bnl target
934 # CHECK: bgea 2, target                  # encoding: [0x40,0x88,A,0bAAAAAA10]
935 # CHECK-NEXT:                            #   fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14abs
936          bnla 2, target
937 # CHECK: bgea 0, target                  # encoding: [0x40,0x80,A,0bAAAAAA10]
938 # CHECK-NEXT:                            #   fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14abs
939          bnla target
940 # CHECK: bgelr 2                         # encoding: [0x4c,0x88,0x00,0x20]
941          bnllr 2
942 # CHECK: bgelr 0                         # encoding: [0x4c,0x80,0x00,0x20]
943          bnllr
944 # CHECK: bgectr 2                        # encoding: [0x4c,0x88,0x04,0x20]
945          bnlctr 2
946 # CHECK: bgectr 0                        # encoding: [0x4c,0x80,0x04,0x20]
947          bnlctr
948 # CHECK: bgel 2, target                  # encoding: [0x40,0x88,A,0bAAAAAA01]
949 # CHECK-NEXT:                            #   fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14
950          bnll 2, target
951 # CHECK: bgel 0, target                  # encoding: [0x40,0x80,A,0bAAAAAA01]
952 # CHECK-NEXT:                            #   fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14
953          bnll target
954 # CHECK: bgela 2, target                  # encoding: [0x40,0x88,A,0bAAAAAA11]
955 # CHECK-NEXT:                            #   fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14abs
956          bnlla 2, target
957 # CHECK: bgela 0, target                  # encoding: [0x40,0x80,A,0bAAAAAA11]
958 # CHECK-NEXT:                            #   fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14abs
959          bnlla target
960 # CHECK: bgelrl 2                        # encoding: [0x4c,0x88,0x00,0x21]
961          bnllrl 2
962 # CHECK: bgelrl 0                        # encoding: [0x4c,0x80,0x00,0x21]
963          bnllrl
964 # CHECK: bgectrl 2                       # encoding: [0x4c,0x88,0x04,0x21]
965          bnlctrl 2
966 # CHECK: bgectrl 0                       # encoding: [0x4c,0x80,0x04,0x21]
967          bnlctrl
968
969 # CHECK: bge+ 2, target                  # encoding: [0x40,0xe8,A,0bAAAAAA00]
970 # CHECK-NEXT:                            #   fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14
971          bnl+ 2, target
972 # CHECK: bge+ 0, target                  # encoding: [0x40,0xe0,A,0bAAAAAA00]
973 # CHECK-NEXT:                            #   fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14
974          bnl+ target
975 # CHECK: bgea+ 2, target                 # encoding: [0x40,0xe8,A,0bAAAAAA10]
976 # CHECK-NEXT:                            #   fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14abs
977          bnla+ 2, target
978 # CHECK: bgea+ 0, target                 # encoding: [0x40,0xe0,A,0bAAAAAA10]
979 # CHECK-NEXT:                            #   fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14abs
980          bnla+ target
981 # CHECK: bgelr+ 2                        # encoding: [0x4c,0xe8,0x00,0x20]
982          bnllr+ 2
983 # CHECK: bgelr+ 0                        # encoding: [0x4c,0xe0,0x00,0x20]
984          bnllr+
985 # CHECK: bgectr+ 2                       # encoding: [0x4c,0xe8,0x04,0x20]
986          bnlctr+ 2
987 # CHECK: bgectr+ 0                       # encoding: [0x4c,0xe0,0x04,0x20]
988          bnlctr+
989 # CHECK: bgel+ 2, target                 # encoding: [0x40,0xe8,A,0bAAAAAA01]
990 # CHECK-NEXT:                            #   fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14
991          bnll+ 2, target
992 # CHECK: bgel+ 0, target                 # encoding: [0x40,0xe0,A,0bAAAAAA01]
993 # CHECK-NEXT:                            #   fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14
994          bnll+ target
995 # CHECK: bgela+ 2, target                # encoding: [0x40,0xe8,A,0bAAAAAA11]
996 # CHECK-NEXT:                            #   fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14abs
997          bnlla+ 2, target
998 # CHECK: bgela+ 0, target                # encoding: [0x40,0xe0,A,0bAAAAAA11]
999 # CHECK-NEXT:                            #   fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14abs
1000          bnlla+ target
1001 # CHECK: bgelrl+ 2                       # encoding: [0x4c,0xe8,0x00,0x21]
1002          bnllrl+ 2
1003 # CHECK: bgelrl+ 0                       # encoding: [0x4c,0xe0,0x00,0x21]
1004          bnllrl+
1005 # CHECK: bgectrl+ 2                      # encoding: [0x4c,0xe8,0x04,0x21]
1006          bnlctrl+ 2
1007 # CHECK: bgectrl+ 0                      # encoding: [0x4c,0xe0,0x04,0x21]
1008          bnlctrl+
1009
1010 # CHECK: bge- 2, target                  # encoding: [0x40,0xc8,A,0bAAAAAA00]
1011 # CHECK-NEXT:                            #   fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14
1012          bnl- 2, target
1013 # CHECK: bge- 0, target                  # encoding: [0x40,0xc0,A,0bAAAAAA00]
1014 # CHECK-NEXT:                            #   fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14
1015          bnl- target
1016 # CHECK: bgea- 2, target                 # encoding: [0x40,0xc8,A,0bAAAAAA10]
1017 # CHECK-NEXT:                            #   fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14abs
1018          bnla- 2, target
1019 # CHECK: bgea- 0, target                 # encoding: [0x40,0xc0,A,0bAAAAAA10]
1020 # CHECK-NEXT:                            #   fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14abs
1021          bnla- target
1022 # CHECK: bgelr- 2                        # encoding: [0x4c,0xc8,0x00,0x20]
1023          bnllr- 2
1024 # CHECK: bgelr- 0                        # encoding: [0x4c,0xc0,0x00,0x20]
1025          bnllr-
1026 # CHECK: bgectr- 2                       # encoding: [0x4c,0xc8,0x04,0x20]
1027          bnlctr- 2
1028 # CHECK: bgectr- 0                       # encoding: [0x4c,0xc0,0x04,0x20]
1029          bnlctr-
1030 # CHECK: bgel- 2, target                 # encoding: [0x40,0xc8,A,0bAAAAAA01]
1031 # CHECK-NEXT:                            #   fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14
1032          bnll- 2, target
1033 # CHECK: bgel- 0, target                 # encoding: [0x40,0xc0,A,0bAAAAAA01]
1034 # CHECK-NEXT:                            #   fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14
1035          bnll- target
1036 # CHECK: bgela- 2, target                # encoding: [0x40,0xc8,A,0bAAAAAA11]
1037 # CHECK-NEXT:                            #   fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14abs
1038          bnlla- 2, target
1039 # CHECK: bgela- 0, target                # encoding: [0x40,0xc0,A,0bAAAAAA11]
1040 # CHECK-NEXT:                            #   fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14abs
1041          bnlla- target
1042 # CHECK: bgelrl- 2                       # encoding: [0x4c,0xc8,0x00,0x21]
1043          bnllrl- 2
1044 # CHECK: bgelrl- 0                       # encoding: [0x4c,0xc0,0x00,0x21]
1045          bnllrl-
1046 # CHECK: bgectrl- 2                      # encoding: [0x4c,0xc8,0x04,0x21]
1047          bnlctrl- 2
1048 # CHECK: bgectrl- 0                      # encoding: [0x4c,0xc0,0x04,0x21]
1049          bnlctrl-
1050
1051 # CHECK: bne 2, target                   # encoding: [0x40,0x8a,A,0bAAAAAA00]
1052 # CHECK-NEXT:                            #   fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14
1053          bne 2, target
1054 # CHECK: bne 0, target                   # encoding: [0x40,0x82,A,0bAAAAAA00]
1055 # CHECK-NEXT:                            #   fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14
1056          bne target
1057 # CHECK: bnea 2, target                  # encoding: [0x40,0x8a,A,0bAAAAAA10]
1058 # CHECK-NEXT:                            #   fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14abs
1059          bnea 2, target
1060 # CHECK: bnea 0, target                  # encoding: [0x40,0x82,A,0bAAAAAA10]
1061 # CHECK-NEXT:                            #   fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14abs
1062          bnea target
1063 # CHECK: bnelr 2                         # encoding: [0x4c,0x8a,0x00,0x20]
1064          bnelr 2
1065 # CHECK: bnelr 0                         # encoding: [0x4c,0x82,0x00,0x20]
1066          bnelr
1067 # CHECK: bnectr 2                        # encoding: [0x4c,0x8a,0x04,0x20]
1068          bnectr 2
1069 # CHECK: bnectr 0                        # encoding: [0x4c,0x82,0x04,0x20]
1070          bnectr
1071 # CHECK: bnel 2, target                  # encoding: [0x40,0x8a,A,0bAAAAAA01]
1072 # CHECK-NEXT:                            #   fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14
1073          bnel 2, target
1074 # CHECK: bnel 0, target                  # encoding: [0x40,0x82,A,0bAAAAAA01]
1075 # CHECK-NEXT:                            #   fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14
1076          bnel target
1077 # CHECK: bnela 2, target                 # encoding: [0x40,0x8a,A,0bAAAAAA11]
1078 # CHECK-NEXT:                            #   fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14abs
1079          bnela 2, target
1080 # CHECK: bnela 0, target                 # encoding: [0x40,0x82,A,0bAAAAAA11]
1081 # CHECK-NEXT:                            #   fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14abs
1082          bnela target
1083 # CHECK: bnelrl 2                        # encoding: [0x4c,0x8a,0x00,0x21]
1084          bnelrl 2
1085 # CHECK: bnelrl 0                        # encoding: [0x4c,0x82,0x00,0x21]
1086          bnelrl
1087 # CHECK: bnectrl 2                       # encoding: [0x4c,0x8a,0x04,0x21]
1088          bnectrl 2
1089 # CHECK: bnectrl 0                       # encoding: [0x4c,0x82,0x04,0x21]
1090          bnectrl
1091
1092 # CHECK: bne+ 2, target                  # encoding: [0x40,0xea,A,0bAAAAAA00]
1093 # CHECK-NEXT:                            #   fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14
1094          bne+ 2, target
1095 # CHECK: bne+ 0, target                  # encoding: [0x40,0xe2,A,0bAAAAAA00]
1096 # CHECK-NEXT:                            #   fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14
1097          bne+ target
1098 # CHECK: bnea+ 2, target                 # encoding: [0x40,0xea,A,0bAAAAAA10]
1099 # CHECK-NEXT:                            #   fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14abs
1100          bnea+ 2, target
1101 # CHECK: bnea+ 0, target                 # encoding: [0x40,0xe2,A,0bAAAAAA10]
1102 # CHECK-NEXT:                            #   fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14abs
1103          bnea+ target
1104 # CHECK: bnelr+ 2                        # encoding: [0x4c,0xea,0x00,0x20]
1105          bnelr+ 2
1106 # CHECK: bnelr+ 0                        # encoding: [0x4c,0xe2,0x00,0x20]
1107          bnelr+
1108 # CHECK: bnectr+ 2                       # encoding: [0x4c,0xea,0x04,0x20]
1109          bnectr+ 2
1110 # CHECK: bnectr+ 0                       # encoding: [0x4c,0xe2,0x04,0x20]
1111          bnectr+
1112 # CHECK: bnel+ 2, target                 # encoding: [0x40,0xea,A,0bAAAAAA01]
1113 # CHECK-NEXT:                            #   fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14
1114          bnel+ 2, target
1115 # CHECK: bnel+ 0, target                 # encoding: [0x40,0xe2,A,0bAAAAAA01]
1116 # CHECK-NEXT:                            #   fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14
1117          bnel+ target
1118 # CHECK: bnela+ 2, target                # encoding: [0x40,0xea,A,0bAAAAAA11]
1119 # CHECK-NEXT:                            #   fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14abs
1120          bnela+ 2, target
1121 # CHECK: bnela+ 0, target                # encoding: [0x40,0xe2,A,0bAAAAAA11]
1122 # CHECK-NEXT:                            #   fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14abs
1123          bnela+ target
1124 # CHECK: bnelrl+ 2                       # encoding: [0x4c,0xea,0x00,0x21]
1125          bnelrl+ 2
1126 # CHECK: bnelrl+ 0                       # encoding: [0x4c,0xe2,0x00,0x21]
1127          bnelrl+
1128 # CHECK: bnectrl+ 2                      # encoding: [0x4c,0xea,0x04,0x21]
1129          bnectrl+ 2
1130 # CHECK: bnectrl+ 0                      # encoding: [0x4c,0xe2,0x04,0x21]
1131          bnectrl+
1132
1133 # CHECK: bne- 2, target                  # encoding: [0x40,0xca,A,0bAAAAAA00]
1134 # CHECK-NEXT:                            #   fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14
1135          bne- 2, target
1136 # CHECK: bne- 0, target                  # encoding: [0x40,0xc2,A,0bAAAAAA00]
1137 # CHECK-NEXT:                            #   fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14
1138          bne- target
1139 # CHECK: bnea- 2, target                 # encoding: [0x40,0xca,A,0bAAAAAA10]
1140 # CHECK-NEXT:                            #   fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14abs
1141          bnea- 2, target
1142 # CHECK: bnea- 0, target                 # encoding: [0x40,0xc2,A,0bAAAAAA10]
1143 # CHECK-NEXT:                            #   fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14abs
1144          bnea- target
1145 # CHECK: bnelr- 2                        # encoding: [0x4c,0xca,0x00,0x20]
1146          bnelr- 2
1147 # CHECK: bnelr- 0                        # encoding: [0x4c,0xc2,0x00,0x20]
1148          bnelr-
1149 # CHECK: bnectr- 2                       # encoding: [0x4c,0xca,0x04,0x20]
1150          bnectr- 2
1151 # CHECK: bnectr- 0                       # encoding: [0x4c,0xc2,0x04,0x20]
1152          bnectr-
1153 # CHECK: bnel- 2, target                 # encoding: [0x40,0xca,A,0bAAAAAA01]
1154 # CHECK-NEXT:                            #   fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14
1155          bnel- 2, target
1156 # CHECK: bnel- 0, target                 # encoding: [0x40,0xc2,A,0bAAAAAA01]
1157 # CHECK-NEXT:                            #   fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14
1158          bnel- target
1159 # CHECK: bnela- 2, target                # encoding: [0x40,0xca,A,0bAAAAAA11]
1160 # CHECK-NEXT:                            #   fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14abs
1161          bnela- 2, target
1162 # CHECK: bnela- 0, target                # encoding: [0x40,0xc2,A,0bAAAAAA11]
1163 # CHECK-NEXT:                            #   fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14abs
1164          bnela- target
1165 # CHECK: bnelrl- 2                       # encoding: [0x4c,0xca,0x00,0x21]
1166          bnelrl- 2
1167 # CHECK: bnelrl- 0                       # encoding: [0x4c,0xc2,0x00,0x21]
1168          bnelrl-
1169 # CHECK: bnectrl- 2                      # encoding: [0x4c,0xca,0x04,0x21]
1170          bnectrl- 2
1171 # CHECK: bnectrl- 0                      # encoding: [0x4c,0xc2,0x04,0x21]
1172          bnectrl-
1173
1174 # CHECK: ble 2, target                   # encoding: [0x40,0x89,A,0bAAAAAA00]
1175 # CHECK-NEXT:                            #   fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14
1176          bng 2, target
1177 # CHECK: ble 0, target                   # encoding: [0x40,0x81,A,0bAAAAAA00]
1178 # CHECK-NEXT:                            #   fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14
1179          bng target
1180 # CHECK: blea 2, target                  # encoding: [0x40,0x89,A,0bAAAAAA10]
1181 # CHECK-NEXT:                            #   fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14abs
1182          bnga 2, target
1183 # CHECK: blea 0, target                  # encoding: [0x40,0x81,A,0bAAAAAA10]
1184 # CHECK-NEXT:                            #   fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14abs
1185          bnga target
1186 # CHECK: blelr 2                         # encoding: [0x4c,0x89,0x00,0x20]
1187          bnglr 2
1188 # CHECK: blelr 0                         # encoding: [0x4c,0x81,0x00,0x20]
1189          bnglr
1190 # CHECK: blectr 2                        # encoding: [0x4c,0x89,0x04,0x20]
1191          bngctr 2
1192 # CHECK: blectr 0                        # encoding: [0x4c,0x81,0x04,0x20]
1193          bngctr
1194 # CHECK: blel 2, target                  # encoding: [0x40,0x89,A,0bAAAAAA01]
1195 # CHECK-NEXT:                            #   fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14
1196          bngl 2, target
1197 # CHECK: blel 0, target                  # encoding: [0x40,0x81,A,0bAAAAAA01]
1198 # CHECK-NEXT:                            #   fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14
1199          bngl target
1200 # CHECK: blela 2, target                 # encoding: [0x40,0x89,A,0bAAAAAA11]
1201 # CHECK-NEXT:                            #   fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14abs
1202          bngla 2, target
1203 # CHECK: blela 0, target                 # encoding: [0x40,0x81,A,0bAAAAAA11]
1204 # CHECK-NEXT:                            #   fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14abs
1205          bngla target
1206 # CHECK: blelrl 2                        # encoding: [0x4c,0x89,0x00,0x21]
1207          bnglrl 2
1208 # CHECK: blelrl 0                        # encoding: [0x4c,0x81,0x00,0x21]
1209          bnglrl
1210 # CHECK: blectrl 2                       # encoding: [0x4c,0x89,0x04,0x21]
1211          bngctrl 2
1212 # CHECK: blectrl 0                       # encoding: [0x4c,0x81,0x04,0x21]
1213          bngctrl
1214
1215 # CHECK: ble+ 2, target                   # encoding: [0x40,0xe9,A,0bAAAAAA00]
1216 # CHECK-NEXT:                            #   fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14
1217          bng+ 2, target
1218 # CHECK: ble+ 0, target                   # encoding: [0x40,0xe1,A,0bAAAAAA00]
1219 # CHECK-NEXT:                            #   fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14
1220          bng+ target
1221 # CHECK: blea+ 2, target                  # encoding: [0x40,0xe9,A,0bAAAAAA10]
1222 # CHECK-NEXT:                            #   fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14abs
1223          bnga+ 2, target
1224 # CHECK: blea+ 0, target                  # encoding: [0x40,0xe1,A,0bAAAAAA10]
1225 # CHECK-NEXT:                            #   fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14abs
1226          bnga+ target
1227 # CHECK: blelr+ 2                         # encoding: [0x4c,0xe9,0x00,0x20]
1228          bnglr+ 2
1229 # CHECK: blelr+ 0                         # encoding: [0x4c,0xe1,0x00,0x20]
1230          bnglr+
1231 # CHECK: blectr+ 2                        # encoding: [0x4c,0xe9,0x04,0x20]
1232          bngctr+ 2
1233 # CHECK: blectr+ 0                        # encoding: [0x4c,0xe1,0x04,0x20]
1234          bngctr+
1235 # CHECK: blel+ 2, target                  # encoding: [0x40,0xe9,A,0bAAAAAA01]
1236 # CHECK-NEXT:                            #   fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14
1237          bngl+ 2, target
1238 # CHECK: blel+ 0, target                  # encoding: [0x40,0xe1,A,0bAAAAAA01]
1239 # CHECK-NEXT:                            #   fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14
1240          bngl+ target
1241 # CHECK: blela+ 2, target                 # encoding: [0x40,0xe9,A,0bAAAAAA11]
1242 # CHECK-NEXT:                            #   fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14abs
1243          bngla+ 2, target
1244 # CHECK: blela+ 0, target                 # encoding: [0x40,0xe1,A,0bAAAAAA11]
1245 # CHECK-NEXT:                            #   fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14abs
1246          bngla+ target
1247 # CHECK: blelrl+ 2                        # encoding: [0x4c,0xe9,0x00,0x21]
1248          bnglrl+ 2
1249 # CHECK: blelrl+ 0                        # encoding: [0x4c,0xe1,0x00,0x21]
1250          bnglrl+
1251 # CHECK: blectrl+ 2                       # encoding: [0x4c,0xe9,0x04,0x21]
1252          bngctrl+ 2
1253 # CHECK: blectrl+ 0                       # encoding: [0x4c,0xe1,0x04,0x21]
1254          bngctrl+
1255
1256 # CHECK: ble- 2, target                   # encoding: [0x40,0xc9,A,0bAAAAAA00]
1257 # CHECK-NEXT:                            #   fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14
1258          bng- 2, target
1259 # CHECK: ble- 0, target                   # encoding: [0x40,0xc1,A,0bAAAAAA00]
1260 # CHECK-NEXT:                            #   fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14
1261          bng- target
1262 # CHECK: blea- 2, target                  # encoding: [0x40,0xc9,A,0bAAAAAA10]
1263 # CHECK-NEXT:                            #   fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14abs
1264          bnga- 2, target
1265 # CHECK: blea- 0, target                  # encoding: [0x40,0xc1,A,0bAAAAAA10]
1266 # CHECK-NEXT:                            #   fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14abs
1267          bnga- target
1268 # CHECK: blelr- 2                         # encoding: [0x4c,0xc9,0x00,0x20]
1269          bnglr- 2
1270 # CHECK: blelr- 0                         # encoding: [0x4c,0xc1,0x00,0x20]
1271          bnglr-
1272 # CHECK: blectr- 2                        # encoding: [0x4c,0xc9,0x04,0x20]
1273          bngctr- 2
1274 # CHECK: blectr- 0                        # encoding: [0x4c,0xc1,0x04,0x20]
1275          bngctr-
1276 # CHECK: blel- 2, target                  # encoding: [0x40,0xc9,A,0bAAAAAA01]
1277 # CHECK-NEXT:                            #   fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14
1278          bngl- 2, target
1279 # CHECK: blel- 0, target                  # encoding: [0x40,0xc1,A,0bAAAAAA01]
1280 # CHECK-NEXT:                            #   fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14
1281          bngl- target
1282 # CHECK: blela- 2, target                 # encoding: [0x40,0xc9,A,0bAAAAAA11]
1283 # CHECK-NEXT:                            #   fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14abs
1284          bngla- 2, target
1285 # CHECK: blela- 0, target                 # encoding: [0x40,0xc1,A,0bAAAAAA11]
1286 # CHECK-NEXT:                            #   fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14abs
1287          bngla- target
1288 # CHECK: blelrl- 2                        # encoding: [0x4c,0xc9,0x00,0x21]
1289          bnglrl- 2
1290 # CHECK: blelrl- 0                        # encoding: [0x4c,0xc1,0x00,0x21]
1291          bnglrl-
1292 # CHECK: blectrl- 2                       # encoding: [0x4c,0xc9,0x04,0x21]
1293          bngctrl- 2
1294 # CHECK: blectrl- 0                       # encoding: [0x4c,0xc1,0x04,0x21]
1295          bngctrl-
1296
1297 # CHECK: bun 2, target                   # encoding: [0x41,0x8b,A,0bAAAAAA00]
1298 # CHECK-NEXT:                            #   fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14
1299          bso 2, target
1300 # CHECK: bun 0, target                   # encoding: [0x41,0x83,A,0bAAAAAA00]
1301 # CHECK-NEXT:                            #   fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14
1302          bso target
1303 # CHECK: buna 2, target                  # encoding: [0x41,0x8b,A,0bAAAAAA10]
1304 # CHECK-NEXT:                            #   fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14abs
1305          bsoa 2, target
1306 # CHECK: buna 0, target                  # encoding: [0x41,0x83,A,0bAAAAAA10]
1307 # CHECK-NEXT:                            #   fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14abs
1308          bsoa target
1309 # CHECK: bunlr 2                         # encoding: [0x4d,0x8b,0x00,0x20]
1310          bsolr 2
1311 # CHECK: bunlr 0                         # encoding: [0x4d,0x83,0x00,0x20]
1312          bsolr
1313 # CHECK: bunctr 2                        # encoding: [0x4d,0x8b,0x04,0x20]
1314          bsoctr 2
1315 # CHECK: bunctr 0                        # encoding: [0x4d,0x83,0x04,0x20]
1316          bsoctr
1317 # CHECK: bunl 2, target                  # encoding: [0x41,0x8b,A,0bAAAAAA01]
1318 # CHECK-NEXT:                            #   fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14
1319          bsol 2, target
1320 # CHECK: bunl 0, target                  # encoding: [0x41,0x83,A,0bAAAAAA01]
1321 # CHECK-NEXT:                            #   fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14
1322          bsol target
1323 # CHECK: bunla 2, target                 # encoding: [0x41,0x8b,A,0bAAAAAA11]
1324 # CHECK-NEXT:                            #   fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14abs
1325          bsola 2, target
1326 # CHECK: bunla 0, target                 # encoding: [0x41,0x83,A,0bAAAAAA11]
1327 # CHECK-NEXT:                            #   fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14abs
1328          bsola target
1329 # CHECK: bunlrl 2                        # encoding: [0x4d,0x8b,0x00,0x21]
1330          bsolrl 2
1331 # CHECK: bunlrl 0                        # encoding: [0x4d,0x83,0x00,0x21]
1332          bsolrl
1333 # CHECK: bunctrl 2                       # encoding: [0x4d,0x8b,0x04,0x21]
1334          bsoctrl 2
1335 # CHECK: bunctrl 0                       # encoding: [0x4d,0x83,0x04,0x21]
1336          bsoctrl
1337
1338 # CHECK: bun+ 2, target                  # encoding: [0x41,0xeb,A,0bAAAAAA00]
1339 # CHECK-NEXT:                            #   fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14
1340          bso+ 2, target
1341 # CHECK: bun+ 0, target                  # encoding: [0x41,0xe3,A,0bAAAAAA00]
1342 # CHECK-NEXT:                            #   fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14
1343          bso+ target
1344 # CHECK: buna+ 2, target                 # encoding: [0x41,0xeb,A,0bAAAAAA10]
1345 # CHECK-NEXT:                            #   fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14abs
1346          bsoa+ 2, target
1347 # CHECK: buna+ 0, target                 # encoding: [0x41,0xe3,A,0bAAAAAA10]
1348 # CHECK-NEXT:                            #   fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14abs
1349          bsoa+ target
1350 # CHECK: bunlr+ 2                        # encoding: [0x4d,0xeb,0x00,0x20]
1351          bsolr+ 2
1352 # CHECK: bunlr+ 0                        # encoding: [0x4d,0xe3,0x00,0x20]
1353          bsolr+
1354 # CHECK: bunctr+ 2                       # encoding: [0x4d,0xeb,0x04,0x20]
1355          bsoctr+ 2
1356 # CHECK: bunctr+ 0                       # encoding: [0x4d,0xe3,0x04,0x20]
1357          bsoctr+
1358 # CHECK: bunl+ 2, target                 # encoding: [0x41,0xeb,A,0bAAAAAA01]
1359 # CHECK-NEXT:                            #   fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14
1360          bsol+ 2, target
1361 # CHECK: bunl+ 0, target                 # encoding: [0x41,0xe3,A,0bAAAAAA01]
1362 # CHECK-NEXT:                            #   fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14
1363          bsol+ target
1364 # CHECK: bunla+ 2, target                # encoding: [0x41,0xeb,A,0bAAAAAA11]
1365 # CHECK-NEXT:                            #   fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14abs
1366          bsola+ 2, target
1367 # CHECK: bunla+ 0, target                # encoding: [0x41,0xe3,A,0bAAAAAA11]
1368 # CHECK-NEXT:                            #   fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14abs
1369          bsola+ target
1370 # CHECK: bunlrl+ 2                       # encoding: [0x4d,0xeb,0x00,0x21]
1371          bsolrl+ 2
1372 # CHECK: bunlrl+ 0                       # encoding: [0x4d,0xe3,0x00,0x21]
1373          bsolrl+
1374 # CHECK: bunctrl+ 2                      # encoding: [0x4d,0xeb,0x04,0x21]
1375          bsoctrl+ 2
1376 # CHECK: bunctrl+ 0                      # encoding: [0x4d,0xe3,0x04,0x21]
1377          bsoctrl+
1378
1379 # CHECK: bun- 2, target                  # encoding: [0x41,0xcb,A,0bAAAAAA00]
1380 # CHECK-NEXT:                            #   fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14
1381          bso- 2, target
1382 # CHECK: bun- 0, target                  # encoding: [0x41,0xc3,A,0bAAAAAA00]
1383 # CHECK-NEXT:                            #   fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14
1384          bso- target
1385 # CHECK: buna- 2, target                 # encoding: [0x41,0xcb,A,0bAAAAAA10]
1386 # CHECK-NEXT:                            #   fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14abs
1387          bsoa- 2, target
1388 # CHECK: buna- 0, target                 # encoding: [0x41,0xc3,A,0bAAAAAA10]
1389 # CHECK-NEXT:                            #   fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14abs
1390          bsoa- target
1391 # CHECK: bunlr- 2                        # encoding: [0x4d,0xcb,0x00,0x20]
1392          bsolr- 2
1393 # CHECK: bunlr- 0                        # encoding: [0x4d,0xc3,0x00,0x20]
1394          bsolr-
1395 # CHECK: bunctr- 2                       # encoding: [0x4d,0xcb,0x04,0x20]
1396          bsoctr- 2
1397 # CHECK: bunctr- 0                       # encoding: [0x4d,0xc3,0x04,0x20]
1398          bsoctr-
1399 # CHECK: bunl- 2, target                 # encoding: [0x41,0xcb,A,0bAAAAAA01]
1400 # CHECK-NEXT:                            #   fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14
1401          bsol- 2, target
1402 # CHECK: bunl- 0, target                 # encoding: [0x41,0xc3,A,0bAAAAAA01]
1403 # CHECK-NEXT:                            #   fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14
1404          bsol- target
1405 # CHECK: bunla- 2, target                # encoding: [0x41,0xcb,A,0bAAAAAA11]
1406 # CHECK-NEXT:                            #   fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14abs
1407          bsola- 2, target
1408 # CHECK: bunla- 0, target                # encoding: [0x41,0xc3,A,0bAAAAAA11]
1409 # CHECK-NEXT:                            #   fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14abs
1410          bsola- target
1411 # CHECK: bunlrl- 2                       # encoding: [0x4d,0xcb,0x00,0x21]
1412          bsolrl- 2
1413 # CHECK: bunlrl- 0                       # encoding: [0x4d,0xc3,0x00,0x21]
1414          bsolrl-
1415 # CHECK: bunctrl- 2                      # encoding: [0x4d,0xcb,0x04,0x21]
1416          bsoctrl- 2
1417 # CHECK: bunctrl- 0                      # encoding: [0x4d,0xc3,0x04,0x21]
1418          bsoctrl-
1419
1420 # CHECK: bnu 2, target                   # encoding: [0x40,0x8b,A,0bAAAAAA00]
1421 # CHECK-NEXT:                            #   fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14
1422          bns 2, target
1423 # CHECK: bnu 0, target                   # encoding: [0x40,0x83,A,0bAAAAAA00]
1424 # CHECK-NEXT:                            #   fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14
1425          bns target
1426 # CHECK: bnua 2, target                  # encoding: [0x40,0x8b,A,0bAAAAAA10]
1427 # CHECK-NEXT:                            #   fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14abs
1428          bnsa 2, target
1429 # CHECK: bnua 0, target                  # encoding: [0x40,0x83,A,0bAAAAAA10]
1430 # CHECK-NEXT:                            #   fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14abs
1431          bnsa target
1432 # CHECK: bnulr 2                         # encoding: [0x4c,0x8b,0x00,0x20]
1433          bnslr 2
1434 # CHECK: bnulr 0                         # encoding: [0x4c,0x83,0x00,0x20]
1435          bnslr
1436 # CHECK: bnuctr 2                        # encoding: [0x4c,0x8b,0x04,0x20]
1437          bnsctr 2
1438 # CHECK: bnuctr 0                        # encoding: [0x4c,0x83,0x04,0x20]
1439          bnsctr
1440 # CHECK: bnul 2, target                  # encoding: [0x40,0x8b,A,0bAAAAAA01]
1441 # CHECK-NEXT:                            #   fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14
1442          bnsl 2, target
1443 # CHECK: bnul 0, target                  # encoding: [0x40,0x83,A,0bAAAAAA01]
1444 # CHECK-NEXT:                            #   fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14
1445          bnsl target
1446 # CHECK: bnula 2, target                 # encoding: [0x40,0x8b,A,0bAAAAAA11]
1447 # CHECK-NEXT:                            #   fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14abs
1448          bnsla 2, target
1449 # CHECK: bnula 0, target                 # encoding: [0x40,0x83,A,0bAAAAAA11]
1450 # CHECK-NEXT:                            #   fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14abs
1451          bnsla target
1452 # CHECK: bnulrl 2                        # encoding: [0x4c,0x8b,0x00,0x21]
1453          bnslrl 2
1454 # CHECK: bnulrl 0                        # encoding: [0x4c,0x83,0x00,0x21]
1455          bnslrl
1456 # CHECK: bnuctrl 2                       # encoding: [0x4c,0x8b,0x04,0x21]
1457          bnsctrl 2
1458 # CHECK: bnuctrl 0                       # encoding: [0x4c,0x83,0x04,0x21]
1459          bnsctrl
1460
1461 # CHECK: bnu+ 2, target                  # encoding: [0x40,0xeb,A,0bAAAAAA00]
1462 # CHECK-NEXT:                            #   fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14
1463          bns+ 2, target
1464 # CHECK: bnu+ 0, target                  # encoding: [0x40,0xe3,A,0bAAAAAA00]
1465 # CHECK-NEXT:                            #   fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14
1466          bns+ target
1467 # CHECK: bnua+ 2, target                 # encoding: [0x40,0xeb,A,0bAAAAAA10]
1468 # CHECK-NEXT:                            #   fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14abs
1469          bnsa+ 2, target
1470 # CHECK: bnua+ 0, target                 # encoding: [0x40,0xe3,A,0bAAAAAA10]
1471 # CHECK-NEXT:                            #   fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14abs
1472          bnsa+ target
1473 # CHECK: bnulr+ 2                        # encoding: [0x4c,0xeb,0x00,0x20]
1474          bnslr+ 2
1475 # CHECK: bnulr+ 0                        # encoding: [0x4c,0xe3,0x00,0x20]
1476          bnslr+
1477 # CHECK: bnuctr+ 2                       # encoding: [0x4c,0xeb,0x04,0x20]
1478          bnsctr+ 2
1479 # CHECK: bnuctr+ 0                       # encoding: [0x4c,0xe3,0x04,0x20]
1480          bnsctr+
1481 # CHECK: bnul+ 2, target                 # encoding: [0x40,0xeb,A,0bAAAAAA01]
1482 # CHECK-NEXT:                            #   fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14
1483          bnsl+ 2, target
1484 # CHECK: bnul+ 0, target                 # encoding: [0x40,0xe3,A,0bAAAAAA01]
1485 # CHECK-NEXT:                            #   fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14
1486          bnsl+ target
1487 # CHECK: bnula+ 2, target                # encoding: [0x40,0xeb,A,0bAAAAAA11]
1488 # CHECK-NEXT:                            #   fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14abs
1489          bnsla+ 2, target
1490 # CHECK: bnula+ 0, target                # encoding: [0x40,0xe3,A,0bAAAAAA11]
1491 # CHECK-NEXT:                            #   fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14abs
1492          bnsla+ target
1493 # CHECK: bnulrl+ 2                       # encoding: [0x4c,0xeb,0x00,0x21]
1494          bnslrl+ 2
1495 # CHECK: bnulrl+ 0                       # encoding: [0x4c,0xe3,0x00,0x21]
1496          bnslrl+
1497 # CHECK: bnuctrl+ 2                      # encoding: [0x4c,0xeb,0x04,0x21]
1498          bnsctrl+ 2
1499 # CHECK: bnuctrl+ 0                      # encoding: [0x4c,0xe3,0x04,0x21]
1500          bnsctrl+
1501
1502 # CHECK: bnu- 2, target                  # encoding: [0x40,0xcb,A,0bAAAAAA00]
1503 # CHECK-NEXT:                            #   fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14
1504          bns- 2, target
1505 # CHECK: bnu- 0, target                  # encoding: [0x40,0xc3,A,0bAAAAAA00]
1506 # CHECK-NEXT:                            #   fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14
1507          bns- target
1508 # CHECK: bnua- 2, target                 # encoding: [0x40,0xcb,A,0bAAAAAA10]
1509 # CHECK-NEXT:                            #   fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14abs
1510          bnsa- 2, target
1511 # CHECK: bnua- 0, target                 # encoding: [0x40,0xc3,A,0bAAAAAA10]
1512 # CHECK-NEXT:                            #   fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14abs
1513          bnsa- target
1514 # CHECK: bnulr- 2                        # encoding: [0x4c,0xcb,0x00,0x20]
1515          bnslr- 2
1516 # CHECK: bnulr- 0                        # encoding: [0x4c,0xc3,0x00,0x20]
1517          bnslr-
1518 # CHECK: bnuctr- 2                       # encoding: [0x4c,0xcb,0x04,0x20]
1519          bnsctr- 2
1520 # CHECK: bnuctr- 0                       # encoding: [0x4c,0xc3,0x04,0x20]
1521          bnsctr-
1522 # CHECK: bnul- 2, target                 # encoding: [0x40,0xcb,A,0bAAAAAA01]
1523 # CHECK-NEXT:                            #   fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14
1524          bnsl- 2, target
1525 # CHECK: bnul- 0, target                 # encoding: [0x40,0xc3,A,0bAAAAAA01]
1526 # CHECK-NEXT:                            #   fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14
1527          bnsl- target
1528 # CHECK: bnula- 2, target                # encoding: [0x40,0xcb,A,0bAAAAAA11]
1529 # CHECK-NEXT:                            #   fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14abs
1530          bnsla- 2, target
1531 # CHECK: bnula- 0, target                # encoding: [0x40,0xc3,A,0bAAAAAA11]
1532 # CHECK-NEXT:                            #   fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14abs
1533          bnsla- target
1534 # CHECK: bnulrl- 2                       # encoding: [0x4c,0xcb,0x00,0x21]
1535          bnslrl- 2
1536 # CHECK: bnulrl- 0                       # encoding: [0x4c,0xc3,0x00,0x21]
1537          bnslrl-
1538 # CHECK: bnuctrl- 2                      # encoding: [0x4c,0xcb,0x04,0x21]
1539          bnsctrl- 2
1540 # CHECK: bnuctrl- 0                      # encoding: [0x4c,0xc3,0x04,0x21]
1541          bnsctrl-
1542
1543 # CHECK: bun 2, target                   # encoding: [0x41,0x8b,A,0bAAAAAA00]
1544 # CHECK-NEXT:                            #   fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14
1545          bun 2, target
1546 # CHECK: bun 0, target                   # encoding: [0x41,0x83,A,0bAAAAAA00]
1547 # CHECK-NEXT:                            #   fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14
1548          bun target
1549 # CHECK: buna 2, target                  # encoding: [0x41,0x8b,A,0bAAAAAA10]
1550 # CHECK-NEXT:                            #   fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14abs
1551          buna 2, target
1552 # CHECK: buna 0, target                  # encoding: [0x41,0x83,A,0bAAAAAA10]
1553 # CHECK-NEXT:                            #   fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14abs
1554          buna target
1555 # CHECK: bunlr 2                         # encoding: [0x4d,0x8b,0x00,0x20]
1556          bunlr 2
1557 # CHECK: bunlr 0                         # encoding: [0x4d,0x83,0x00,0x20]
1558          bunlr
1559 # CHECK: bunctr 2                        # encoding: [0x4d,0x8b,0x04,0x20]
1560          bunctr 2
1561 # CHECK: bunctr 0                        # encoding: [0x4d,0x83,0x04,0x20]
1562          bunctr
1563 # CHECK: bunl 2, target                  # encoding: [0x41,0x8b,A,0bAAAAAA01]
1564 # CHECK-NEXT:                            #   fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14
1565          bunl 2, target
1566 # CHECK: bunl 0, target                  # encoding: [0x41,0x83,A,0bAAAAAA01]
1567 # CHECK-NEXT:                            #   fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14
1568          bunl target
1569 # CHECK: bunla 2, target                 # encoding: [0x41,0x8b,A,0bAAAAAA11]
1570 # CHECK-NEXT:                            #   fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14abs
1571          bunla 2, target
1572 # CHECK: bunla 0, target                 # encoding: [0x41,0x83,A,0bAAAAAA11]
1573 # CHECK-NEXT:                            #   fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14abs
1574          bunla target
1575 # CHECK: bunlrl 2                        # encoding: [0x4d,0x8b,0x00,0x21]
1576          bunlrl 2
1577 # CHECK: bunlrl 0                        # encoding: [0x4d,0x83,0x00,0x21]
1578          bunlrl
1579 # CHECK: bunctrl 2                       # encoding: [0x4d,0x8b,0x04,0x21]
1580          bunctrl 2
1581 # CHECK: bunctrl 0                       # encoding: [0x4d,0x83,0x04,0x21]
1582          bunctrl
1583
1584 # CHECK: bun+ 2, target                  # encoding: [0x41,0xeb,A,0bAAAAAA00]
1585 # CHECK-NEXT:                            #   fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14
1586          bun+ 2, target
1587 # CHECK: bun+ 0, target                  # encoding: [0x41,0xe3,A,0bAAAAAA00]
1588 # CHECK-NEXT:                            #   fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14
1589          bun+ target
1590 # CHECK: buna+ 2, target                 # encoding: [0x41,0xeb,A,0bAAAAAA10]
1591 # CHECK-NEXT:                            #   fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14abs
1592          buna+ 2, target
1593 # CHECK: buna+ 0, target                 # encoding: [0x41,0xe3,A,0bAAAAAA10]
1594 # CHECK-NEXT:                            #   fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14abs
1595          buna+ target
1596 # CHECK: bunlr+ 2                        # encoding: [0x4d,0xeb,0x00,0x20]
1597          bunlr+ 2
1598 # CHECK: bunlr+ 0                        # encoding: [0x4d,0xe3,0x00,0x20]
1599          bunlr+
1600 # CHECK: bunctr+ 2                       # encoding: [0x4d,0xeb,0x04,0x20]
1601          bunctr+ 2
1602 # CHECK: bunctr+ 0                       # encoding: [0x4d,0xe3,0x04,0x20]
1603          bunctr+
1604 # CHECK: bunl+ 2, target                 # encoding: [0x41,0xeb,A,0bAAAAAA01]
1605 # CHECK-NEXT:                            #   fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14
1606          bunl+ 2, target
1607 # CHECK: bunl+ 0, target                 # encoding: [0x41,0xe3,A,0bAAAAAA01]
1608 # CHECK-NEXT:                            #   fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14
1609          bunl+ target
1610 # CHECK: bunla+ 2, target                # encoding: [0x41,0xeb,A,0bAAAAAA11]
1611 # CHECK-NEXT:                            #   fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14abs
1612          bunla+ 2, target
1613 # CHECK: bunla+ 0, target                # encoding: [0x41,0xe3,A,0bAAAAAA11]
1614 # CHECK-NEXT:                            #   fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14abs
1615          bunla+ target
1616 # CHECK: bunlrl+ 2                       # encoding: [0x4d,0xeb,0x00,0x21]
1617          bunlrl+ 2
1618 # CHECK: bunlrl+ 0                       # encoding: [0x4d,0xe3,0x00,0x21]
1619          bunlrl+
1620 # CHECK: bunctrl+ 2                      # encoding: [0x4d,0xeb,0x04,0x21]
1621          bunctrl+ 2
1622 # CHECK: bunctrl+ 0                      # encoding: [0x4d,0xe3,0x04,0x21]
1623          bunctrl+
1624
1625 # CHECK: bun- 2, target                  # encoding: [0x41,0xcb,A,0bAAAAAA00]
1626 # CHECK-NEXT:                            #   fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14
1627          bun- 2, target
1628 # CHECK: bun- 0, target                  # encoding: [0x41,0xc3,A,0bAAAAAA00]
1629 # CHECK-NEXT:                            #   fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14
1630          bun- target
1631 # CHECK: buna- 2, target                 # encoding: [0x41,0xcb,A,0bAAAAAA10]
1632 # CHECK-NEXT:                            #   fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14abs
1633          buna- 2, target
1634 # CHECK: buna- 0, target                 # encoding: [0x41,0xc3,A,0bAAAAAA10]
1635 # CHECK-NEXT:                            #   fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14abs
1636          buna- target
1637 # CHECK: bunlr- 2                        # encoding: [0x4d,0xcb,0x00,0x20]
1638          bunlr- 2
1639 # CHECK: bunlr- 0                        # encoding: [0x4d,0xc3,0x00,0x20]
1640          bunlr-
1641 # CHECK: bunctr- 2                       # encoding: [0x4d,0xcb,0x04,0x20]
1642          bunctr- 2
1643 # CHECK: bunctr- 0                       # encoding: [0x4d,0xc3,0x04,0x20]
1644          bunctr-
1645 # CHECK: bunl- 2, target                 # encoding: [0x41,0xcb,A,0bAAAAAA01]
1646 # CHECK-NEXT:                            #   fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14
1647          bunl- 2, target
1648 # CHECK: bunl- 0, target                 # encoding: [0x41,0xc3,A,0bAAAAAA01]
1649 # CHECK-NEXT:                            #   fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14
1650          bunl- target
1651 # CHECK: bunla- 2, target                # encoding: [0x41,0xcb,A,0bAAAAAA11]
1652 # CHECK-NEXT:                            #   fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14abs
1653          bunla- 2, target
1654 # CHECK: bunla- 0, target                # encoding: [0x41,0xc3,A,0bAAAAAA11]
1655 # CHECK-NEXT:                            #   fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14abs
1656          bunla- target
1657 # CHECK: bunlrl- 2                       # encoding: [0x4d,0xcb,0x00,0x21]
1658          bunlrl- 2
1659 # CHECK: bunlrl- 0                       # encoding: [0x4d,0xc3,0x00,0x21]
1660          bunlrl-
1661 # CHECK: bunctrl- 2                      # encoding: [0x4d,0xcb,0x04,0x21]
1662          bunctrl- 2
1663 # CHECK: bunctrl- 0                      # encoding: [0x4d,0xc3,0x04,0x21]
1664          bunctrl-
1665
1666 # CHECK: bnu 2, target                   # encoding: [0x40,0x8b,A,0bAAAAAA00]
1667 # CHECK-NEXT:                            #   fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14
1668          bnu 2, target
1669 # CHECK: bnu 0, target                   # encoding: [0x40,0x83,A,0bAAAAAA00]
1670 # CHECK-NEXT:                            #   fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14
1671          bnu target
1672 # CHECK: bnua 2, target                  # encoding: [0x40,0x8b,A,0bAAAAAA10]
1673 # CHECK-NEXT:                            #   fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14abs
1674          bnua 2, target
1675 # CHECK: bnua 0, target                  # encoding: [0x40,0x83,A,0bAAAAAA10]
1676 # CHECK-NEXT:                            #   fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14abs
1677          bnua target
1678 # CHECK: bnulr 2                         # encoding: [0x4c,0x8b,0x00,0x20]
1679          bnulr 2
1680 # CHECK: bnulr 0                         # encoding: [0x4c,0x83,0x00,0x20]
1681          bnulr
1682 # CHECK: bnuctr 2                        # encoding: [0x4c,0x8b,0x04,0x20]
1683          bnuctr 2
1684 # CHECK: bnuctr 0                        # encoding: [0x4c,0x83,0x04,0x20]
1685          bnuctr
1686 # CHECK: bnul 2, target                  # encoding: [0x40,0x8b,A,0bAAAAAA01]
1687 # CHECK-NEXT:                            #   fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14
1688          bnul 2, target
1689 # CHECK: bnul 0, target                  # encoding: [0x40,0x83,A,0bAAAAAA01]
1690 # CHECK-NEXT:                            #   fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14
1691          bnul target
1692 # CHECK: bnula 2, target                 # encoding: [0x40,0x8b,A,0bAAAAAA11]
1693 # CHECK-NEXT:                            #   fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14abs
1694          bnula 2, target
1695 # CHECK: bnula 0, target                 # encoding: [0x40,0x83,A,0bAAAAAA11]
1696 # CHECK-NEXT:                            #   fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14abs
1697          bnula target
1698 # CHECK: bnulrl 2                        # encoding: [0x4c,0x8b,0x00,0x21]
1699          bnulrl 2
1700 # CHECK: bnulrl 0                        # encoding: [0x4c,0x83,0x00,0x21]
1701          bnulrl
1702 # CHECK: bnuctrl 2                       # encoding: [0x4c,0x8b,0x04,0x21]
1703          bnuctrl 2
1704 # CHECK: bnuctrl 0                       # encoding: [0x4c,0x83,0x04,0x21]
1705          bnuctrl
1706
1707 # CHECK: bnu+ 2, target                  # encoding: [0x40,0xeb,A,0bAAAAAA00]
1708 # CHECK-NEXT:                            #   fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14
1709          bnu+ 2, target
1710 # CHECK: bnu+ 0, target                  # encoding: [0x40,0xe3,A,0bAAAAAA00]
1711 # CHECK-NEXT:                            #   fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14
1712          bnu+ target
1713 # CHECK: bnua+ 2, target                 # encoding: [0x40,0xeb,A,0bAAAAAA10]
1714 # CHECK-NEXT:                            #   fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14abs
1715          bnua+ 2, target
1716 # CHECK: bnua+ 0, target                 # encoding: [0x40,0xe3,A,0bAAAAAA10]
1717 # CHECK-NEXT:                            #   fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14abs
1718          bnua+ target
1719 # CHECK: bnulr+ 2                        # encoding: [0x4c,0xeb,0x00,0x20]
1720          bnulr+ 2
1721 # CHECK: bnulr+ 0                        # encoding: [0x4c,0xe3,0x00,0x20]
1722          bnulr+
1723 # CHECK: bnuctr+ 2                       # encoding: [0x4c,0xeb,0x04,0x20]
1724          bnuctr+ 2
1725 # CHECK: bnuctr+ 0                       # encoding: [0x4c,0xe3,0x04,0x20]
1726          bnuctr+
1727 # CHECK: bnul+ 2, target                 # encoding: [0x40,0xeb,A,0bAAAAAA01]
1728 # CHECK-NEXT:                            #   fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14
1729          bnul+ 2, target
1730 # CHECK: bnul+ 0, target                 # encoding: [0x40,0xe3,A,0bAAAAAA01]
1731 # CHECK-NEXT:                            #   fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14
1732          bnul+ target
1733 # CHECK: bnula+ 2, target                # encoding: [0x40,0xeb,A,0bAAAAAA11]
1734 # CHECK-NEXT:                            #   fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14abs
1735          bnula+ 2, target
1736 # CHECK: bnula+ 0, target                # encoding: [0x40,0xe3,A,0bAAAAAA11]
1737 # CHECK-NEXT:                            #   fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14abs
1738          bnula+ target
1739 # CHECK: bnulrl+ 2                       # encoding: [0x4c,0xeb,0x00,0x21]
1740          bnulrl+ 2
1741 # CHECK: bnulrl+ 0                       # encoding: [0x4c,0xe3,0x00,0x21]
1742          bnulrl+
1743 # CHECK: bnuctrl+ 2                      # encoding: [0x4c,0xeb,0x04,0x21]
1744          bnuctrl+ 2
1745 # CHECK: bnuctrl+ 0                      # encoding: [0x4c,0xe3,0x04,0x21]
1746          bnuctrl+
1747
1748 # CHECK: bnu- 2, target                  # encoding: [0x40,0xcb,A,0bAAAAAA00]
1749 # CHECK-NEXT:                            #   fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14
1750          bnu- 2, target
1751 # CHECK: bnu- 0, target                  # encoding: [0x40,0xc3,A,0bAAAAAA00]
1752 # CHECK-NEXT:                            #   fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14
1753          bnu- target
1754 # CHECK: bnua- 2, target                 # encoding: [0x40,0xcb,A,0bAAAAAA10]
1755 # CHECK-NEXT:                            #   fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14abs
1756          bnua- 2, target
1757 # CHECK: bnua- 0, target                 # encoding: [0x40,0xc3,A,0bAAAAAA10]
1758 # CHECK-NEXT:                            #   fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14abs
1759          bnua- target
1760 # CHECK: bnulr- 2                        # encoding: [0x4c,0xcb,0x00,0x20]
1761          bnulr- 2
1762 # CHECK: bnulr- 0                        # encoding: [0x4c,0xc3,0x00,0x20]
1763          bnulr-
1764 # CHECK: bnuctr- 2                       # encoding: [0x4c,0xcb,0x04,0x20]
1765          bnuctr- 2
1766 # CHECK: bnuctr- 0                       # encoding: [0x4c,0xc3,0x04,0x20]
1767          bnuctr-
1768 # CHECK: bnul- 2, target                 # encoding: [0x40,0xcb,A,0bAAAAAA01]
1769 # CHECK-NEXT:                            #   fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14
1770          bnul- 2, target
1771 # CHECK: bnul- 0, target                 # encoding: [0x40,0xc3,A,0bAAAAAA01]
1772 # CHECK-NEXT:                            #   fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14
1773          bnul- target
1774 # CHECK: bnula- 2, target                # encoding: [0x40,0xcb,A,0bAAAAAA11]
1775 # CHECK-NEXT:                            #   fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14abs
1776          bnula- 2, target
1777 # CHECK: bnula- 0, target                # encoding: [0x40,0xc3,A,0bAAAAAA11]
1778 # CHECK-NEXT:                            #   fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14abs
1779          bnula- target
1780 # CHECK: bnulrl- 2                       # encoding: [0x4c,0xcb,0x00,0x21]
1781          bnulrl- 2
1782 # CHECK: bnulrl- 0                       # encoding: [0x4c,0xc3,0x00,0x21]
1783          bnulrl-
1784 # CHECK: bnuctrl- 2                      # encoding: [0x4c,0xcb,0x04,0x21]
1785          bnuctrl- 2
1786 # CHECK: bnuctrl- 0                      # encoding: [0x4c,0xc3,0x04,0x21]
1787          bnuctrl-
1788
1789 # FIXME: Condition register logical mnemonics
1790
1791 # FIXME: Subtract mnemonics
1792
1793 # Compare mnemonics
1794
1795 # CHECK: cmpdi 2, 3, 128                 # encoding: [0x2d,0x23,0x00,0x80]
1796          cmpdi 2, 3, 128
1797 # CHECK: cmpdi 0, 3, 128                 # encoding: [0x2c,0x23,0x00,0x80]
1798          cmpdi 3, 128
1799 # CHECK: cmpd 2, 3, 4                    # encoding: [0x7d,0x23,0x20,0x00]
1800          cmpd 2, 3, 4
1801 # CHECK: cmpd 0, 3, 4                    # encoding: [0x7c,0x23,0x20,0x00]
1802          cmpd 3, 4
1803 # CHECK: cmpldi 2, 3, 128                # encoding: [0x29,0x23,0x00,0x80]
1804          cmpldi 2, 3, 128
1805 # CHECK: cmpldi 0, 3, 128                # encoding: [0x28,0x23,0x00,0x80]
1806          cmpldi 3, 128
1807 # CHECK: cmpld 2, 3, 4                   # encoding: [0x7d,0x23,0x20,0x40]
1808          cmpld 2, 3, 4
1809 # CHECK: cmpld 0, 3, 4                   # encoding: [0x7c,0x23,0x20,0x40]
1810          cmpld 3, 4
1811
1812 # CHECK: cmpwi 2, 3, 128                 # encoding: [0x2d,0x03,0x00,0x80]
1813          cmpwi 2, 3, 128
1814 # CHECK: cmpwi 0, 3, 128                 # encoding: [0x2c,0x03,0x00,0x80]
1815          cmpwi 3, 128
1816 # CHECK: cmpw 2, 3, 4                    # encoding: [0x7d,0x03,0x20,0x00]
1817          cmpw 2, 3, 4
1818 # CHECK: cmpw 0, 3, 4                    # encoding: [0x7c,0x03,0x20,0x00]
1819          cmpw 3, 4
1820 # CHECK: cmplwi 2, 3, 128                # encoding: [0x29,0x03,0x00,0x80]
1821          cmplwi 2, 3, 128
1822 # CHECK: cmplwi 0, 3, 128                # encoding: [0x28,0x03,0x00,0x80]
1823          cmplwi 3, 128
1824 # CHECK: cmplw 2, 3, 4                   # encoding: [0x7d,0x03,0x20,0x40]
1825          cmplw 2, 3, 4
1826 # CHECK: cmplw 0, 3, 4                   # encoding: [0x7c,0x03,0x20,0x40]
1827          cmplw 3, 4
1828
1829 # FIXME: Trap mnemonics
1830
1831 # Rotate and shift mnemonics
1832
1833 # FIXME: extldi 2, 3, 4, 5
1834 # FIXME: extrdi 2, 3, 4, 5
1835 # FIXME: insrdi 2, 3, 4, 5
1836 # FIXME: rotldi 2, 3, 4
1837 # FIXME: rotrdi 2, 3, 4
1838 # FIXME: rotld 2, 3, 4
1839 # CHECK: sldi 2, 3, 4                    # encoding: [0x78,0x62,0x26,0xe4]
1840          sldi 2, 3, 4
1841 # CHECK: rldicl 2, 3, 60, 4              # encoding: [0x78,0x62,0xe1,0x02]
1842          srdi 2, 3, 4
1843 # FIXME: clrldi 2, 3, 4
1844 # FIXME: clrrdi 2, 3, 4
1845 # FIXME: clrlsldi 2, 3, 4, 5
1846
1847 # FIXME: extlwi 2, 3, 4, 5
1848 # FIXME: extrwi 2, 3, 4, 5
1849 # FIXME: inslwi 2, 3, 4, 5
1850 # FIXME: insrwi 2, 3, 4, 5
1851 # FIXME: rotlwi 2, 3, 4
1852 # FIXME: rotrwi 2, 3, 4
1853 # FIXME: rotlw 2, 3, 4
1854 # CHECK: slwi 2, 3, 4                    # encoding: [0x54,0x62,0x20,0x36]
1855          slwi 2, 3, 4
1856 # CHECK: srwi 2, 3, 4                    # encoding: [0x54,0x62,0xe1,0x3e]
1857          srwi 2, 3, 4
1858 # FIXME: clrlwi 2, 3, 4
1859 # FIXME: clrrwi 2, 3, 4
1860 # FIXME: clrlslwi 2, 3, 4, 5
1861
1862 # Move to/from special purpose register mnemonics
1863
1864 # FIXME: mtxer 2
1865 # FIXME: mfxer 2
1866 # CHECK: mtlr 2                          # encoding: [0x7c,0x48,0x03,0xa6]
1867          mtlr 2
1868 # CHECK: mflr 2                          # encoding: [0x7c,0x48,0x02,0xa6]
1869          mflr 2
1870 # CHECK: mtctr 2                         # encoding: [0x7c,0x49,0x03,0xa6]
1871          mtctr 2
1872 # CHECK: mfctr 2                         # encoding: [0x7c,0x49,0x02,0xa6]
1873          mfctr 2
1874
1875 # Miscellaneous mnemonics
1876
1877 # CHECK: nop                             # encoding: [0x60,0x00,0x00,0x00]
1878          nop
1879 # FIXME: xnop
1880 # CHECK: li 2, 128                       # encoding: [0x38,0x40,0x00,0x80]
1881          li 2, 128
1882 # CHECK: lis 2, 128                      # encoding: [0x3c,0x40,0x00,0x80]
1883          lis 2, 128
1884 # FIXME: la 2, 128(4)
1885 # CHECK: mr 2, 3                         # encoding: [0x7c,0x62,0x1b,0x78]
1886          mr 2, 3
1887 # FIXME: not 2, 3
1888