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