blob: 0ffe0bf6b7c23b15d0c7488468718ad2398f408a [file] [log] [blame]
Ulrich Weigandd8394902013-05-03 19:50:27 +00001
Ulrich Weigandcae3a172014-03-24 18:16:09 +00002# RUN: llvm-mc -triple powerpc64-unknown-unknown --show-encoding %s | FileCheck -check-prefix=CHECK-BE %s
3# RUN: llvm-mc -triple powerpc64le-unknown-unknown --show-encoding %s | FileCheck -check-prefix=CHECK-LE %s
Ulrich Weigandd8394902013-05-03 19:50:27 +00004
Ulrich Weigandb86cb7d2013-07-04 14:24:00 +00005# Condition register bit symbols
6
Ulrich Weigandcae3a172014-03-24 18:16:09 +00007# CHECK-BE: beqlr 0 # encoding: [0x4d,0x82,0x00,0x20]
8# CHECK-LE: beqlr 0 # encoding: [0x20,0x00,0x82,0x4d]
9 beqlr cr0
10# CHECK-BE: beqlr 1 # encoding: [0x4d,0x86,0x00,0x20]
11# CHECK-LE: beqlr 1 # encoding: [0x20,0x00,0x86,0x4d]
12 beqlr cr1
13# CHECK-BE: beqlr 2 # encoding: [0x4d,0x8a,0x00,0x20]
14# CHECK-LE: beqlr 2 # encoding: [0x20,0x00,0x8a,0x4d]
15 beqlr cr2
16# CHECK-BE: beqlr 3 # encoding: [0x4d,0x8e,0x00,0x20]
17# CHECK-LE: beqlr 3 # encoding: [0x20,0x00,0x8e,0x4d]
18 beqlr cr3
19# CHECK-BE: beqlr 4 # encoding: [0x4d,0x92,0x00,0x20]
20# CHECK-LE: beqlr 4 # encoding: [0x20,0x00,0x92,0x4d]
21 beqlr cr4
22# CHECK-BE: beqlr 5 # encoding: [0x4d,0x96,0x00,0x20]
23# CHECK-LE: beqlr 5 # encoding: [0x20,0x00,0x96,0x4d]
24 beqlr cr5
25# CHECK-BE: beqlr 6 # encoding: [0x4d,0x9a,0x00,0x20]
26# CHECK-LE: beqlr 6 # encoding: [0x20,0x00,0x9a,0x4d]
27 beqlr cr6
28# CHECK-BE: beqlr 7 # encoding: [0x4d,0x9e,0x00,0x20]
29# CHECK-LE: beqlr 7 # encoding: [0x20,0x00,0x9e,0x4d]
30 beqlr cr7
Ulrich Weigandb86cb7d2013-07-04 14:24:00 +000031
Ulrich Weigandcae3a172014-03-24 18:16:09 +000032# CHECK-BE: bclr 12, 0, 0 # encoding: [0x4d,0x80,0x00,0x20]
33# CHECK-LE: bclr 12, 0, 0 # encoding: [0x20,0x00,0x80,0x4d]
34 btlr 4*cr0+lt
35# CHECK-BE: bclr 12, 1, 0 # encoding: [0x4d,0x81,0x00,0x20]
36# CHECK-LE: bclr 12, 1, 0 # encoding: [0x20,0x00,0x81,0x4d]
37 btlr 4*cr0+gt
38# CHECK-BE: bclr 12, 2, 0 # encoding: [0x4d,0x82,0x00,0x20]
39# CHECK-LE: bclr 12, 2, 0 # encoding: [0x20,0x00,0x82,0x4d]
40 btlr 4*cr0+eq
41# CHECK-BE: bclr 12, 3, 0 # encoding: [0x4d,0x83,0x00,0x20]
42# CHECK-LE: bclr 12, 3, 0 # encoding: [0x20,0x00,0x83,0x4d]
43 btlr 4*cr0+so
44# CHECK-BE: bclr 12, 3, 0 # encoding: [0x4d,0x83,0x00,0x20]
45# CHECK-LE: bclr 12, 3, 0 # encoding: [0x20,0x00,0x83,0x4d]
46 btlr 4*cr0+un
47# CHECK-BE: bclr 12, 4, 0 # encoding: [0x4d,0x84,0x00,0x20]
48# CHECK-LE: bclr 12, 4, 0 # encoding: [0x20,0x00,0x84,0x4d]
49 btlr 4*cr1+lt
50# CHECK-BE: bclr 12, 5, 0 # encoding: [0x4d,0x85,0x00,0x20]
51# CHECK-LE: bclr 12, 5, 0 # encoding: [0x20,0x00,0x85,0x4d]
52 btlr 4*cr1+gt
53# CHECK-BE: bclr 12, 6, 0 # encoding: [0x4d,0x86,0x00,0x20]
54# CHECK-LE: bclr 12, 6, 0 # encoding: [0x20,0x00,0x86,0x4d]
55 btlr 4*cr1+eq
56# CHECK-BE: bclr 12, 7, 0 # encoding: [0x4d,0x87,0x00,0x20]
57# CHECK-LE: bclr 12, 7, 0 # encoding: [0x20,0x00,0x87,0x4d]
58 btlr 4*cr1+so
59# CHECK-BE: bclr 12, 7, 0 # encoding: [0x4d,0x87,0x00,0x20]
60# CHECK-LE: bclr 12, 7, 0 # encoding: [0x20,0x00,0x87,0x4d]
61 btlr 4*cr1+un
62# CHECK-BE: bclr 12, 8, 0 # encoding: [0x4d,0x88,0x00,0x20]
63# CHECK-LE: bclr 12, 8, 0 # encoding: [0x20,0x00,0x88,0x4d]
64 btlr 4*cr2+lt
65# CHECK-BE: bclr 12, 9, 0 # encoding: [0x4d,0x89,0x00,0x20]
66# CHECK-LE: bclr 12, 9, 0 # encoding: [0x20,0x00,0x89,0x4d]
67 btlr 4*cr2+gt
68# CHECK-BE: bclr 12, 10, 0 # encoding: [0x4d,0x8a,0x00,0x20]
69# CHECK-LE: bclr 12, 10, 0 # encoding: [0x20,0x00,0x8a,0x4d]
70 btlr 4*cr2+eq
71# CHECK-BE: bclr 12, 11, 0 # encoding: [0x4d,0x8b,0x00,0x20]
72# CHECK-LE: bclr 12, 11, 0 # encoding: [0x20,0x00,0x8b,0x4d]
73 btlr 4*cr2+so
74# CHECK-BE: bclr 12, 11, 0 # encoding: [0x4d,0x8b,0x00,0x20]
75# CHECK-LE: bclr 12, 11, 0 # encoding: [0x20,0x00,0x8b,0x4d]
76 btlr 4*cr2+un
77# CHECK-BE: bclr 12, 12, 0 # encoding: [0x4d,0x8c,0x00,0x20]
78# CHECK-LE: bclr 12, 12, 0 # encoding: [0x20,0x00,0x8c,0x4d]
79 btlr 4*cr3+lt
80# CHECK-BE: bclr 12, 13, 0 # encoding: [0x4d,0x8d,0x00,0x20]
81# CHECK-LE: bclr 12, 13, 0 # encoding: [0x20,0x00,0x8d,0x4d]
82 btlr 4*cr3+gt
83# CHECK-BE: bclr 12, 14, 0 # encoding: [0x4d,0x8e,0x00,0x20]
84# CHECK-LE: bclr 12, 14, 0 # encoding: [0x20,0x00,0x8e,0x4d]
85 btlr 4*cr3+eq
86# CHECK-BE: bclr 12, 15, 0 # encoding: [0x4d,0x8f,0x00,0x20]
87# CHECK-LE: bclr 12, 15, 0 # encoding: [0x20,0x00,0x8f,0x4d]
88 btlr 4*cr3+so
89# CHECK-BE: bclr 12, 15, 0 # encoding: [0x4d,0x8f,0x00,0x20]
90# CHECK-LE: bclr 12, 15, 0 # encoding: [0x20,0x00,0x8f,0x4d]
91 btlr 4*cr3+un
92# CHECK-BE: bclr 12, 16, 0 # encoding: [0x4d,0x90,0x00,0x20]
93# CHECK-LE: bclr 12, 16, 0 # encoding: [0x20,0x00,0x90,0x4d]
94 btlr 4*cr4+lt
95# CHECK-BE: bclr 12, 17, 0 # encoding: [0x4d,0x91,0x00,0x20]
96# CHECK-LE: bclr 12, 17, 0 # encoding: [0x20,0x00,0x91,0x4d]
97 btlr 4*cr4+gt
98# CHECK-BE: bclr 12, 18, 0 # encoding: [0x4d,0x92,0x00,0x20]
99# CHECK-LE: bclr 12, 18, 0 # encoding: [0x20,0x00,0x92,0x4d]
100 btlr 4*cr4+eq
101# CHECK-BE: bclr 12, 19, 0 # encoding: [0x4d,0x93,0x00,0x20]
102# CHECK-LE: bclr 12, 19, 0 # encoding: [0x20,0x00,0x93,0x4d]
103 btlr 4*cr4+so
104# CHECK-BE: bclr 12, 19, 0 # encoding: [0x4d,0x93,0x00,0x20]
105# CHECK-LE: bclr 12, 19, 0 # encoding: [0x20,0x00,0x93,0x4d]
106 btlr 4*cr4+un
107# CHECK-BE: bclr 12, 20, 0 # encoding: [0x4d,0x94,0x00,0x20]
108# CHECK-LE: bclr 12, 20, 0 # encoding: [0x20,0x00,0x94,0x4d]
109 btlr 4*cr5+lt
110# CHECK-BE: bclr 12, 21, 0 # encoding: [0x4d,0x95,0x00,0x20]
111# CHECK-LE: bclr 12, 21, 0 # encoding: [0x20,0x00,0x95,0x4d]
112 btlr 4*cr5+gt
113# CHECK-BE: bclr 12, 22, 0 # encoding: [0x4d,0x96,0x00,0x20]
114# CHECK-LE: bclr 12, 22, 0 # encoding: [0x20,0x00,0x96,0x4d]
115 btlr 4*cr5+eq
116# CHECK-BE: bclr 12, 23, 0 # encoding: [0x4d,0x97,0x00,0x20]
117# CHECK-LE: bclr 12, 23, 0 # encoding: [0x20,0x00,0x97,0x4d]
118 btlr 4*cr5+so
119# CHECK-BE: bclr 12, 23, 0 # encoding: [0x4d,0x97,0x00,0x20]
120# CHECK-LE: bclr 12, 23, 0 # encoding: [0x20,0x00,0x97,0x4d]
121 btlr 4*cr5+un
122# CHECK-BE: bclr 12, 24, 0 # encoding: [0x4d,0x98,0x00,0x20]
123# CHECK-LE: bclr 12, 24, 0 # encoding: [0x20,0x00,0x98,0x4d]
124 btlr 4*cr6+lt
125# CHECK-BE: bclr 12, 25, 0 # encoding: [0x4d,0x99,0x00,0x20]
126# CHECK-LE: bclr 12, 25, 0 # encoding: [0x20,0x00,0x99,0x4d]
127 btlr 4*cr6+gt
128# CHECK-BE: bclr 12, 26, 0 # encoding: [0x4d,0x9a,0x00,0x20]
129# CHECK-LE: bclr 12, 26, 0 # encoding: [0x20,0x00,0x9a,0x4d]
130 btlr 4*cr6+eq
131# CHECK-BE: bclr 12, 27, 0 # encoding: [0x4d,0x9b,0x00,0x20]
132# CHECK-LE: bclr 12, 27, 0 # encoding: [0x20,0x00,0x9b,0x4d]
133 btlr 4*cr6+so
134# CHECK-BE: bclr 12, 27, 0 # encoding: [0x4d,0x9b,0x00,0x20]
135# CHECK-LE: bclr 12, 27, 0 # encoding: [0x20,0x00,0x9b,0x4d]
136 btlr 4*cr6+un
137# CHECK-BE: bclr 12, 28, 0 # encoding: [0x4d,0x9c,0x00,0x20]
138# CHECK-LE: bclr 12, 28, 0 # encoding: [0x20,0x00,0x9c,0x4d]
139 btlr 4*cr7+lt
140# CHECK-BE: bclr 12, 29, 0 # encoding: [0x4d,0x9d,0x00,0x20]
141# CHECK-LE: bclr 12, 29, 0 # encoding: [0x20,0x00,0x9d,0x4d]
142 btlr 4*cr7+gt
143# CHECK-BE: bclr 12, 30, 0 # encoding: [0x4d,0x9e,0x00,0x20]
144# CHECK-LE: bclr 12, 30, 0 # encoding: [0x20,0x00,0x9e,0x4d]
145 btlr 4*cr7+eq
146# CHECK-BE: bclr 12, 31, 0 # encoding: [0x4d,0x9f,0x00,0x20]
147# CHECK-LE: bclr 12, 31, 0 # encoding: [0x20,0x00,0x9f,0x4d]
148 btlr 4*cr7+so
149# CHECK-BE: bclr 12, 31, 0 # encoding: [0x4d,0x9f,0x00,0x20]
150# CHECK-LE: bclr 12, 31, 0 # encoding: [0x20,0x00,0x9f,0x4d]
151 btlr 4*cr7+un
Ulrich Weigandd8394902013-05-03 19:50:27 +0000152
153# Branch mnemonics
154
Ulrich Weigandcae3a172014-03-24 18:16:09 +0000155# CHECK-BE: blr # encoding: [0x4e,0x80,0x00,0x20]
156# CHECK-LE: blr # encoding: [0x20,0x00,0x80,0x4e]
157 blr
158# CHECK-BE: bctr # encoding: [0x4e,0x80,0x04,0x20]
159# CHECK-LE: bctr # encoding: [0x20,0x04,0x80,0x4e]
160 bctr
161# CHECK-BE: blrl # encoding: [0x4e,0x80,0x00,0x21]
162# CHECK-LE: blrl # encoding: [0x21,0x00,0x80,0x4e]
163 blrl
164# CHECK-BE: bctrl # encoding: [0x4e,0x80,0x04,0x21]
165# CHECK-LE: bctrl # encoding: [0x21,0x04,0x80,0x4e]
166 bctrl
Ulrich Weigandd8394902013-05-03 19:50:27 +0000167
Ulrich Weigandcae3a172014-03-24 18:16:09 +0000168# CHECK-BE: bc 12, 2, target # encoding: [0x41,0x82,A,0bAAAAAA00]
169# CHECK-LE: bc 12, 2, target # encoding: [0bAAAAAA00,A,0x82,0x41]
170# CHECK-BE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14
171# CHECK-LE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14
172 bt 2, target
173# CHECK-BE: bca 12, 2, target # encoding: [0x41,0x82,A,0bAAAAAA10]
174# CHECK-LE: bca 12, 2, target # encoding: [0bAAAAAA10,A,0x82,0x41]
175# CHECK-BE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14abs
176# CHECK-LE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14abs
177 bta 2, target
178# CHECK-BE: bclr 12, 2, 0 # encoding: [0x4d,0x82,0x00,0x20]
179# CHECK-LE: bclr 12, 2, 0 # encoding: [0x20,0x00,0x82,0x4d]
180 btlr 2
181# CHECK-BE: bcctr 12, 2, 0 # encoding: [0x4d,0x82,0x04,0x20]
182# CHECK-LE: bcctr 12, 2, 0 # encoding: [0x20,0x04,0x82,0x4d]
183 btctr 2
184# CHECK-BE: bcl 12, 2, target # encoding: [0x41,0x82,A,0bAAAAAA01]
185# CHECK-LE: bcl 12, 2, target # encoding: [0bAAAAAA01,A,0x82,0x41]
186# CHECK-BE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14
187# CHECK-LE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14
188 btl 2, target
189# CHECK-BE: bcla 12, 2, target # encoding: [0x41,0x82,A,0bAAAAAA11]
190# CHECK-LE: bcla 12, 2, target # encoding: [0bAAAAAA11,A,0x82,0x41]
191# CHECK-BE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14abs
192# CHECK-LE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14abs
193 btla 2, target
194# CHECK-BE: bclrl 12, 2, 0 # encoding: [0x4d,0x82,0x00,0x21]
195# CHECK-LE: bclrl 12, 2, 0 # encoding: [0x21,0x00,0x82,0x4d]
196 btlrl 2
197# CHECK-BE: bcctrl 12, 2, 0 # encoding: [0x4d,0x82,0x04,0x21]
198# CHECK-LE: bcctrl 12, 2, 0 # encoding: [0x21,0x04,0x82,0x4d]
199 btctrl 2
Ulrich Weigandd8394902013-05-03 19:50:27 +0000200
Ulrich Weigandcae3a172014-03-24 18:16:09 +0000201# CHECK-BE: bc 15, 2, target # encoding: [0x41,0xe2,A,0bAAAAAA00]
202# CHECK-LE: bc 15, 2, target # encoding: [0bAAAAAA00,A,0xe2,0x41]
203# CHECK-BE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14
204# CHECK-LE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14
205 bt+ 2, target
206# CHECK-BE: bca 15, 2, target # encoding: [0x41,0xe2,A,0bAAAAAA10]
207# CHECK-LE: bca 15, 2, target # encoding: [0bAAAAAA10,A,0xe2,0x41]
208# CHECK-BE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14abs
209# CHECK-LE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14abs
210 bta+ 2, target
211# CHECK-BE: bclr 15, 2, 0 # encoding: [0x4d,0xe2,0x00,0x20]
212# CHECK-LE: bclr 15, 2, 0 # encoding: [0x20,0x00,0xe2,0x4d]
213 btlr+ 2
214# CHECK-BE: bcctr 15, 2, 0 # encoding: [0x4d,0xe2,0x04,0x20]
215# CHECK-LE: bcctr 15, 2, 0 # encoding: [0x20,0x04,0xe2,0x4d]
216 btctr+ 2
217# CHECK-BE: bcl 15, 2, target # encoding: [0x41,0xe2,A,0bAAAAAA01]
218# CHECK-LE: bcl 15, 2, target # encoding: [0bAAAAAA01,A,0xe2,0x41]
219# CHECK-BE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14
220# CHECK-LE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14
221 btl+ 2, target
222# CHECK-BE: bcla 15, 2, target # encoding: [0x41,0xe2,A,0bAAAAAA11]
223# CHECK-LE: bcla 15, 2, target # encoding: [0bAAAAAA11,A,0xe2,0x41]
224# CHECK-BE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14abs
225# CHECK-LE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14abs
226 btla+ 2, target
227# CHECK-BE: bclrl 15, 2, 0 # encoding: [0x4d,0xe2,0x00,0x21]
228# CHECK-LE: bclrl 15, 2, 0 # encoding: [0x21,0x00,0xe2,0x4d]
229 btlrl+ 2
230# CHECK-BE: bcctrl 15, 2, 0 # encoding: [0x4d,0xe2,0x04,0x21]
231# CHECK-LE: bcctrl 15, 2, 0 # encoding: [0x21,0x04,0xe2,0x4d]
232 btctrl+ 2
Ulrich Weigand86247b62013-06-24 16:52:04 +0000233
Ulrich Weigandcae3a172014-03-24 18:16:09 +0000234# CHECK-BE: bc 14, 2, target # encoding: [0x41,0xc2,A,0bAAAAAA00]
235# CHECK-LE: bc 14, 2, target # encoding: [0bAAAAAA00,A,0xc2,0x41]
236# CHECK-BE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14
237# CHECK-LE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14
238 bt- 2, target
239# CHECK-BE: bca 14, 2, target # encoding: [0x41,0xc2,A,0bAAAAAA10]
240# CHECK-LE: bca 14, 2, target # encoding: [0bAAAAAA10,A,0xc2,0x41]
241# CHECK-BE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14abs
242# CHECK-LE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14abs
243 bta- 2, target
244# CHECK-BE: bclr 14, 2, 0 # encoding: [0x4d,0xc2,0x00,0x20]
245# CHECK-LE: bclr 14, 2, 0 # encoding: [0x20,0x00,0xc2,0x4d]
246 btlr- 2
247# CHECK-BE: bcctr 14, 2, 0 # encoding: [0x4d,0xc2,0x04,0x20]
248# CHECK-LE: bcctr 14, 2, 0 # encoding: [0x20,0x04,0xc2,0x4d]
249 btctr- 2
250# CHECK-BE: bcl 14, 2, target # encoding: [0x41,0xc2,A,0bAAAAAA01]
251# CHECK-LE: bcl 14, 2, target # encoding: [0bAAAAAA01,A,0xc2,0x41]
252# CHECK-BE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14
253# CHECK-LE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14
254 btl- 2, target
255# CHECK-BE: bcla 14, 2, target # encoding: [0x41,0xc2,A,0bAAAAAA11]
256# CHECK-LE: bcla 14, 2, target # encoding: [0bAAAAAA11,A,0xc2,0x41]
257# CHECK-BE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14abs
258# CHECK-LE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14abs
259 btla- 2, target
260# CHECK-BE: bclrl 14, 2, 0 # encoding: [0x4d,0xc2,0x00,0x21]
261# CHECK-LE: bclrl 14, 2, 0 # encoding: [0x21,0x00,0xc2,0x4d]
262 btlrl- 2
263# CHECK-BE: bcctrl 14, 2, 0 # encoding: [0x4d,0xc2,0x04,0x21]
264# CHECK-LE: bcctrl 14, 2, 0 # encoding: [0x21,0x04,0xc2,0x4d]
265 btctrl- 2
Ulrich Weigand86247b62013-06-24 16:52:04 +0000266
Ulrich Weigandcae3a172014-03-24 18:16:09 +0000267# CHECK-BE: bc 4, 2, target # encoding: [0x40,0x82,A,0bAAAAAA00]
268# CHECK-LE: bc 4, 2, target # encoding: [0bAAAAAA00,A,0x82,0x40]
269# CHECK-BE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14
270# CHECK-LE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14
271 bf 2, target
272# CHECK-BE: bca 4, 2, target # encoding: [0x40,0x82,A,0bAAAAAA10]
273# CHECK-LE: bca 4, 2, target # encoding: [0bAAAAAA10,A,0x82,0x40]
274# CHECK-BE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14abs
275# CHECK-LE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14abs
276 bfa 2, target
277# CHECK-BE: bclr 4, 2, 0 # encoding: [0x4c,0x82,0x00,0x20]
278# CHECK-LE: bclr 4, 2, 0 # encoding: [0x20,0x00,0x82,0x4c]
279 bflr 2
280# CHECK-BE: bcctr 4, 2, 0 # encoding: [0x4c,0x82,0x04,0x20]
281# CHECK-LE: bcctr 4, 2, 0 # encoding: [0x20,0x04,0x82,0x4c]
282 bfctr 2
283# CHECK-BE: bcl 4, 2, target # encoding: [0x40,0x82,A,0bAAAAAA01]
284# CHECK-LE: bcl 4, 2, target # encoding: [0bAAAAAA01,A,0x82,0x40]
285# CHECK-BE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14
286# CHECK-LE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14
287 bfl 2, target
288# CHECK-BE: bcla 4, 2, target # encoding: [0x40,0x82,A,0bAAAAAA11]
289# CHECK-LE: bcla 4, 2, target # encoding: [0bAAAAAA11,A,0x82,0x40]
290# CHECK-BE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14abs
291# CHECK-LE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14abs
292 bfla 2, target
293# CHECK-BE: bclrl 4, 2, 0 # encoding: [0x4c,0x82,0x00,0x21]
294# CHECK-LE: bclrl 4, 2, 0 # encoding: [0x21,0x00,0x82,0x4c]
295 bflrl 2
296# CHECK-BE: bcctrl 4, 2, 0 # encoding: [0x4c,0x82,0x04,0x21]
297# CHECK-LE: bcctrl 4, 2, 0 # encoding: [0x21,0x04,0x82,0x4c]
298 bfctrl 2
Ulrich Weigandd8394902013-05-03 19:50:27 +0000299
Ulrich Weigandcae3a172014-03-24 18:16:09 +0000300# CHECK-BE: bc 7, 2, target # encoding: [0x40,0xe2,A,0bAAAAAA00]
301# CHECK-LE: bc 7, 2, target # encoding: [0bAAAAAA00,A,0xe2,0x40]
302# CHECK-BE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14
303# CHECK-LE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14
304 bf+ 2, target
305# CHECK-BE: bca 7, 2, target # encoding: [0x40,0xe2,A,0bAAAAAA10]
306# CHECK-LE: bca 7, 2, target # encoding: [0bAAAAAA10,A,0xe2,0x40]
307# CHECK-BE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14abs
308# CHECK-LE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14abs
309 bfa+ 2, target
310# CHECK-BE: bclr 7, 2, 0 # encoding: [0x4c,0xe2,0x00,0x20]
311# CHECK-LE: bclr 7, 2, 0 # encoding: [0x20,0x00,0xe2,0x4c]
312 bflr+ 2
313# CHECK-BE: bcctr 7, 2, 0 # encoding: [0x4c,0xe2,0x04,0x20]
314# CHECK-LE: bcctr 7, 2, 0 # encoding: [0x20,0x04,0xe2,0x4c]
315 bfctr+ 2
316# CHECK-BE: bcl 7, 2, target # encoding: [0x40,0xe2,A,0bAAAAAA01]
317# CHECK-LE: bcl 7, 2, target # encoding: [0bAAAAAA01,A,0xe2,0x40]
318# CHECK-BE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14
319# CHECK-LE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14
320 bfl+ 2, target
321# CHECK-BE: bcla 7, 2, target # encoding: [0x40,0xe2,A,0bAAAAAA11]
322# CHECK-LE: bcla 7, 2, target # encoding: [0bAAAAAA11,A,0xe2,0x40]
323# CHECK-BE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14abs
324# CHECK-LE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14abs
325 bfla+ 2, target
326# CHECK-BE: bclrl 7, 2, 0 # encoding: [0x4c,0xe2,0x00,0x21]
327# CHECK-LE: bclrl 7, 2, 0 # encoding: [0x21,0x00,0xe2,0x4c]
328 bflrl+ 2
329# CHECK-BE: bcctrl 7, 2, 0 # encoding: [0x4c,0xe2,0x04,0x21]
330# CHECK-LE: bcctrl 7, 2, 0 # encoding: [0x21,0x04,0xe2,0x4c]
331 bfctrl+ 2
Ulrich Weigand86247b62013-06-24 16:52:04 +0000332
Ulrich Weigandcae3a172014-03-24 18:16:09 +0000333# CHECK-BE: bc 6, 2, target # encoding: [0x40,0xc2,A,0bAAAAAA00]
334# CHECK-LE: bc 6, 2, target # encoding: [0bAAAAAA00,A,0xc2,0x40]
335# CHECK-BE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14
336# CHECK-LE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14
337 bf- 2, target
338# CHECK-BE: bca 6, 2, target # encoding: [0x40,0xc2,A,0bAAAAAA10]
339# CHECK-LE: bca 6, 2, target # encoding: [0bAAAAAA10,A,0xc2,0x40]
340# CHECK-BE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14abs
341# CHECK-LE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14abs
342 bfa- 2, target
343# CHECK-BE: bclr 6, 2, 0 # encoding: [0x4c,0xc2,0x00,0x20]
344# CHECK-LE: bclr 6, 2, 0 # encoding: [0x20,0x00,0xc2,0x4c]
345 bflr- 2
346# CHECK-BE: bcctr 6, 2, 0 # encoding: [0x4c,0xc2,0x04,0x20]
347# CHECK-LE: bcctr 6, 2, 0 # encoding: [0x20,0x04,0xc2,0x4c]
348 bfctr- 2
349# CHECK-BE: bcl 6, 2, target # encoding: [0x40,0xc2,A,0bAAAAAA01]
350# CHECK-LE: bcl 6, 2, target # encoding: [0bAAAAAA01,A,0xc2,0x40]
351# CHECK-BE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14
352# CHECK-LE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14
353 bfl- 2, target
354# CHECK-BE: bcla 6, 2, target # encoding: [0x40,0xc2,A,0bAAAAAA11]
355# CHECK-LE: bcla 6, 2, target # encoding: [0bAAAAAA11,A,0xc2,0x40]
356# CHECK-BE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14abs
357# CHECK-LE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14abs
358 bfla- 2, target
359# CHECK-BE: bclrl 6, 2, 0 # encoding: [0x4c,0xc2,0x00,0x21]
360# CHECK-LE: bclrl 6, 2, 0 # encoding: [0x21,0x00,0xc2,0x4c]
361 bflrl- 2
362# CHECK-BE: bcctrl 6, 2, 0 # encoding: [0x4c,0xc2,0x04,0x21]
363# CHECK-LE: bcctrl 6, 2, 0 # encoding: [0x21,0x04,0xc2,0x4c]
364 bfctrl- 2
Ulrich Weigand86247b62013-06-24 16:52:04 +0000365
Ulrich Weigandcae3a172014-03-24 18:16:09 +0000366# CHECK-BE: bdnz target # encoding: [0x42,0x00,A,0bAAAAAA00]
367# CHECK-LE: bdnz target # encoding: [0bAAAAAA00,A,0x00,0x42]
368# CHECK-BE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14
369# CHECK-LE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14
370 bdnz target
371# CHECK-BE: bdnza target # encoding: [0x42,0x00,A,0bAAAAAA10]
372# CHECK-LE: bdnza target # encoding: [0bAAAAAA10,A,0x00,0x42]
373# CHECK-BE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14abs
374# CHECK-LE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14abs
375 bdnza target
376# CHECK-BE: bdnzlr # encoding: [0x4e,0x00,0x00,0x20]
377# CHECK-LE: bdnzlr # encoding: [0x20,0x00,0x00,0x4e]
378 bdnzlr
379# CHECK-BE: bdnzl target # encoding: [0x42,0x00,A,0bAAAAAA01]
380# CHECK-LE: bdnzl target # encoding: [0bAAAAAA01,A,0x00,0x42]
381# CHECK-BE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14
382# CHECK-LE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14
383 bdnzl target
384# CHECK-BE: bdnzla target # encoding: [0x42,0x00,A,0bAAAAAA11]
385# CHECK-LE: bdnzla target # encoding: [0bAAAAAA11,A,0x00,0x42]
386# CHECK-BE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14abs
387# CHECK-LE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14abs
388 bdnzla target
389# CHECK-BE: bdnzlrl # encoding: [0x4e,0x00,0x00,0x21]
390# CHECK-LE: bdnzlrl # encoding: [0x21,0x00,0x00,0x4e]
391 bdnzlrl
Ulrich Weigandd8394902013-05-03 19:50:27 +0000392
Ulrich Weigandcae3a172014-03-24 18:16:09 +0000393# CHECK-BE: bdnz+ target # encoding: [0x43,0x20,A,0bAAAAAA00]
394# CHECK-LE: bdnz+ target # encoding: [0bAAAAAA00,A,0x20,0x43]
395# CHECK-BE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14
396# CHECK-LE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14
397 bdnz+ target
398# CHECK-BE: bdnza+ target # encoding: [0x43,0x20,A,0bAAAAAA10]
399# CHECK-LE: bdnza+ target # encoding: [0bAAAAAA10,A,0x20,0x43]
400# CHECK-BE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14abs
401# CHECK-LE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14abs
402 bdnza+ target
403# CHECK-BE: bdnzlr+ # encoding: [0x4f,0x20,0x00,0x20]
404# CHECK-LE: bdnzlr+ # encoding: [0x20,0x00,0x20,0x4f]
405 bdnzlr+
406# CHECK-BE: bdnzl+ target # encoding: [0x43,0x20,A,0bAAAAAA01]
407# CHECK-LE: bdnzl+ target # encoding: [0bAAAAAA01,A,0x20,0x43]
408# CHECK-BE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14
409# CHECK-LE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14
410 bdnzl+ target
411# CHECK-BE: bdnzla+ target # encoding: [0x43,0x20,A,0bAAAAAA11]
412# CHECK-LE: bdnzla+ target # encoding: [0bAAAAAA11,A,0x20,0x43]
413# CHECK-BE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14abs
414# CHECK-LE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14abs
415 bdnzla+ target
416# CHECK-BE: bdnzlrl+ # encoding: [0x4f,0x20,0x00,0x21]
417# CHECK-LE: bdnzlrl+ # encoding: [0x21,0x00,0x20,0x4f]
418 bdnzlrl+
Ulrich Weigand86247b62013-06-24 16:52:04 +0000419
Ulrich Weigandcae3a172014-03-24 18:16:09 +0000420# CHECK-BE: bdnz- target # encoding: [0x43,0x00,A,0bAAAAAA00]
421# CHECK-LE: bdnz- target # encoding: [0bAAAAAA00,A,0x00,0x43]
422# CHECK-BE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14
423# CHECK-LE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14
424 bdnz- target
425# CHECK-BE: bdnza- target # encoding: [0x43,0x00,A,0bAAAAAA10]
426# CHECK-LE: bdnza- target # encoding: [0bAAAAAA10,A,0x00,0x43]
427# CHECK-BE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14abs
428# CHECK-LE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14abs
429 bdnza- target
430# CHECK-BE: bdnzlr- # encoding: [0x4f,0x00,0x00,0x20]
431# CHECK-LE: bdnzlr- # encoding: [0x20,0x00,0x00,0x4f]
432 bdnzlr-
433# CHECK-BE: bdnzl- target # encoding: [0x43,0x00,A,0bAAAAAA01]
434# CHECK-LE: bdnzl- target # encoding: [0bAAAAAA01,A,0x00,0x43]
435# CHECK-BE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14
436# CHECK-LE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14
437 bdnzl- target
438# CHECK-BE: bdnzla- target # encoding: [0x43,0x00,A,0bAAAAAA11]
439# CHECK-LE: bdnzla- target # encoding: [0bAAAAAA11,A,0x00,0x43]
440# CHECK-BE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14abs
441# CHECK-LE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14abs
442 bdnzla- target
443# CHECK-BE: bdnzlrl- # encoding: [0x4f,0x00,0x00,0x21]
444# CHECK-LE: bdnzlrl- # encoding: [0x21,0x00,0x00,0x4f]
445 bdnzlrl-
Ulrich Weigand86247b62013-06-24 16:52:04 +0000446
Ulrich Weigandcae3a172014-03-24 18:16:09 +0000447# CHECK-BE: bc 8, 2, target # encoding: [0x41,0x02,A,0bAAAAAA00]
448# CHECK-LE: bc 8, 2, target # encoding: [0bAAAAAA00,A,0x02,0x41]
449# CHECK-BE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14
450# CHECK-LE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14
451 bdnzt 2, target
452# CHECK-BE: bca 8, 2, target # encoding: [0x41,0x02,A,0bAAAAAA10]
453# CHECK-LE: bca 8, 2, target # encoding: [0bAAAAAA10,A,0x02,0x41]
454# CHECK-BE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14abs
455# CHECK-LE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14abs
456 bdnzta 2, target
457# CHECK-BE: bclr 8, 2, 0 # encoding: [0x4d,0x02,0x00,0x20]
458# CHECK-LE: bclr 8, 2, 0 # encoding: [0x20,0x00,0x02,0x4d]
459 bdnztlr 2
460# CHECK-BE: bcl 8, 2, target # encoding: [0x41,0x02,A,0bAAAAAA01]
461# CHECK-LE: bcl 8, 2, target # encoding: [0bAAAAAA01,A,0x02,0x41]
462# CHECK-BE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14
463# CHECK-LE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14
464 bdnztl 2, target
465# CHECK-BE: bcla 8, 2, target # encoding: [0x41,0x02,A,0bAAAAAA11]
466# CHECK-LE: bcla 8, 2, target # encoding: [0bAAAAAA11,A,0x02,0x41]
467# CHECK-BE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14abs
468# CHECK-LE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14abs
469 bdnztla 2, target
470# CHECK-BE: bclrl 8, 2, 0 # encoding: [0x4d,0x02,0x00,0x21]
471# CHECK-LE: bclrl 8, 2, 0 # encoding: [0x21,0x00,0x02,0x4d]
472 bdnztlrl 2
Ulrich Weigandfedd5a72013-06-24 12:49:20 +0000473
Ulrich Weigandcae3a172014-03-24 18:16:09 +0000474# CHECK-BE: bc 0, 2, target # encoding: [0x40,0x02,A,0bAAAAAA00]
475# CHECK-LE: bc 0, 2, target # encoding: [0bAAAAAA00,A,0x02,0x40]
476# CHECK-BE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14
477# CHECK-LE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14
478 bdnzf 2, target
479# CHECK-BE: bca 0, 2, target # encoding: [0x40,0x02,A,0bAAAAAA10]
480# CHECK-LE: bca 0, 2, target # encoding: [0bAAAAAA10,A,0x02,0x40]
481# CHECK-BE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14abs
482# CHECK-LE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14abs
483 bdnzfa 2, target
484# CHECK-BE: bclr 0, 2, 0 # encoding: [0x4c,0x02,0x00,0x20]
485# CHECK-LE: bclr 0, 2, 0 # encoding: [0x20,0x00,0x02,0x4c]
486 bdnzflr 2
487# CHECK-BE: bcl 0, 2, target # encoding: [0x40,0x02,A,0bAAAAAA01]
488# CHECK-LE: bcl 0, 2, target # encoding: [0bAAAAAA01,A,0x02,0x40]
489# CHECK-BE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14
490# CHECK-LE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14
491 bdnzfl 2, target
492# CHECK-BE: bcla 0, 2, target # encoding: [0x40,0x02,A,0bAAAAAA11]
493# CHECK-LE: bcla 0, 2, target # encoding: [0bAAAAAA11,A,0x02,0x40]
494# CHECK-BE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14abs
495# CHECK-LE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14abs
496 bdnzfla 2, target
497# CHECK-BE: bclrl 0, 2, 0 # encoding: [0x4c,0x02,0x00,0x21]
498# CHECK-LE: bclrl 0, 2, 0 # encoding: [0x21,0x00,0x02,0x4c]
499 bdnzflrl 2
Ulrich Weigandd8394902013-05-03 19:50:27 +0000500
Ulrich Weigandcae3a172014-03-24 18:16:09 +0000501# CHECK-BE: bdz target # encoding: [0x42,0x40,A,0bAAAAAA00]
502# CHECK-LE: bdz target # encoding: [0bAAAAAA00,A,0x40,0x42]
503# CHECK-BE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14
504# CHECK-LE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14
505 bdz target
506# CHECK-BE: bdza target # encoding: [0x42,0x40,A,0bAAAAAA10]
507# CHECK-LE: bdza target # encoding: [0bAAAAAA10,A,0x40,0x42]
508# CHECK-BE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14abs
509# CHECK-LE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14abs
510 bdza target
511# CHECK-BE: bdzlr # encoding: [0x4e,0x40,0x00,0x20]
512# CHECK-LE: bdzlr # encoding: [0x20,0x00,0x40,0x4e]
513 bdzlr
514# CHECK-BE: bdzl target # encoding: [0x42,0x40,A,0bAAAAAA01]
515# CHECK-LE: bdzl target # encoding: [0bAAAAAA01,A,0x40,0x42]
516# CHECK-BE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14
517# CHECK-LE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14
518 bdzl target
519# CHECK-BE: bdzla target # encoding: [0x42,0x40,A,0bAAAAAA11]
520# CHECK-LE: bdzla target # encoding: [0bAAAAAA11,A,0x40,0x42]
521# CHECK-BE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14abs
522# CHECK-LE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14abs
523 bdzla target
524# CHECK-BE: bdzlrl # encoding: [0x4e,0x40,0x00,0x21]
525# CHECK-LE: bdzlrl # encoding: [0x21,0x00,0x40,0x4e]
526 bdzlrl
Ulrich Weigandaa4a2d72013-06-10 17:19:15 +0000527
Ulrich Weigandcae3a172014-03-24 18:16:09 +0000528# CHECK-BE: bdz+ target # encoding: [0x43,0x60,A,0bAAAAAA00]
529# CHECK-LE: bdz+ target # encoding: [0bAAAAAA00,A,0x60,0x43]
530# CHECK-BE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14
531# CHECK-LE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14
532 bdz+ target
533# CHECK-BE: bdza+ target # encoding: [0x43,0x60,A,0bAAAAAA10]
534# CHECK-LE: bdza+ target # encoding: [0bAAAAAA10,A,0x60,0x43]
535# CHECK-BE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14abs
536# CHECK-LE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14abs
537 bdza+ target
538# CHECK-BE: bdzlr+ # encoding: [0x4f,0x60,0x00,0x20]
539# CHECK-LE: bdzlr+ # encoding: [0x20,0x00,0x60,0x4f]
540 bdzlr+
541# CHECK-BE: bdzl+ target # encoding: [0x43,0x60,A,0bAAAAAA01]
542# CHECK-LE: bdzl+ target # encoding: [0bAAAAAA01,A,0x60,0x43]
543# CHECK-BE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14
544# CHECK-LE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14
545 bdzl+ target
546# CHECK-BE: bdzla+ target # encoding: [0x43,0x60,A,0bAAAAAA11]
547# CHECK-LE: bdzla+ target # encoding: [0bAAAAAA11,A,0x60,0x43]
548# CHECK-BE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14abs
549# CHECK-LE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14abs
550 bdzla+ target
551# CHECK-BE: bdzlrl+ # encoding: [0x4f,0x60,0x00,0x21]
552# CHECK-LE: bdzlrl+ # encoding: [0x21,0x00,0x60,0x4f]
553 bdzlrl+
Ulrich Weigand86247b62013-06-24 16:52:04 +0000554
Ulrich Weigandcae3a172014-03-24 18:16:09 +0000555# CHECK-BE: bdz- target # encoding: [0x43,0x40,A,0bAAAAAA00]
556# CHECK-LE: bdz- target # encoding: [0bAAAAAA00,A,0x40,0x43]
557# CHECK-BE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14
558# CHECK-LE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14
559 bdz- target
560# CHECK-BE: bdza- target # encoding: [0x43,0x40,A,0bAAAAAA10]
561# CHECK-LE: bdza- target # encoding: [0bAAAAAA10,A,0x40,0x43]
562# CHECK-BE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14abs
563# CHECK-LE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14abs
564 bdza- target
565# CHECK-BE: bdzlr- # encoding: [0x4f,0x40,0x00,0x20]
566# CHECK-LE: bdzlr- # encoding: [0x20,0x00,0x40,0x4f]
567 bdzlr-
568# CHECK-BE: bdzl- target # encoding: [0x43,0x40,A,0bAAAAAA01]
569# CHECK-LE: bdzl- target # encoding: [0bAAAAAA01,A,0x40,0x43]
570# CHECK-BE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14
571# CHECK-LE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14
572 bdzl- target
573# CHECK-BE: bdzla- target # encoding: [0x43,0x40,A,0bAAAAAA11]
574# CHECK-LE: bdzla- target # encoding: [0bAAAAAA11,A,0x40,0x43]
575# CHECK-BE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14abs
576# CHECK-LE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14abs
577 bdzla- target
578# CHECK-BE: bdzlrl- # encoding: [0x4f,0x40,0x00,0x21]
579# CHECK-LE: bdzlrl- # encoding: [0x21,0x00,0x40,0x4f]
580 bdzlrl-
Ulrich Weigand86247b62013-06-24 16:52:04 +0000581
Ulrich Weigandcae3a172014-03-24 18:16:09 +0000582# CHECK-BE: bc 10, 2, target # encoding: [0x41,0x42,A,0bAAAAAA00]
583# CHECK-LE: bc 10, 2, target # encoding: [0bAAAAAA00,A,0x42,0x41]
584# CHECK-BE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14
585# CHECK-LE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14
586 bdzt 2, target
587# CHECK-BE: bca 10, 2, target # encoding: [0x41,0x42,A,0bAAAAAA10]
588# CHECK-LE: bca 10, 2, target # encoding: [0bAAAAAA10,A,0x42,0x41]
589# CHECK-BE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14abs
590# CHECK-LE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14abs
591 bdzta 2, target
592# CHECK-BE: bclr 10, 2, 0 # encoding: [0x4d,0x42,0x00,0x20]
593# CHECK-LE: bclr 10, 2, 0 # encoding: [0x20,0x00,0x42,0x4d]
594 bdztlr 2
595# CHECK-BE: bcl 10, 2, target # encoding: [0x41,0x42,A,0bAAAAAA01]
596# CHECK-LE: bcl 10, 2, target # encoding: [0bAAAAAA01,A,0x42,0x41]
597# CHECK-BE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14
598# CHECK-LE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14
599 bdztl 2, target
600# CHECK-BE: bcla 10, 2, target # encoding: [0x41,0x42,A,0bAAAAAA11]
601# CHECK-LE: bcla 10, 2, target # encoding: [0bAAAAAA11,A,0x42,0x41]
602# CHECK-BE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14abs
603# CHECK-LE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14abs
604 bdztla 2, target
605# CHECK-BE: bclrl 10, 2, 0 # encoding: [0x4d,0x42,0x00,0x21]
606# CHECK-LE: bclrl 10, 2, 0 # encoding: [0x21,0x00,0x42,0x4d]
607 bdztlrl 2
Ulrich Weigandfedd5a72013-06-24 12:49:20 +0000608
Ulrich Weigandcae3a172014-03-24 18:16:09 +0000609# CHECK-BE: bc 2, 2, target # encoding: [0x40,0x42,A,0bAAAAAA00]
610# CHECK-LE: bc 2, 2, target # encoding: [0bAAAAAA00,A,0x42,0x40]
611# CHECK-BE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14
612# CHECK-LE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14
613 bdzf 2, target
614# CHECK-BE: bca 2, 2, target # encoding: [0x40,0x42,A,0bAAAAAA10]
615# CHECK-LE: bca 2, 2, target # encoding: [0bAAAAAA10,A,0x42,0x40]
616# CHECK-BE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14abs
617# CHECK-LE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14abs
618 bdzfa 2, target
619# CHECK-BE: bclr 2, 2, 0 # encoding: [0x4c,0x42,0x00,0x20]
620# CHECK-LE: bclr 2, 2, 0 # encoding: [0x20,0x00,0x42,0x4c]
621 bdzflr 2
622# CHECK-BE: bcl 2, 2, target # encoding: [0x40,0x42,A,0bAAAAAA01]
623# CHECK-LE: bcl 2, 2, target # encoding: [0bAAAAAA01,A,0x42,0x40]
624# CHECK-BE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14
625# CHECK-LE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14
626 bdzfl 2, target
627# CHECK-BE: bcla 2, 2, target # encoding: [0x40,0x42,A,0bAAAAAA11]
628# CHECK-LE: bcla 2, 2, target # encoding: [0bAAAAAA11,A,0x42,0x40]
629# CHECK-BE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14abs
630# CHECK-LE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14abs
631 bdzfla 2, target
632# CHECK-BE: bclrl 2, 2, 0 # encoding: [0x4c,0x42,0x00,0x21]
633# CHECK-LE: bclrl 2, 2, 0 # encoding: [0x21,0x00,0x42,0x4c]
634 bdzflrl 2
Ulrich Weigandd8394902013-05-03 19:50:27 +0000635
Ulrich Weigandcae3a172014-03-24 18:16:09 +0000636# CHECK-BE: blt 2, target # encoding: [0x41,0x88,A,0bAAAAAA00]
637# CHECK-LE: blt 2, target # encoding: [0bAAAAAA00,A,0x88,0x41]
638# CHECK-BE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14
639# CHECK-LE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14
640 blt 2, target
641# CHECK-BE: blt 0, target # encoding: [0x41,0x80,A,0bAAAAAA00]
642# CHECK-LE: blt 0, target # encoding: [0bAAAAAA00,A,0x80,0x41]
643# CHECK-BE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14
644# CHECK-LE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14
645 blt target
646# CHECK-BE: blta 2, target # encoding: [0x41,0x88,A,0bAAAAAA10]
647# CHECK-LE: blta 2, target # encoding: [0bAAAAAA10,A,0x88,0x41]
648# CHECK-BE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14abs
649# CHECK-LE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14abs
650 blta 2, target
651# CHECK-BE: blta 0, target # encoding: [0x41,0x80,A,0bAAAAAA10]
652# CHECK-LE: blta 0, target # encoding: [0bAAAAAA10,A,0x80,0x41]
653# CHECK-BE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14abs
654# CHECK-LE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14abs
655 blta target
656# CHECK-BE: bltlr 2 # encoding: [0x4d,0x88,0x00,0x20]
657# CHECK-LE: bltlr 2 # encoding: [0x20,0x00,0x88,0x4d]
658 bltlr 2
659# CHECK-BE: bltlr 0 # encoding: [0x4d,0x80,0x00,0x20]
660# CHECK-LE: bltlr 0 # encoding: [0x20,0x00,0x80,0x4d]
661 bltlr
662# CHECK-BE: bltctr 2 # encoding: [0x4d,0x88,0x04,0x20]
663# CHECK-LE: bltctr 2 # encoding: [0x20,0x04,0x88,0x4d]
664 bltctr 2
665# CHECK-BE: bltctr 0 # encoding: [0x4d,0x80,0x04,0x20]
666# CHECK-LE: bltctr 0 # encoding: [0x20,0x04,0x80,0x4d]
667 bltctr
668# CHECK-BE: bltl 2, target # encoding: [0x41,0x88,A,0bAAAAAA01]
669# CHECK-LE: bltl 2, target # encoding: [0bAAAAAA01,A,0x88,0x41]
670# CHECK-BE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14
671# CHECK-LE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14
672 bltl 2, target
673# CHECK-BE: bltl 0, target # encoding: [0x41,0x80,A,0bAAAAAA01]
674# CHECK-LE: bltl 0, target # encoding: [0bAAAAAA01,A,0x80,0x41]
675# CHECK-BE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14
676# CHECK-LE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14
677 bltl target
678# CHECK-BE: bltla 2, target # encoding: [0x41,0x88,A,0bAAAAAA11]
679# CHECK-LE: bltla 2, target # encoding: [0bAAAAAA11,A,0x88,0x41]
680# CHECK-BE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14abs
681# CHECK-LE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14abs
682 bltla 2, target
683# CHECK-BE: bltla 0, target # encoding: [0x41,0x80,A,0bAAAAAA11]
684# CHECK-LE: bltla 0, target # encoding: [0bAAAAAA11,A,0x80,0x41]
685# CHECK-BE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14abs
686# CHECK-LE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14abs
687 bltla target
688# CHECK-BE: bltlrl 2 # encoding: [0x4d,0x88,0x00,0x21]
689# CHECK-LE: bltlrl 2 # encoding: [0x21,0x00,0x88,0x4d]
690 bltlrl 2
691# CHECK-BE: bltlrl 0 # encoding: [0x4d,0x80,0x00,0x21]
692# CHECK-LE: bltlrl 0 # encoding: [0x21,0x00,0x80,0x4d]
693 bltlrl
694# CHECK-BE: bltctrl 2 # encoding: [0x4d,0x88,0x04,0x21]
695# CHECK-LE: bltctrl 2 # encoding: [0x21,0x04,0x88,0x4d]
696 bltctrl 2
697# CHECK-BE: bltctrl 0 # encoding: [0x4d,0x80,0x04,0x21]
698# CHECK-LE: bltctrl 0 # encoding: [0x21,0x04,0x80,0x4d]
699 bltctrl
Ulrich Weigandd8394902013-05-03 19:50:27 +0000700
Ulrich Weigandcae3a172014-03-24 18:16:09 +0000701# CHECK-BE: blt+ 2, target # encoding: [0x41,0xe8,A,0bAAAAAA00]
702# CHECK-LE: blt+ 2, target # encoding: [0bAAAAAA00,A,0xe8,0x41]
703# CHECK-BE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14
704# CHECK-LE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14
705 blt+ 2, target
706# CHECK-BE: blt+ 0, target # encoding: [0x41,0xe0,A,0bAAAAAA00]
707# CHECK-LE: blt+ 0, target # encoding: [0bAAAAAA00,A,0xe0,0x41]
708# CHECK-BE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14
709# CHECK-LE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14
710 blt+ target
711# CHECK-BE: blta+ 2, target # encoding: [0x41,0xe8,A,0bAAAAAA10]
712# CHECK-LE: blta+ 2, target # encoding: [0bAAAAAA10,A,0xe8,0x41]
713# CHECK-BE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14abs
714# CHECK-LE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14abs
715 blta+ 2, target
716# CHECK-BE: blta+ 0, target # encoding: [0x41,0xe0,A,0bAAAAAA10]
717# CHECK-LE: blta+ 0, target # encoding: [0bAAAAAA10,A,0xe0,0x41]
718# CHECK-BE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14abs
719# CHECK-LE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14abs
720 blta+ target
721# CHECK-BE: bltlr+ 2 # encoding: [0x4d,0xe8,0x00,0x20]
722# CHECK-LE: bltlr+ 2 # encoding: [0x20,0x00,0xe8,0x4d]
723 bltlr+ 2
724# CHECK-BE: bltlr+ 0 # encoding: [0x4d,0xe0,0x00,0x20]
725# CHECK-LE: bltlr+ 0 # encoding: [0x20,0x00,0xe0,0x4d]
726 bltlr+
727# CHECK-BE: bltctr+ 2 # encoding: [0x4d,0xe8,0x04,0x20]
728# CHECK-LE: bltctr+ 2 # encoding: [0x20,0x04,0xe8,0x4d]
729 bltctr+ 2
730# CHECK-BE: bltctr+ 0 # encoding: [0x4d,0xe0,0x04,0x20]
731# CHECK-LE: bltctr+ 0 # encoding: [0x20,0x04,0xe0,0x4d]
732 bltctr+
733# CHECK-BE: bltl+ 2, target # encoding: [0x41,0xe8,A,0bAAAAAA01]
734# CHECK-LE: bltl+ 2, target # encoding: [0bAAAAAA01,A,0xe8,0x41]
735# CHECK-BE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14
736# CHECK-LE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14
737 bltl+ 2, target
738# CHECK-BE: bltl+ 0, target # encoding: [0x41,0xe0,A,0bAAAAAA01]
739# CHECK-LE: bltl+ 0, target # encoding: [0bAAAAAA01,A,0xe0,0x41]
740# CHECK-BE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14
741# CHECK-LE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14
742 bltl+ target
743# CHECK-BE: bltla+ 2, target # encoding: [0x41,0xe8,A,0bAAAAAA11]
744# CHECK-LE: bltla+ 2, target # encoding: [0bAAAAAA11,A,0xe8,0x41]
745# CHECK-BE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14abs
746# CHECK-LE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14abs
747 bltla+ 2, target
748# CHECK-BE: bltla+ 0, target # encoding: [0x41,0xe0,A,0bAAAAAA11]
749# CHECK-LE: bltla+ 0, target # encoding: [0bAAAAAA11,A,0xe0,0x41]
750# CHECK-BE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14abs
751# CHECK-LE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14abs
752 bltla+ target
753# CHECK-BE: bltlrl+ 2 # encoding: [0x4d,0xe8,0x00,0x21]
754# CHECK-LE: bltlrl+ 2 # encoding: [0x21,0x00,0xe8,0x4d]
755 bltlrl+ 2
756# CHECK-BE: bltlrl+ 0 # encoding: [0x4d,0xe0,0x00,0x21]
757# CHECK-LE: bltlrl+ 0 # encoding: [0x21,0x00,0xe0,0x4d]
758 bltlrl+
759# CHECK-BE: bltctrl+ 2 # encoding: [0x4d,0xe8,0x04,0x21]
760# CHECK-LE: bltctrl+ 2 # encoding: [0x21,0x04,0xe8,0x4d]
761 bltctrl+ 2
762# CHECK-BE: bltctrl+ 0 # encoding: [0x4d,0xe0,0x04,0x21]
763# CHECK-LE: bltctrl+ 0 # encoding: [0x21,0x04,0xe0,0x4d]
764 bltctrl+
Ulrich Weigand86247b62013-06-24 16:52:04 +0000765
Ulrich Weigandcae3a172014-03-24 18:16:09 +0000766# CHECK-BE: blt- 2, target # encoding: [0x41,0xc8,A,0bAAAAAA00]
767# CHECK-LE: blt- 2, target # encoding: [0bAAAAAA00,A,0xc8,0x41]
768# CHECK-BE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14
769# CHECK-LE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14
770 blt- 2, target
771# CHECK-BE: blt- 0, target # encoding: [0x41,0xc0,A,0bAAAAAA00]
772# CHECK-LE: blt- 0, target # encoding: [0bAAAAAA00,A,0xc0,0x41]
773# CHECK-BE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14
774# CHECK-LE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14
775 blt- target
776# CHECK-BE: blta- 2, target # encoding: [0x41,0xc8,A,0bAAAAAA10]
777# CHECK-LE: blta- 2, target # encoding: [0bAAAAAA10,A,0xc8,0x41]
778# CHECK-BE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14abs
779# CHECK-LE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14abs
780 blta- 2, target
781# CHECK-BE: blta- 0, target # encoding: [0x41,0xc0,A,0bAAAAAA10]
782# CHECK-LE: blta- 0, target # encoding: [0bAAAAAA10,A,0xc0,0x41]
783# CHECK-BE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14abs
784# CHECK-LE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14abs
785 blta- target
786# CHECK-BE: bltlr- 2 # encoding: [0x4d,0xc8,0x00,0x20]
787# CHECK-LE: bltlr- 2 # encoding: [0x20,0x00,0xc8,0x4d]
788 bltlr- 2
789# CHECK-BE: bltlr- 0 # encoding: [0x4d,0xc0,0x00,0x20]
790# CHECK-LE: bltlr- 0 # encoding: [0x20,0x00,0xc0,0x4d]
791 bltlr-
792# CHECK-BE: bltctr- 2 # encoding: [0x4d,0xc8,0x04,0x20]
793# CHECK-LE: bltctr- 2 # encoding: [0x20,0x04,0xc8,0x4d]
794 bltctr- 2
795# CHECK-BE: bltctr- 0 # encoding: [0x4d,0xc0,0x04,0x20]
796# CHECK-LE: bltctr- 0 # encoding: [0x20,0x04,0xc0,0x4d]
797 bltctr-
798# CHECK-BE: bltl- 2, target # encoding: [0x41,0xc8,A,0bAAAAAA01]
799# CHECK-LE: bltl- 2, target # encoding: [0bAAAAAA01,A,0xc8,0x41]
800# CHECK-BE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14
801# CHECK-LE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14
802 bltl- 2, target
803# CHECK-BE: bltl- 0, target # encoding: [0x41,0xc0,A,0bAAAAAA01]
804# CHECK-LE: bltl- 0, target # encoding: [0bAAAAAA01,A,0xc0,0x41]
805# CHECK-BE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14
806# CHECK-LE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14
807 bltl- target
808# CHECK-BE: bltla- 2, target # encoding: [0x41,0xc8,A,0bAAAAAA11]
809# CHECK-LE: bltla- 2, target # encoding: [0bAAAAAA11,A,0xc8,0x41]
810# CHECK-BE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14abs
811# CHECK-LE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14abs
812 bltla- 2, target
813# CHECK-BE: bltla- 0, target # encoding: [0x41,0xc0,A,0bAAAAAA11]
814# CHECK-LE: bltla- 0, target # encoding: [0bAAAAAA11,A,0xc0,0x41]
815# CHECK-BE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14abs
816# CHECK-LE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14abs
817 bltla- target
818# CHECK-BE: bltlrl- 2 # encoding: [0x4d,0xc8,0x00,0x21]
819# CHECK-LE: bltlrl- 2 # encoding: [0x21,0x00,0xc8,0x4d]
820 bltlrl- 2
821# CHECK-BE: bltlrl- 0 # encoding: [0x4d,0xc0,0x00,0x21]
822# CHECK-LE: bltlrl- 0 # encoding: [0x21,0x00,0xc0,0x4d]
823 bltlrl-
824# CHECK-BE: bltctrl- 2 # encoding: [0x4d,0xc8,0x04,0x21]
825# CHECK-LE: bltctrl- 2 # encoding: [0x21,0x04,0xc8,0x4d]
826 bltctrl- 2
827# CHECK-BE: bltctrl- 0 # encoding: [0x4d,0xc0,0x04,0x21]
828# CHECK-LE: bltctrl- 0 # encoding: [0x21,0x04,0xc0,0x4d]
829 bltctrl-
Ulrich Weigand86247b62013-06-24 16:52:04 +0000830
Ulrich Weigandcae3a172014-03-24 18:16:09 +0000831# CHECK-BE: ble 2, target # encoding: [0x40,0x89,A,0bAAAAAA00]
832# CHECK-LE: ble 2, target # encoding: [0bAAAAAA00,A,0x89,0x40]
833# CHECK-BE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14
834# CHECK-LE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14
835 ble 2, target
836# CHECK-BE: ble 0, target # encoding: [0x40,0x81,A,0bAAAAAA00]
837# CHECK-LE: ble 0, target # encoding: [0bAAAAAA00,A,0x81,0x40]
838# CHECK-BE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14
839# CHECK-LE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14
840 ble target
841# CHECK-BE: blea 2, target # encoding: [0x40,0x89,A,0bAAAAAA10]
842# CHECK-LE: blea 2, target # encoding: [0bAAAAAA10,A,0x89,0x40]
843# CHECK-BE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14abs
844# CHECK-LE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14abs
845 blea 2, target
846# CHECK-BE: blea 0, target # encoding: [0x40,0x81,A,0bAAAAAA10]
847# CHECK-LE: blea 0, target # encoding: [0bAAAAAA10,A,0x81,0x40]
848# CHECK-BE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14abs
849# CHECK-LE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14abs
850 blea target
851# CHECK-BE: blelr 2 # encoding: [0x4c,0x89,0x00,0x20]
852# CHECK-LE: blelr 2 # encoding: [0x20,0x00,0x89,0x4c]
853 blelr 2
854# CHECK-BE: blelr 0 # encoding: [0x4c,0x81,0x00,0x20]
855# CHECK-LE: blelr 0 # encoding: [0x20,0x00,0x81,0x4c]
856 blelr
857# CHECK-BE: blectr 2 # encoding: [0x4c,0x89,0x04,0x20]
858# CHECK-LE: blectr 2 # encoding: [0x20,0x04,0x89,0x4c]
859 blectr 2
860# CHECK-BE: blectr 0 # encoding: [0x4c,0x81,0x04,0x20]
861# CHECK-LE: blectr 0 # encoding: [0x20,0x04,0x81,0x4c]
862 blectr
863# CHECK-BE: blel 2, target # encoding: [0x40,0x89,A,0bAAAAAA01]
864# CHECK-LE: blel 2, target # encoding: [0bAAAAAA01,A,0x89,0x40]
865# CHECK-BE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14
866# CHECK-LE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14
867 blel 2, target
868# CHECK-BE: blel 0, target # encoding: [0x40,0x81,A,0bAAAAAA01]
869# CHECK-LE: blel 0, target # encoding: [0bAAAAAA01,A,0x81,0x40]
870# CHECK-BE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14
871# CHECK-LE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14
872 blel target
873# CHECK-BE: blela 2, target # encoding: [0x40,0x89,A,0bAAAAAA11]
874# CHECK-LE: blela 2, target # encoding: [0bAAAAAA11,A,0x89,0x40]
875# CHECK-BE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14abs
876# CHECK-LE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14abs
877 blela 2, target
878# CHECK-BE: blela 0, target # encoding: [0x40,0x81,A,0bAAAAAA11]
879# CHECK-LE: blela 0, target # encoding: [0bAAAAAA11,A,0x81,0x40]
880# CHECK-BE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14abs
881# CHECK-LE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14abs
882 blela target
883# CHECK-BE: blelrl 2 # encoding: [0x4c,0x89,0x00,0x21]
884# CHECK-LE: blelrl 2 # encoding: [0x21,0x00,0x89,0x4c]
885 blelrl 2
886# CHECK-BE: blelrl 0 # encoding: [0x4c,0x81,0x00,0x21]
887# CHECK-LE: blelrl 0 # encoding: [0x21,0x00,0x81,0x4c]
888 blelrl
889# CHECK-BE: blectrl 2 # encoding: [0x4c,0x89,0x04,0x21]
890# CHECK-LE: blectrl 2 # encoding: [0x21,0x04,0x89,0x4c]
891 blectrl 2
892# CHECK-BE: blectrl 0 # encoding: [0x4c,0x81,0x04,0x21]
893# CHECK-LE: blectrl 0 # encoding: [0x21,0x04,0x81,0x4c]
894 blectrl
Ulrich Weigandd8394902013-05-03 19:50:27 +0000895
Ulrich Weigandcae3a172014-03-24 18:16:09 +0000896# CHECK-BE: ble+ 2, target # encoding: [0x40,0xe9,A,0bAAAAAA00]
897# CHECK-LE: ble+ 2, target # encoding: [0bAAAAAA00,A,0xe9,0x40]
898# CHECK-BE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14
899# CHECK-LE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14
900 ble+ 2, target
901# CHECK-BE: ble+ 0, target # encoding: [0x40,0xe1,A,0bAAAAAA00]
902# CHECK-LE: ble+ 0, target # encoding: [0bAAAAAA00,A,0xe1,0x40]
903# CHECK-BE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14
904# CHECK-LE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14
905 ble+ target
906# CHECK-BE: blea+ 2, target # encoding: [0x40,0xe9,A,0bAAAAAA10]
907# CHECK-LE: blea+ 2, target # encoding: [0bAAAAAA10,A,0xe9,0x40]
908# CHECK-BE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14abs
909# CHECK-LE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14abs
910 blea+ 2, target
911# CHECK-BE: blea+ 0, target # encoding: [0x40,0xe1,A,0bAAAAAA10]
912# CHECK-LE: blea+ 0, target # encoding: [0bAAAAAA10,A,0xe1,0x40]
913# CHECK-BE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14abs
914# CHECK-LE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14abs
915 blea+ target
916# CHECK-BE: blelr+ 2 # encoding: [0x4c,0xe9,0x00,0x20]
917# CHECK-LE: blelr+ 2 # encoding: [0x20,0x00,0xe9,0x4c]
918 blelr+ 2
919# CHECK-BE: blelr+ 0 # encoding: [0x4c,0xe1,0x00,0x20]
920# CHECK-LE: blelr+ 0 # encoding: [0x20,0x00,0xe1,0x4c]
921 blelr+
922# CHECK-BE: blectr+ 2 # encoding: [0x4c,0xe9,0x04,0x20]
923# CHECK-LE: blectr+ 2 # encoding: [0x20,0x04,0xe9,0x4c]
924 blectr+ 2
925# CHECK-BE: blectr+ 0 # encoding: [0x4c,0xe1,0x04,0x20]
926# CHECK-LE: blectr+ 0 # encoding: [0x20,0x04,0xe1,0x4c]
927 blectr+
928# CHECK-BE: blel+ 2, target # encoding: [0x40,0xe9,A,0bAAAAAA01]
929# CHECK-LE: blel+ 2, target # encoding: [0bAAAAAA01,A,0xe9,0x40]
930# CHECK-BE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14
931# CHECK-LE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14
932 blel+ 2, target
933# CHECK-BE: blel+ 0, target # encoding: [0x40,0xe1,A,0bAAAAAA01]
934# CHECK-LE: blel+ 0, target # encoding: [0bAAAAAA01,A,0xe1,0x40]
935# CHECK-BE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14
936# CHECK-LE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14
937 blel+ target
938# CHECK-BE: blela+ 2, target # encoding: [0x40,0xe9,A,0bAAAAAA11]
939# CHECK-LE: blela+ 2, target # encoding: [0bAAAAAA11,A,0xe9,0x40]
940# CHECK-BE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14abs
941# CHECK-LE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14abs
942 blela+ 2, target
943# CHECK-BE: blela+ 0, target # encoding: [0x40,0xe1,A,0bAAAAAA11]
944# CHECK-LE: blela+ 0, target # encoding: [0bAAAAAA11,A,0xe1,0x40]
945# CHECK-BE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14abs
946# CHECK-LE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14abs
947 blela+ target
948# CHECK-BE: blelrl+ 2 # encoding: [0x4c,0xe9,0x00,0x21]
949# CHECK-LE: blelrl+ 2 # encoding: [0x21,0x00,0xe9,0x4c]
950 blelrl+ 2
951# CHECK-BE: blelrl+ 0 # encoding: [0x4c,0xe1,0x00,0x21]
952# CHECK-LE: blelrl+ 0 # encoding: [0x21,0x00,0xe1,0x4c]
953 blelrl+
954# CHECK-BE: blectrl+ 2 # encoding: [0x4c,0xe9,0x04,0x21]
955# CHECK-LE: blectrl+ 2 # encoding: [0x21,0x04,0xe9,0x4c]
956 blectrl+ 2
957# CHECK-BE: blectrl+ 0 # encoding: [0x4c,0xe1,0x04,0x21]
958# CHECK-LE: blectrl+ 0 # encoding: [0x21,0x04,0xe1,0x4c]
959 blectrl+
Ulrich Weigand86247b62013-06-24 16:52:04 +0000960
Ulrich Weigandcae3a172014-03-24 18:16:09 +0000961# CHECK-BE: ble- 2, target # encoding: [0x40,0xc9,A,0bAAAAAA00]
962# CHECK-LE: ble- 2, target # encoding: [0bAAAAAA00,A,0xc9,0x40]
963# CHECK-BE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14
964# CHECK-LE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14
965 ble- 2, target
966# CHECK-BE: ble- 0, target # encoding: [0x40,0xc1,A,0bAAAAAA00]
967# CHECK-LE: ble- 0, target # encoding: [0bAAAAAA00,A,0xc1,0x40]
968# CHECK-BE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14
969# CHECK-LE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14
970 ble- target
971# CHECK-BE: blea- 2, target # encoding: [0x40,0xc9,A,0bAAAAAA10]
972# CHECK-LE: blea- 2, target # encoding: [0bAAAAAA10,A,0xc9,0x40]
973# CHECK-BE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14abs
974# CHECK-LE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14abs
975 blea- 2, target
976# CHECK-BE: blea- 0, target # encoding: [0x40,0xc1,A,0bAAAAAA10]
977# CHECK-LE: blea- 0, target # encoding: [0bAAAAAA10,A,0xc1,0x40]
978# CHECK-BE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14abs
979# CHECK-LE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14abs
980 blea- target
981# CHECK-BE: blelr- 2 # encoding: [0x4c,0xc9,0x00,0x20]
982# CHECK-LE: blelr- 2 # encoding: [0x20,0x00,0xc9,0x4c]
983 blelr- 2
984# CHECK-BE: blelr- 0 # encoding: [0x4c,0xc1,0x00,0x20]
985# CHECK-LE: blelr- 0 # encoding: [0x20,0x00,0xc1,0x4c]
986 blelr-
987# CHECK-BE: blectr- 2 # encoding: [0x4c,0xc9,0x04,0x20]
988# CHECK-LE: blectr- 2 # encoding: [0x20,0x04,0xc9,0x4c]
989 blectr- 2
990# CHECK-BE: blectr- 0 # encoding: [0x4c,0xc1,0x04,0x20]
991# CHECK-LE: blectr- 0 # encoding: [0x20,0x04,0xc1,0x4c]
992 blectr-
993# CHECK-BE: blel- 2, target # encoding: [0x40,0xc9,A,0bAAAAAA01]
994# CHECK-LE: blel- 2, target # encoding: [0bAAAAAA01,A,0xc9,0x40]
995# CHECK-BE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14
996# CHECK-LE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14
997 blel- 2, target
998# CHECK-BE: blel- 0, target # encoding: [0x40,0xc1,A,0bAAAAAA01]
999# CHECK-LE: blel- 0, target # encoding: [0bAAAAAA01,A,0xc1,0x40]
1000# CHECK-BE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14
1001# CHECK-LE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14
1002 blel- target
1003# CHECK-BE: blela- 2, target # encoding: [0x40,0xc9,A,0bAAAAAA11]
1004# CHECK-LE: blela- 2, target # encoding: [0bAAAAAA11,A,0xc9,0x40]
1005# CHECK-BE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14abs
1006# CHECK-LE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14abs
1007 blela- 2, target
1008# CHECK-BE: blela- 0, target # encoding: [0x40,0xc1,A,0bAAAAAA11]
1009# CHECK-LE: blela- 0, target # encoding: [0bAAAAAA11,A,0xc1,0x40]
1010# CHECK-BE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14abs
1011# CHECK-LE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14abs
1012 blela- target
1013# CHECK-BE: blelrl- 2 # encoding: [0x4c,0xc9,0x00,0x21]
1014# CHECK-LE: blelrl- 2 # encoding: [0x21,0x00,0xc9,0x4c]
1015 blelrl- 2
1016# CHECK-BE: blelrl- 0 # encoding: [0x4c,0xc1,0x00,0x21]
1017# CHECK-LE: blelrl- 0 # encoding: [0x21,0x00,0xc1,0x4c]
1018 blelrl-
1019# CHECK-BE: blectrl- 2 # encoding: [0x4c,0xc9,0x04,0x21]
1020# CHECK-LE: blectrl- 2 # encoding: [0x21,0x04,0xc9,0x4c]
1021 blectrl- 2
1022# CHECK-BE: blectrl- 0 # encoding: [0x4c,0xc1,0x04,0x21]
1023# CHECK-LE: blectrl- 0 # encoding: [0x21,0x04,0xc1,0x4c]
1024 blectrl-
Ulrich Weigand86247b62013-06-24 16:52:04 +00001025
Ulrich Weigandcae3a172014-03-24 18:16:09 +00001026# CHECK-BE: beq 2, target # encoding: [0x41,0x8a,A,0bAAAAAA00]
1027# CHECK-LE: beq 2, target # encoding: [0bAAAAAA00,A,0x8a,0x41]
1028# CHECK-BE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14
1029# CHECK-LE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14
1030 beq 2, target
1031# CHECK-BE: beq 0, target # encoding: [0x41,0x82,A,0bAAAAAA00]
1032# CHECK-LE: beq 0, target # encoding: [0bAAAAAA00,A,0x82,0x41]
1033# CHECK-BE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14
1034# CHECK-LE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14
1035 beq target
1036# CHECK-BE: beqa 2, target # encoding: [0x41,0x8a,A,0bAAAAAA10]
1037# CHECK-LE: beqa 2, target # encoding: [0bAAAAAA10,A,0x8a,0x41]
1038# CHECK-BE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14abs
1039# CHECK-LE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14abs
1040 beqa 2, target
1041# CHECK-BE: beqa 0, target # encoding: [0x41,0x82,A,0bAAAAAA10]
1042# CHECK-LE: beqa 0, target # encoding: [0bAAAAAA10,A,0x82,0x41]
1043# CHECK-BE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14abs
1044# CHECK-LE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14abs
1045 beqa target
1046# CHECK-BE: beqlr 2 # encoding: [0x4d,0x8a,0x00,0x20]
1047# CHECK-LE: beqlr 2 # encoding: [0x20,0x00,0x8a,0x4d]
1048 beqlr 2
1049# CHECK-BE: beqlr 0 # encoding: [0x4d,0x82,0x00,0x20]
1050# CHECK-LE: beqlr 0 # encoding: [0x20,0x00,0x82,0x4d]
1051 beqlr
1052# CHECK-BE: beqctr 2 # encoding: [0x4d,0x8a,0x04,0x20]
1053# CHECK-LE: beqctr 2 # encoding: [0x20,0x04,0x8a,0x4d]
1054 beqctr 2
1055# CHECK-BE: beqctr 0 # encoding: [0x4d,0x82,0x04,0x20]
1056# CHECK-LE: beqctr 0 # encoding: [0x20,0x04,0x82,0x4d]
1057 beqctr
1058# CHECK-BE: beql 2, target # encoding: [0x41,0x8a,A,0bAAAAAA01]
1059# CHECK-LE: beql 2, target # encoding: [0bAAAAAA01,A,0x8a,0x41]
1060# CHECK-BE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14
1061# CHECK-LE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14
1062 beql 2, target
1063# CHECK-BE: beql 0, target # encoding: [0x41,0x82,A,0bAAAAAA01]
1064# CHECK-LE: beql 0, target # encoding: [0bAAAAAA01,A,0x82,0x41]
1065# CHECK-BE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14
1066# CHECK-LE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14
1067 beql target
1068# CHECK-BE: beqla 2, target # encoding: [0x41,0x8a,A,0bAAAAAA11]
1069# CHECK-LE: beqla 2, target # encoding: [0bAAAAAA11,A,0x8a,0x41]
1070# CHECK-BE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14abs
1071# CHECK-LE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14abs
1072 beqla 2, target
1073# CHECK-BE: beqla 0, target # encoding: [0x41,0x82,A,0bAAAAAA11]
1074# CHECK-LE: beqla 0, target # encoding: [0bAAAAAA11,A,0x82,0x41]
1075# CHECK-BE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14abs
1076# CHECK-LE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14abs
1077 beqla target
1078# CHECK-BE: beqlrl 2 # encoding: [0x4d,0x8a,0x00,0x21]
1079# CHECK-LE: beqlrl 2 # encoding: [0x21,0x00,0x8a,0x4d]
1080 beqlrl 2
1081# CHECK-BE: beqlrl 0 # encoding: [0x4d,0x82,0x00,0x21]
1082# CHECK-LE: beqlrl 0 # encoding: [0x21,0x00,0x82,0x4d]
1083 beqlrl
1084# CHECK-BE: beqctrl 2 # encoding: [0x4d,0x8a,0x04,0x21]
1085# CHECK-LE: beqctrl 2 # encoding: [0x21,0x04,0x8a,0x4d]
1086 beqctrl 2
1087# CHECK-BE: beqctrl 0 # encoding: [0x4d,0x82,0x04,0x21]
1088# CHECK-LE: beqctrl 0 # encoding: [0x21,0x04,0x82,0x4d]
1089 beqctrl
Ulrich Weigandd8394902013-05-03 19:50:27 +00001090
Ulrich Weigandcae3a172014-03-24 18:16:09 +00001091# CHECK-BE: beq+ 2, target # encoding: [0x41,0xea,A,0bAAAAAA00]
1092# CHECK-LE: beq+ 2, target # encoding: [0bAAAAAA00,A,0xea,0x41]
1093# CHECK-BE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14
1094# CHECK-LE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14
1095 beq+ 2, target
1096# CHECK-BE: beq+ 0, target # encoding: [0x41,0xe2,A,0bAAAAAA00]
1097# CHECK-LE: beq+ 0, target # encoding: [0bAAAAAA00,A,0xe2,0x41]
1098# CHECK-BE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14
1099# CHECK-LE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14
1100 beq+ target
1101# CHECK-BE: beqa+ 2, target # encoding: [0x41,0xea,A,0bAAAAAA10]
1102# CHECK-LE: beqa+ 2, target # encoding: [0bAAAAAA10,A,0xea,0x41]
1103# CHECK-BE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14abs
1104# CHECK-LE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14abs
1105 beqa+ 2, target
1106# CHECK-BE: beqa+ 0, target # encoding: [0x41,0xe2,A,0bAAAAAA10]
1107# CHECK-LE: beqa+ 0, target # encoding: [0bAAAAAA10,A,0xe2,0x41]
1108# CHECK-BE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14abs
1109# CHECK-LE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14abs
1110 beqa+ target
1111# CHECK-BE: beqlr+ 2 # encoding: [0x4d,0xea,0x00,0x20]
1112# CHECK-LE: beqlr+ 2 # encoding: [0x20,0x00,0xea,0x4d]
1113 beqlr+ 2
1114# CHECK-BE: beqlr+ 0 # encoding: [0x4d,0xe2,0x00,0x20]
1115# CHECK-LE: beqlr+ 0 # encoding: [0x20,0x00,0xe2,0x4d]
1116 beqlr+
1117# CHECK-BE: beqctr+ 2 # encoding: [0x4d,0xea,0x04,0x20]
1118# CHECK-LE: beqctr+ 2 # encoding: [0x20,0x04,0xea,0x4d]
1119 beqctr+ 2
1120# CHECK-BE: beqctr+ 0 # encoding: [0x4d,0xe2,0x04,0x20]
1121# CHECK-LE: beqctr+ 0 # encoding: [0x20,0x04,0xe2,0x4d]
1122 beqctr+
1123# CHECK-BE: beql+ 2, target # encoding: [0x41,0xea,A,0bAAAAAA01]
1124# CHECK-LE: beql+ 2, target # encoding: [0bAAAAAA01,A,0xea,0x41]
1125# CHECK-BE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14
1126# CHECK-LE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14
1127 beql+ 2, target
1128# CHECK-BE: beql+ 0, target # encoding: [0x41,0xe2,A,0bAAAAAA01]
1129# CHECK-LE: beql+ 0, target # encoding: [0bAAAAAA01,A,0xe2,0x41]
1130# CHECK-BE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14
1131# CHECK-LE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14
1132 beql+ target
1133# CHECK-BE: beqla+ 2, target # encoding: [0x41,0xea,A,0bAAAAAA11]
1134# CHECK-LE: beqla+ 2, target # encoding: [0bAAAAAA11,A,0xea,0x41]
1135# CHECK-BE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14abs
1136# CHECK-LE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14abs
1137 beqla+ 2, target
1138# CHECK-BE: beqla+ 0, target # encoding: [0x41,0xe2,A,0bAAAAAA11]
1139# CHECK-LE: beqla+ 0, target # encoding: [0bAAAAAA11,A,0xe2,0x41]
1140# CHECK-BE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14abs
1141# CHECK-LE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14abs
1142 beqla+ target
1143# CHECK-BE: beqlrl+ 2 # encoding: [0x4d,0xea,0x00,0x21]
1144# CHECK-LE: beqlrl+ 2 # encoding: [0x21,0x00,0xea,0x4d]
1145 beqlrl+ 2
1146# CHECK-BE: beqlrl+ 0 # encoding: [0x4d,0xe2,0x00,0x21]
1147# CHECK-LE: beqlrl+ 0 # encoding: [0x21,0x00,0xe2,0x4d]
1148 beqlrl+
1149# CHECK-BE: beqctrl+ 2 # encoding: [0x4d,0xea,0x04,0x21]
1150# CHECK-LE: beqctrl+ 2 # encoding: [0x21,0x04,0xea,0x4d]
1151 beqctrl+ 2
1152# CHECK-BE: beqctrl+ 0 # encoding: [0x4d,0xe2,0x04,0x21]
1153# CHECK-LE: beqctrl+ 0 # encoding: [0x21,0x04,0xe2,0x4d]
1154 beqctrl+
Ulrich Weigand86247b62013-06-24 16:52:04 +00001155
Ulrich Weigandcae3a172014-03-24 18:16:09 +00001156# CHECK-BE: beq- 2, target # encoding: [0x41,0xca,A,0bAAAAAA00]
1157# CHECK-LE: beq- 2, target # encoding: [0bAAAAAA00,A,0xca,0x41]
1158# CHECK-BE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14
1159# CHECK-LE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14
1160 beq- 2, target
1161# CHECK-BE: beq- 0, target # encoding: [0x41,0xc2,A,0bAAAAAA00]
1162# CHECK-LE: beq- 0, target # encoding: [0bAAAAAA00,A,0xc2,0x41]
1163# CHECK-BE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14
1164# CHECK-LE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14
1165 beq- target
1166# CHECK-BE: beqa- 2, target # encoding: [0x41,0xca,A,0bAAAAAA10]
1167# CHECK-LE: beqa- 2, target # encoding: [0bAAAAAA10,A,0xca,0x41]
1168# CHECK-BE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14abs
1169# CHECK-LE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14abs
1170 beqa- 2, target
1171# CHECK-BE: beqa- 0, target # encoding: [0x41,0xc2,A,0bAAAAAA10]
1172# CHECK-LE: beqa- 0, target # encoding: [0bAAAAAA10,A,0xc2,0x41]
1173# CHECK-BE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14abs
1174# CHECK-LE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14abs
1175 beqa- target
1176# CHECK-BE: beqlr- 2 # encoding: [0x4d,0xca,0x00,0x20]
1177# CHECK-LE: beqlr- 2 # encoding: [0x20,0x00,0xca,0x4d]
1178 beqlr- 2
1179# CHECK-BE: beqlr- 0 # encoding: [0x4d,0xc2,0x00,0x20]
1180# CHECK-LE: beqlr- 0 # encoding: [0x20,0x00,0xc2,0x4d]
1181 beqlr-
1182# CHECK-BE: beqctr- 2 # encoding: [0x4d,0xca,0x04,0x20]
1183# CHECK-LE: beqctr- 2 # encoding: [0x20,0x04,0xca,0x4d]
1184 beqctr- 2
1185# CHECK-BE: beqctr- 0 # encoding: [0x4d,0xc2,0x04,0x20]
1186# CHECK-LE: beqctr- 0 # encoding: [0x20,0x04,0xc2,0x4d]
1187 beqctr-
1188# CHECK-BE: beql- 2, target # encoding: [0x41,0xca,A,0bAAAAAA01]
1189# CHECK-LE: beql- 2, target # encoding: [0bAAAAAA01,A,0xca,0x41]
1190# CHECK-BE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14
1191# CHECK-LE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14
1192 beql- 2, target
1193# CHECK-BE: beql- 0, target # encoding: [0x41,0xc2,A,0bAAAAAA01]
1194# CHECK-LE: beql- 0, target # encoding: [0bAAAAAA01,A,0xc2,0x41]
1195# CHECK-BE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14
1196# CHECK-LE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14
1197 beql- target
1198# CHECK-BE: beqla- 2, target # encoding: [0x41,0xca,A,0bAAAAAA11]
1199# CHECK-LE: beqla- 2, target # encoding: [0bAAAAAA11,A,0xca,0x41]
1200# CHECK-BE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14abs
1201# CHECK-LE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14abs
1202 beqla- 2, target
1203# CHECK-BE: beqla- 0, target # encoding: [0x41,0xc2,A,0bAAAAAA11]
1204# CHECK-LE: beqla- 0, target # encoding: [0bAAAAAA11,A,0xc2,0x41]
1205# CHECK-BE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14abs
1206# CHECK-LE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14abs
1207 beqla- target
1208# CHECK-BE: beqlrl- 2 # encoding: [0x4d,0xca,0x00,0x21]
1209# CHECK-LE: beqlrl- 2 # encoding: [0x21,0x00,0xca,0x4d]
1210 beqlrl- 2
1211# CHECK-BE: beqlrl- 0 # encoding: [0x4d,0xc2,0x00,0x21]
1212# CHECK-LE: beqlrl- 0 # encoding: [0x21,0x00,0xc2,0x4d]
1213 beqlrl-
1214# CHECK-BE: beqctrl- 2 # encoding: [0x4d,0xca,0x04,0x21]
1215# CHECK-LE: beqctrl- 2 # encoding: [0x21,0x04,0xca,0x4d]
1216 beqctrl- 2
1217# CHECK-BE: beqctrl- 0 # encoding: [0x4d,0xc2,0x04,0x21]
1218# CHECK-LE: beqctrl- 0 # encoding: [0x21,0x04,0xc2,0x4d]
1219 beqctrl-
Ulrich Weigand86247b62013-06-24 16:52:04 +00001220
Ulrich Weigandcae3a172014-03-24 18:16:09 +00001221# CHECK-BE: bge 2, target # encoding: [0x40,0x88,A,0bAAAAAA00]
1222# CHECK-LE: bge 2, target # encoding: [0bAAAAAA00,A,0x88,0x40]
1223# CHECK-BE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14
1224# CHECK-LE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14
1225 bge 2, target
1226# CHECK-BE: bge 0, target # encoding: [0x40,0x80,A,0bAAAAAA00]
1227# CHECK-LE: bge 0, target # encoding: [0bAAAAAA00,A,0x80,0x40]
1228# CHECK-BE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14
1229# CHECK-LE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14
1230 bge target
1231# CHECK-BE: bgea 2, target # encoding: [0x40,0x88,A,0bAAAAAA10]
1232# CHECK-LE: bgea 2, target # encoding: [0bAAAAAA10,A,0x88,0x40]
1233# CHECK-BE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14abs
1234# CHECK-LE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14abs
1235 bgea 2, target
1236# CHECK-BE: bgea 0, target # encoding: [0x40,0x80,A,0bAAAAAA10]
1237# CHECK-LE: bgea 0, target # encoding: [0bAAAAAA10,A,0x80,0x40]
1238# CHECK-BE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14abs
1239# CHECK-LE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14abs
1240 bgea target
1241# CHECK-BE: bgelr 2 # encoding: [0x4c,0x88,0x00,0x20]
1242# CHECK-LE: bgelr 2 # encoding: [0x20,0x00,0x88,0x4c]
1243 bgelr 2
1244# CHECK-BE: bgelr 0 # encoding: [0x4c,0x80,0x00,0x20]
1245# CHECK-LE: bgelr 0 # encoding: [0x20,0x00,0x80,0x4c]
1246 bgelr
1247# CHECK-BE: bgectr 2 # encoding: [0x4c,0x88,0x04,0x20]
1248# CHECK-LE: bgectr 2 # encoding: [0x20,0x04,0x88,0x4c]
1249 bgectr 2
1250# CHECK-BE: bgectr 0 # encoding: [0x4c,0x80,0x04,0x20]
1251# CHECK-LE: bgectr 0 # encoding: [0x20,0x04,0x80,0x4c]
1252 bgectr
1253# CHECK-BE: bgel 2, target # encoding: [0x40,0x88,A,0bAAAAAA01]
1254# CHECK-LE: bgel 2, target # encoding: [0bAAAAAA01,A,0x88,0x40]
1255# CHECK-BE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14
1256# CHECK-LE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14
1257 bgel 2, target
1258# CHECK-BE: bgel 0, target # encoding: [0x40,0x80,A,0bAAAAAA01]
1259# CHECK-LE: bgel 0, target # encoding: [0bAAAAAA01,A,0x80,0x40]
1260# CHECK-BE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14
1261# CHECK-LE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14
1262 bgel target
1263# CHECK-BE: bgela 2, target # encoding: [0x40,0x88,A,0bAAAAAA11]
1264# CHECK-LE: bgela 2, target # encoding: [0bAAAAAA11,A,0x88,0x40]
1265# CHECK-BE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14abs
1266# CHECK-LE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14abs
1267 bgela 2, target
1268# CHECK-BE: bgela 0, target # encoding: [0x40,0x80,A,0bAAAAAA11]
1269# CHECK-LE: bgela 0, target # encoding: [0bAAAAAA11,A,0x80,0x40]
1270# CHECK-BE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14abs
1271# CHECK-LE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14abs
1272 bgela target
1273# CHECK-BE: bgelrl 2 # encoding: [0x4c,0x88,0x00,0x21]
1274# CHECK-LE: bgelrl 2 # encoding: [0x21,0x00,0x88,0x4c]
1275 bgelrl 2
1276# CHECK-BE: bgelrl 0 # encoding: [0x4c,0x80,0x00,0x21]
1277# CHECK-LE: bgelrl 0 # encoding: [0x21,0x00,0x80,0x4c]
1278 bgelrl
1279# CHECK-BE: bgectrl 2 # encoding: [0x4c,0x88,0x04,0x21]
1280# CHECK-LE: bgectrl 2 # encoding: [0x21,0x04,0x88,0x4c]
1281 bgectrl 2
1282# CHECK-BE: bgectrl 0 # encoding: [0x4c,0x80,0x04,0x21]
1283# CHECK-LE: bgectrl 0 # encoding: [0x21,0x04,0x80,0x4c]
1284 bgectrl
Ulrich Weigandd8394902013-05-03 19:50:27 +00001285
Ulrich Weigandcae3a172014-03-24 18:16:09 +00001286# CHECK-BE: bge+ 2, target # encoding: [0x40,0xe8,A,0bAAAAAA00]
1287# CHECK-LE: bge+ 2, target # encoding: [0bAAAAAA00,A,0xe8,0x40]
1288# CHECK-BE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14
1289# CHECK-LE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14
1290 bge+ 2, target
1291# CHECK-BE: bge+ 0, target # encoding: [0x40,0xe0,A,0bAAAAAA00]
1292# CHECK-LE: bge+ 0, target # encoding: [0bAAAAAA00,A,0xe0,0x40]
1293# CHECK-BE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14
1294# CHECK-LE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14
1295 bge+ target
1296# CHECK-BE: bgea+ 2, target # encoding: [0x40,0xe8,A,0bAAAAAA10]
1297# CHECK-LE: bgea+ 2, target # encoding: [0bAAAAAA10,A,0xe8,0x40]
1298# CHECK-BE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14abs
1299# CHECK-LE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14abs
1300 bgea+ 2, target
1301# CHECK-BE: bgea+ 0, target # encoding: [0x40,0xe0,A,0bAAAAAA10]
1302# CHECK-LE: bgea+ 0, target # encoding: [0bAAAAAA10,A,0xe0,0x40]
1303# CHECK-BE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14abs
1304# CHECK-LE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14abs
1305 bgea+ target
1306# CHECK-BE: bgelr+ 2 # encoding: [0x4c,0xe8,0x00,0x20]
1307# CHECK-LE: bgelr+ 2 # encoding: [0x20,0x00,0xe8,0x4c]
1308 bgelr+ 2
1309# CHECK-BE: bgelr+ 0 # encoding: [0x4c,0xe0,0x00,0x20]
1310# CHECK-LE: bgelr+ 0 # encoding: [0x20,0x00,0xe0,0x4c]
1311 bgelr+
1312# CHECK-BE: bgectr+ 2 # encoding: [0x4c,0xe8,0x04,0x20]
1313# CHECK-LE: bgectr+ 2 # encoding: [0x20,0x04,0xe8,0x4c]
1314 bgectr+ 2
1315# CHECK-BE: bgectr+ 0 # encoding: [0x4c,0xe0,0x04,0x20]
1316# CHECK-LE: bgectr+ 0 # encoding: [0x20,0x04,0xe0,0x4c]
1317 bgectr+
1318# CHECK-BE: bgel+ 2, target # encoding: [0x40,0xe8,A,0bAAAAAA01]
1319# CHECK-LE: bgel+ 2, target # encoding: [0bAAAAAA01,A,0xe8,0x40]
1320# CHECK-BE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14
1321# CHECK-LE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14
1322 bgel+ 2, target
1323# CHECK-BE: bgel+ 0, target # encoding: [0x40,0xe0,A,0bAAAAAA01]
1324# CHECK-LE: bgel+ 0, target # encoding: [0bAAAAAA01,A,0xe0,0x40]
1325# CHECK-BE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14
1326# CHECK-LE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14
1327 bgel+ target
1328# CHECK-BE: bgela+ 2, target # encoding: [0x40,0xe8,A,0bAAAAAA11]
1329# CHECK-LE: bgela+ 2, target # encoding: [0bAAAAAA11,A,0xe8,0x40]
1330# CHECK-BE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14abs
1331# CHECK-LE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14abs
1332 bgela+ 2, target
1333# CHECK-BE: bgela+ 0, target # encoding: [0x40,0xe0,A,0bAAAAAA11]
1334# CHECK-LE: bgela+ 0, target # encoding: [0bAAAAAA11,A,0xe0,0x40]
1335# CHECK-BE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14abs
1336# CHECK-LE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14abs
1337 bgela+ target
1338# CHECK-BE: bgelrl+ 2 # encoding: [0x4c,0xe8,0x00,0x21]
1339# CHECK-LE: bgelrl+ 2 # encoding: [0x21,0x00,0xe8,0x4c]
1340 bgelrl+ 2
1341# CHECK-BE: bgelrl+ 0 # encoding: [0x4c,0xe0,0x00,0x21]
1342# CHECK-LE: bgelrl+ 0 # encoding: [0x21,0x00,0xe0,0x4c]
1343 bgelrl+
1344# CHECK-BE: bgectrl+ 2 # encoding: [0x4c,0xe8,0x04,0x21]
1345# CHECK-LE: bgectrl+ 2 # encoding: [0x21,0x04,0xe8,0x4c]
1346 bgectrl+ 2
1347# CHECK-BE: bgectrl+ 0 # encoding: [0x4c,0xe0,0x04,0x21]
1348# CHECK-LE: bgectrl+ 0 # encoding: [0x21,0x04,0xe0,0x4c]
1349 bgectrl+
Ulrich Weigand86247b62013-06-24 16:52:04 +00001350
Ulrich Weigandcae3a172014-03-24 18:16:09 +00001351# CHECK-BE: bge- 2, target # encoding: [0x40,0xc8,A,0bAAAAAA00]
1352# CHECK-LE: bge- 2, target # encoding: [0bAAAAAA00,A,0xc8,0x40]
1353# CHECK-BE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14
1354# CHECK-LE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14
1355 bge- 2, target
1356# CHECK-BE: bge- 0, target # encoding: [0x40,0xc0,A,0bAAAAAA00]
1357# CHECK-LE: bge- 0, target # encoding: [0bAAAAAA00,A,0xc0,0x40]
1358# CHECK-BE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14
1359# CHECK-LE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14
1360 bge- target
1361# CHECK-BE: bgea- 2, target # encoding: [0x40,0xc8,A,0bAAAAAA10]
1362# CHECK-LE: bgea- 2, target # encoding: [0bAAAAAA10,A,0xc8,0x40]
1363# CHECK-BE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14abs
1364# CHECK-LE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14abs
1365 bgea- 2, target
1366# CHECK-BE: bgea- 0, target # encoding: [0x40,0xc0,A,0bAAAAAA10]
1367# CHECK-LE: bgea- 0, target # encoding: [0bAAAAAA10,A,0xc0,0x40]
1368# CHECK-BE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14abs
1369# CHECK-LE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14abs
1370 bgea- target
1371# CHECK-BE: bgelr- 2 # encoding: [0x4c,0xc8,0x00,0x20]
1372# CHECK-LE: bgelr- 2 # encoding: [0x20,0x00,0xc8,0x4c]
1373 bgelr- 2
1374# CHECK-BE: bgelr- 0 # encoding: [0x4c,0xc0,0x00,0x20]
1375# CHECK-LE: bgelr- 0 # encoding: [0x20,0x00,0xc0,0x4c]
1376 bgelr-
1377# CHECK-BE: bgectr- 2 # encoding: [0x4c,0xc8,0x04,0x20]
1378# CHECK-LE: bgectr- 2 # encoding: [0x20,0x04,0xc8,0x4c]
1379 bgectr- 2
1380# CHECK-BE: bgectr- 0 # encoding: [0x4c,0xc0,0x04,0x20]
1381# CHECK-LE: bgectr- 0 # encoding: [0x20,0x04,0xc0,0x4c]
1382 bgectr-
1383# CHECK-BE: bgel- 2, target # encoding: [0x40,0xc8,A,0bAAAAAA01]
1384# CHECK-LE: bgel- 2, target # encoding: [0bAAAAAA01,A,0xc8,0x40]
1385# CHECK-BE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14
1386# CHECK-LE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14
1387 bgel- 2, target
1388# CHECK-BE: bgel- 0, target # encoding: [0x40,0xc0,A,0bAAAAAA01]
1389# CHECK-LE: bgel- 0, target # encoding: [0bAAAAAA01,A,0xc0,0x40]
1390# CHECK-BE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14
1391# CHECK-LE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14
1392 bgel- target
1393# CHECK-BE: bgela- 2, target # encoding: [0x40,0xc8,A,0bAAAAAA11]
1394# CHECK-LE: bgela- 2, target # encoding: [0bAAAAAA11,A,0xc8,0x40]
1395# CHECK-BE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14abs
1396# CHECK-LE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14abs
1397 bgela- 2, target
1398# CHECK-BE: bgela- 0, target # encoding: [0x40,0xc0,A,0bAAAAAA11]
1399# CHECK-LE: bgela- 0, target # encoding: [0bAAAAAA11,A,0xc0,0x40]
1400# CHECK-BE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14abs
1401# CHECK-LE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14abs
1402 bgela- target
1403# CHECK-BE: bgelrl- 2 # encoding: [0x4c,0xc8,0x00,0x21]
1404# CHECK-LE: bgelrl- 2 # encoding: [0x21,0x00,0xc8,0x4c]
1405 bgelrl- 2
1406# CHECK-BE: bgelrl- 0 # encoding: [0x4c,0xc0,0x00,0x21]
1407# CHECK-LE: bgelrl- 0 # encoding: [0x21,0x00,0xc0,0x4c]
1408 bgelrl-
1409# CHECK-BE: bgectrl- 2 # encoding: [0x4c,0xc8,0x04,0x21]
1410# CHECK-LE: bgectrl- 2 # encoding: [0x21,0x04,0xc8,0x4c]
1411 bgectrl- 2
1412# CHECK-BE: bgectrl- 0 # encoding: [0x4c,0xc0,0x04,0x21]
1413# CHECK-LE: bgectrl- 0 # encoding: [0x21,0x04,0xc0,0x4c]
1414 bgectrl-
Ulrich Weigand86247b62013-06-24 16:52:04 +00001415
Ulrich Weigandcae3a172014-03-24 18:16:09 +00001416# CHECK-BE: bgt 2, target # encoding: [0x41,0x89,A,0bAAAAAA00]
1417# CHECK-LE: bgt 2, target # encoding: [0bAAAAAA00,A,0x89,0x41]
1418# CHECK-BE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14
1419# CHECK-LE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14
1420 bgt 2, target
1421# CHECK-BE: bgt 0, target # encoding: [0x41,0x81,A,0bAAAAAA00]
1422# CHECK-LE: bgt 0, target # encoding: [0bAAAAAA00,A,0x81,0x41]
1423# CHECK-BE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14
1424# CHECK-LE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14
1425 bgt target
1426# CHECK-BE: bgta 2, target # encoding: [0x41,0x89,A,0bAAAAAA10]
1427# CHECK-LE: bgta 2, target # encoding: [0bAAAAAA10,A,0x89,0x41]
1428# CHECK-BE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14abs
1429# CHECK-LE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14abs
1430 bgta 2, target
1431# CHECK-BE: bgta 0, target # encoding: [0x41,0x81,A,0bAAAAAA10]
1432# CHECK-LE: bgta 0, target # encoding: [0bAAAAAA10,A,0x81,0x41]
1433# CHECK-BE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14abs
1434# CHECK-LE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14abs
1435 bgta target
1436# CHECK-BE: bgtlr 2 # encoding: [0x4d,0x89,0x00,0x20]
1437# CHECK-LE: bgtlr 2 # encoding: [0x20,0x00,0x89,0x4d]
1438 bgtlr 2
1439# CHECK-BE: bgtlr 0 # encoding: [0x4d,0x81,0x00,0x20]
1440# CHECK-LE: bgtlr 0 # encoding: [0x20,0x00,0x81,0x4d]
1441 bgtlr
1442# CHECK-BE: bgtctr 2 # encoding: [0x4d,0x89,0x04,0x20]
1443# CHECK-LE: bgtctr 2 # encoding: [0x20,0x04,0x89,0x4d]
1444 bgtctr 2
1445# CHECK-BE: bgtctr 0 # encoding: [0x4d,0x81,0x04,0x20]
1446# CHECK-LE: bgtctr 0 # encoding: [0x20,0x04,0x81,0x4d]
1447 bgtctr
1448# CHECK-BE: bgtl 2, target # encoding: [0x41,0x89,A,0bAAAAAA01]
1449# CHECK-LE: bgtl 2, target # encoding: [0bAAAAAA01,A,0x89,0x41]
1450# CHECK-BE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14
1451# CHECK-LE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14
1452 bgtl 2, target
1453# CHECK-BE: bgtl 0, target # encoding: [0x41,0x81,A,0bAAAAAA01]
1454# CHECK-LE: bgtl 0, target # encoding: [0bAAAAAA01,A,0x81,0x41]
1455# CHECK-BE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14
1456# CHECK-LE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14
1457 bgtl target
1458# CHECK-BE: bgtla 2, target # encoding: [0x41,0x89,A,0bAAAAAA11]
1459# CHECK-LE: bgtla 2, target # encoding: [0bAAAAAA11,A,0x89,0x41]
1460# CHECK-BE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14abs
1461# CHECK-LE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14abs
1462 bgtla 2, target
1463# CHECK-BE: bgtla 0, target # encoding: [0x41,0x81,A,0bAAAAAA11]
1464# CHECK-LE: bgtla 0, target # encoding: [0bAAAAAA11,A,0x81,0x41]
1465# CHECK-BE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14abs
1466# CHECK-LE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14abs
1467 bgtla target
1468# CHECK-BE: bgtlrl 2 # encoding: [0x4d,0x89,0x00,0x21]
1469# CHECK-LE: bgtlrl 2 # encoding: [0x21,0x00,0x89,0x4d]
1470 bgtlrl 2
1471# CHECK-BE: bgtlrl 0 # encoding: [0x4d,0x81,0x00,0x21]
1472# CHECK-LE: bgtlrl 0 # encoding: [0x21,0x00,0x81,0x4d]
1473 bgtlrl
1474# CHECK-BE: bgtctrl 2 # encoding: [0x4d,0x89,0x04,0x21]
1475# CHECK-LE: bgtctrl 2 # encoding: [0x21,0x04,0x89,0x4d]
1476 bgtctrl 2
1477# CHECK-BE: bgtctrl 0 # encoding: [0x4d,0x81,0x04,0x21]
1478# CHECK-LE: bgtctrl 0 # encoding: [0x21,0x04,0x81,0x4d]
1479 bgtctrl
Ulrich Weigandd8394902013-05-03 19:50:27 +00001480
Ulrich Weigandcae3a172014-03-24 18:16:09 +00001481# CHECK-BE: bgt+ 2, target # encoding: [0x41,0xe9,A,0bAAAAAA00]
1482# CHECK-LE: bgt+ 2, target # encoding: [0bAAAAAA00,A,0xe9,0x41]
1483# CHECK-BE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14
1484# CHECK-LE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14
1485 bgt+ 2, target
1486# CHECK-BE: bgt+ 0, target # encoding: [0x41,0xe1,A,0bAAAAAA00]
1487# CHECK-LE: bgt+ 0, target # encoding: [0bAAAAAA00,A,0xe1,0x41]
1488# CHECK-BE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14
1489# CHECK-LE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14
1490 bgt+ target
1491# CHECK-BE: bgta+ 2, target # encoding: [0x41,0xe9,A,0bAAAAAA10]
1492# CHECK-LE: bgta+ 2, target # encoding: [0bAAAAAA10,A,0xe9,0x41]
1493# CHECK-BE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14abs
1494# CHECK-LE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14abs
1495 bgta+ 2, target
1496# CHECK-BE: bgta+ 0, target # encoding: [0x41,0xe1,A,0bAAAAAA10]
1497# CHECK-LE: bgta+ 0, target # encoding: [0bAAAAAA10,A,0xe1,0x41]
1498# CHECK-BE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14abs
1499# CHECK-LE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14abs
1500 bgta+ target
1501# CHECK-BE: bgtlr+ 2 # encoding: [0x4d,0xe9,0x00,0x20]
1502# CHECK-LE: bgtlr+ 2 # encoding: [0x20,0x00,0xe9,0x4d]
1503 bgtlr+ 2
1504# CHECK-BE: bgtlr+ 0 # encoding: [0x4d,0xe1,0x00,0x20]
1505# CHECK-LE: bgtlr+ 0 # encoding: [0x20,0x00,0xe1,0x4d]
1506 bgtlr+
1507# CHECK-BE: bgtctr+ 2 # encoding: [0x4d,0xe9,0x04,0x20]
1508# CHECK-LE: bgtctr+ 2 # encoding: [0x20,0x04,0xe9,0x4d]
1509 bgtctr+ 2
1510# CHECK-BE: bgtctr+ 0 # encoding: [0x4d,0xe1,0x04,0x20]
1511# CHECK-LE: bgtctr+ 0 # encoding: [0x20,0x04,0xe1,0x4d]
1512 bgtctr+
1513# CHECK-BE: bgtl+ 2, target # encoding: [0x41,0xe9,A,0bAAAAAA01]
1514# CHECK-LE: bgtl+ 2, target # encoding: [0bAAAAAA01,A,0xe9,0x41]
1515# CHECK-BE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14
1516# CHECK-LE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14
1517 bgtl+ 2, target
1518# CHECK-BE: bgtl+ 0, target # encoding: [0x41,0xe1,A,0bAAAAAA01]
1519# CHECK-LE: bgtl+ 0, target # encoding: [0bAAAAAA01,A,0xe1,0x41]
1520# CHECK-BE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14
1521# CHECK-LE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14
1522 bgtl+ target
1523# CHECK-BE: bgtla+ 2, target # encoding: [0x41,0xe9,A,0bAAAAAA11]
1524# CHECK-LE: bgtla+ 2, target # encoding: [0bAAAAAA11,A,0xe9,0x41]
1525# CHECK-BE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14abs
1526# CHECK-LE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14abs
1527 bgtla+ 2, target
1528# CHECK-BE: bgtla+ 0, target # encoding: [0x41,0xe1,A,0bAAAAAA11]
1529# CHECK-LE: bgtla+ 0, target # encoding: [0bAAAAAA11,A,0xe1,0x41]
1530# CHECK-BE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14abs
1531# CHECK-LE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14abs
1532 bgtla+ target
1533# CHECK-BE: bgtlrl+ 2 # encoding: [0x4d,0xe9,0x00,0x21]
1534# CHECK-LE: bgtlrl+ 2 # encoding: [0x21,0x00,0xe9,0x4d]
1535 bgtlrl+ 2
1536# CHECK-BE: bgtlrl+ 0 # encoding: [0x4d,0xe1,0x00,0x21]
1537# CHECK-LE: bgtlrl+ 0 # encoding: [0x21,0x00,0xe1,0x4d]
1538 bgtlrl+
1539# CHECK-BE: bgtctrl+ 2 # encoding: [0x4d,0xe9,0x04,0x21]
1540# CHECK-LE: bgtctrl+ 2 # encoding: [0x21,0x04,0xe9,0x4d]
1541 bgtctrl+ 2
1542# CHECK-BE: bgtctrl+ 0 # encoding: [0x4d,0xe1,0x04,0x21]
1543# CHECK-LE: bgtctrl+ 0 # encoding: [0x21,0x04,0xe1,0x4d]
1544 bgtctrl+
Ulrich Weigand86247b62013-06-24 16:52:04 +00001545
Ulrich Weigandcae3a172014-03-24 18:16:09 +00001546# CHECK-BE: bgt- 2, target # encoding: [0x41,0xc9,A,0bAAAAAA00]
1547# CHECK-LE: bgt- 2, target # encoding: [0bAAAAAA00,A,0xc9,0x41]
1548# CHECK-BE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14
1549# CHECK-LE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14
1550 bgt- 2, target
1551# CHECK-BE: bgt- 0, target # encoding: [0x41,0xc1,A,0bAAAAAA00]
1552# CHECK-LE: bgt- 0, target # encoding: [0bAAAAAA00,A,0xc1,0x41]
1553# CHECK-BE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14
1554# CHECK-LE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14
1555 bgt- target
1556# CHECK-BE: bgta- 2, target # encoding: [0x41,0xc9,A,0bAAAAAA10]
1557# CHECK-LE: bgta- 2, target # encoding: [0bAAAAAA10,A,0xc9,0x41]
1558# CHECK-BE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14abs
1559# CHECK-LE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14abs
1560 bgta- 2, target
1561# CHECK-BE: bgta- 0, target # encoding: [0x41,0xc1,A,0bAAAAAA10]
1562# CHECK-LE: bgta- 0, target # encoding: [0bAAAAAA10,A,0xc1,0x41]
1563# CHECK-BE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14abs
1564# CHECK-LE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14abs
1565 bgta- target
1566# CHECK-BE: bgtlr- 2 # encoding: [0x4d,0xc9,0x00,0x20]
1567# CHECK-LE: bgtlr- 2 # encoding: [0x20,0x00,0xc9,0x4d]
1568 bgtlr- 2
1569# CHECK-BE: bgtlr- 0 # encoding: [0x4d,0xc1,0x00,0x20]
1570# CHECK-LE: bgtlr- 0 # encoding: [0x20,0x00,0xc1,0x4d]
1571 bgtlr-
1572# CHECK-BE: bgtctr- 2 # encoding: [0x4d,0xc9,0x04,0x20]
1573# CHECK-LE: bgtctr- 2 # encoding: [0x20,0x04,0xc9,0x4d]
1574 bgtctr- 2
1575# CHECK-BE: bgtctr- 0 # encoding: [0x4d,0xc1,0x04,0x20]
1576# CHECK-LE: bgtctr- 0 # encoding: [0x20,0x04,0xc1,0x4d]
1577 bgtctr-
1578# CHECK-BE: bgtl- 2, target # encoding: [0x41,0xc9,A,0bAAAAAA01]
1579# CHECK-LE: bgtl- 2, target # encoding: [0bAAAAAA01,A,0xc9,0x41]
1580# CHECK-BE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14
1581# CHECK-LE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14
1582 bgtl- 2, target
1583# CHECK-BE: bgtl- 0, target # encoding: [0x41,0xc1,A,0bAAAAAA01]
1584# CHECK-LE: bgtl- 0, target # encoding: [0bAAAAAA01,A,0xc1,0x41]
1585# CHECK-BE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14
1586# CHECK-LE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14
1587 bgtl- target
1588# CHECK-BE: bgtla- 2, target # encoding: [0x41,0xc9,A,0bAAAAAA11]
1589# CHECK-LE: bgtla- 2, target # encoding: [0bAAAAAA11,A,0xc9,0x41]
1590# CHECK-BE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14abs
1591# CHECK-LE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14abs
1592 bgtla- 2, target
1593# CHECK-BE: bgtla- 0, target # encoding: [0x41,0xc1,A,0bAAAAAA11]
1594# CHECK-LE: bgtla- 0, target # encoding: [0bAAAAAA11,A,0xc1,0x41]
1595# CHECK-BE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14abs
1596# CHECK-LE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14abs
1597 bgtla- target
1598# CHECK-BE: bgtlrl- 2 # encoding: [0x4d,0xc9,0x00,0x21]
1599# CHECK-LE: bgtlrl- 2 # encoding: [0x21,0x00,0xc9,0x4d]
1600 bgtlrl- 2
1601# CHECK-BE: bgtlrl- 0 # encoding: [0x4d,0xc1,0x00,0x21]
1602# CHECK-LE: bgtlrl- 0 # encoding: [0x21,0x00,0xc1,0x4d]
1603 bgtlrl-
1604# CHECK-BE: bgtctrl- 2 # encoding: [0x4d,0xc9,0x04,0x21]
1605# CHECK-LE: bgtctrl- 2 # encoding: [0x21,0x04,0xc9,0x4d]
1606 bgtctrl- 2
1607# CHECK-BE: bgtctrl- 0 # encoding: [0x4d,0xc1,0x04,0x21]
1608# CHECK-LE: bgtctrl- 0 # encoding: [0x21,0x04,0xc1,0x4d]
1609 bgtctrl-
Ulrich Weigand86247b62013-06-24 16:52:04 +00001610
Ulrich Weigandcae3a172014-03-24 18:16:09 +00001611# CHECK-BE: bge 2, target # encoding: [0x40,0x88,A,0bAAAAAA00]
1612# CHECK-LE: bge 2, target # encoding: [0bAAAAAA00,A,0x88,0x40]
1613# CHECK-BE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14
1614# CHECK-LE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14
1615 bnl 2, target
1616# CHECK-BE: bge 0, target # encoding: [0x40,0x80,A,0bAAAAAA00]
1617# CHECK-LE: bge 0, target # encoding: [0bAAAAAA00,A,0x80,0x40]
1618# CHECK-BE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14
1619# CHECK-LE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14
1620 bnl target
1621# CHECK-BE: bgea 2, target # encoding: [0x40,0x88,A,0bAAAAAA10]
1622# CHECK-LE: bgea 2, target # encoding: [0bAAAAAA10,A,0x88,0x40]
1623# CHECK-BE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14abs
1624# CHECK-LE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14abs
1625 bnla 2, target
1626# CHECK-BE: bgea 0, target # encoding: [0x40,0x80,A,0bAAAAAA10]
1627# CHECK-LE: bgea 0, target # encoding: [0bAAAAAA10,A,0x80,0x40]
1628# CHECK-BE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14abs
1629# CHECK-LE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14abs
1630 bnla target
1631# CHECK-BE: bgelr 2 # encoding: [0x4c,0x88,0x00,0x20]
1632# CHECK-LE: bgelr 2 # encoding: [0x20,0x00,0x88,0x4c]
1633 bnllr 2
1634# CHECK-BE: bgelr 0 # encoding: [0x4c,0x80,0x00,0x20]
1635# CHECK-LE: bgelr 0 # encoding: [0x20,0x00,0x80,0x4c]
1636 bnllr
1637# CHECK-BE: bgectr 2 # encoding: [0x4c,0x88,0x04,0x20]
1638# CHECK-LE: bgectr 2 # encoding: [0x20,0x04,0x88,0x4c]
1639 bnlctr 2
1640# CHECK-BE: bgectr 0 # encoding: [0x4c,0x80,0x04,0x20]
1641# CHECK-LE: bgectr 0 # encoding: [0x20,0x04,0x80,0x4c]
1642 bnlctr
1643# CHECK-BE: bgel 2, target # encoding: [0x40,0x88,A,0bAAAAAA01]
1644# CHECK-LE: bgel 2, target # encoding: [0bAAAAAA01,A,0x88,0x40]
1645# CHECK-BE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14
1646# CHECK-LE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14
1647 bnll 2, target
1648# CHECK-BE: bgel 0, target # encoding: [0x40,0x80,A,0bAAAAAA01]
1649# CHECK-LE: bgel 0, target # encoding: [0bAAAAAA01,A,0x80,0x40]
1650# CHECK-BE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14
1651# CHECK-LE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14
1652 bnll target
1653# CHECK-BE: bgela 2, target # encoding: [0x40,0x88,A,0bAAAAAA11]
1654# CHECK-LE: bgela 2, target # encoding: [0bAAAAAA11,A,0x88,0x40]
1655# CHECK-BE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14abs
1656# CHECK-LE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14abs
1657 bnlla 2, target
1658# CHECK-BE: bgela 0, target # encoding: [0x40,0x80,A,0bAAAAAA11]
1659# CHECK-LE: bgela 0, target # encoding: [0bAAAAAA11,A,0x80,0x40]
1660# CHECK-BE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14abs
1661# CHECK-LE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14abs
1662 bnlla target
1663# CHECK-BE: bgelrl 2 # encoding: [0x4c,0x88,0x00,0x21]
1664# CHECK-LE: bgelrl 2 # encoding: [0x21,0x00,0x88,0x4c]
1665 bnllrl 2
1666# CHECK-BE: bgelrl 0 # encoding: [0x4c,0x80,0x00,0x21]
1667# CHECK-LE: bgelrl 0 # encoding: [0x21,0x00,0x80,0x4c]
1668 bnllrl
1669# CHECK-BE: bgectrl 2 # encoding: [0x4c,0x88,0x04,0x21]
1670# CHECK-LE: bgectrl 2 # encoding: [0x21,0x04,0x88,0x4c]
1671 bnlctrl 2
1672# CHECK-BE: bgectrl 0 # encoding: [0x4c,0x80,0x04,0x21]
1673# CHECK-LE: bgectrl 0 # encoding: [0x21,0x04,0x80,0x4c]
1674 bnlctrl
Ulrich Weigandd8394902013-05-03 19:50:27 +00001675
Ulrich Weigandcae3a172014-03-24 18:16:09 +00001676# CHECK-BE: bge+ 2, target # encoding: [0x40,0xe8,A,0bAAAAAA00]
1677# CHECK-LE: bge+ 2, target # encoding: [0bAAAAAA00,A,0xe8,0x40]
1678# CHECK-BE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14
1679# CHECK-LE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14
1680 bnl+ 2, target
1681# CHECK-BE: bge+ 0, target # encoding: [0x40,0xe0,A,0bAAAAAA00]
1682# CHECK-LE: bge+ 0, target # encoding: [0bAAAAAA00,A,0xe0,0x40]
1683# CHECK-BE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14
1684# CHECK-LE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14
1685 bnl+ target
1686# CHECK-BE: bgea+ 2, target # encoding: [0x40,0xe8,A,0bAAAAAA10]
1687# CHECK-LE: bgea+ 2, target # encoding: [0bAAAAAA10,A,0xe8,0x40]
1688# CHECK-BE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14abs
1689# CHECK-LE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14abs
1690 bnla+ 2, target
1691# CHECK-BE: bgea+ 0, target # encoding: [0x40,0xe0,A,0bAAAAAA10]
1692# CHECK-LE: bgea+ 0, target # encoding: [0bAAAAAA10,A,0xe0,0x40]
1693# CHECK-BE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14abs
1694# CHECK-LE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14abs
1695 bnla+ target
1696# CHECK-BE: bgelr+ 2 # encoding: [0x4c,0xe8,0x00,0x20]
1697# CHECK-LE: bgelr+ 2 # encoding: [0x20,0x00,0xe8,0x4c]
1698 bnllr+ 2
1699# CHECK-BE: bgelr+ 0 # encoding: [0x4c,0xe0,0x00,0x20]
1700# CHECK-LE: bgelr+ 0 # encoding: [0x20,0x00,0xe0,0x4c]
1701 bnllr+
1702# CHECK-BE: bgectr+ 2 # encoding: [0x4c,0xe8,0x04,0x20]
1703# CHECK-LE: bgectr+ 2 # encoding: [0x20,0x04,0xe8,0x4c]
1704 bnlctr+ 2
1705# CHECK-BE: bgectr+ 0 # encoding: [0x4c,0xe0,0x04,0x20]
1706# CHECK-LE: bgectr+ 0 # encoding: [0x20,0x04,0xe0,0x4c]
1707 bnlctr+
1708# CHECK-BE: bgel+ 2, target # encoding: [0x40,0xe8,A,0bAAAAAA01]
1709# CHECK-LE: bgel+ 2, target # encoding: [0bAAAAAA01,A,0xe8,0x40]
1710# CHECK-BE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14
1711# CHECK-LE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14
1712 bnll+ 2, target
1713# CHECK-BE: bgel+ 0, target # encoding: [0x40,0xe0,A,0bAAAAAA01]
1714# CHECK-LE: bgel+ 0, target # encoding: [0bAAAAAA01,A,0xe0,0x40]
1715# CHECK-BE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14
1716# CHECK-LE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14
1717 bnll+ target
1718# CHECK-BE: bgela+ 2, target # encoding: [0x40,0xe8,A,0bAAAAAA11]
1719# CHECK-LE: bgela+ 2, target # encoding: [0bAAAAAA11,A,0xe8,0x40]
1720# CHECK-BE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14abs
1721# CHECK-LE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14abs
1722 bnlla+ 2, target
1723# CHECK-BE: bgela+ 0, target # encoding: [0x40,0xe0,A,0bAAAAAA11]
1724# CHECK-LE: bgela+ 0, target # encoding: [0bAAAAAA11,A,0xe0,0x40]
1725# CHECK-BE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14abs
1726# CHECK-LE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14abs
1727 bnlla+ target
1728# CHECK-BE: bgelrl+ 2 # encoding: [0x4c,0xe8,0x00,0x21]
1729# CHECK-LE: bgelrl+ 2 # encoding: [0x21,0x00,0xe8,0x4c]
1730 bnllrl+ 2
1731# CHECK-BE: bgelrl+ 0 # encoding: [0x4c,0xe0,0x00,0x21]
1732# CHECK-LE: bgelrl+ 0 # encoding: [0x21,0x00,0xe0,0x4c]
1733 bnllrl+
1734# CHECK-BE: bgectrl+ 2 # encoding: [0x4c,0xe8,0x04,0x21]
1735# CHECK-LE: bgectrl+ 2 # encoding: [0x21,0x04,0xe8,0x4c]
1736 bnlctrl+ 2
1737# CHECK-BE: bgectrl+ 0 # encoding: [0x4c,0xe0,0x04,0x21]
1738# CHECK-LE: bgectrl+ 0 # encoding: [0x21,0x04,0xe0,0x4c]
1739 bnlctrl+
Ulrich Weigand86247b62013-06-24 16:52:04 +00001740
Ulrich Weigandcae3a172014-03-24 18:16:09 +00001741# CHECK-BE: bge- 2, target # encoding: [0x40,0xc8,A,0bAAAAAA00]
1742# CHECK-LE: bge- 2, target # encoding: [0bAAAAAA00,A,0xc8,0x40]
1743# CHECK-BE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14
1744# CHECK-LE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14
1745 bnl- 2, target
1746# CHECK-BE: bge- 0, target # encoding: [0x40,0xc0,A,0bAAAAAA00]
1747# CHECK-LE: bge- 0, target # encoding: [0bAAAAAA00,A,0xc0,0x40]
1748# CHECK-BE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14
1749# CHECK-LE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14
1750 bnl- target
1751# CHECK-BE: bgea- 2, target # encoding: [0x40,0xc8,A,0bAAAAAA10]
1752# CHECK-LE: bgea- 2, target # encoding: [0bAAAAAA10,A,0xc8,0x40]
1753# CHECK-BE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14abs
1754# CHECK-LE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14abs
1755 bnla- 2, target
1756# CHECK-BE: bgea- 0, target # encoding: [0x40,0xc0,A,0bAAAAAA10]
1757# CHECK-LE: bgea- 0, target # encoding: [0bAAAAAA10,A,0xc0,0x40]
1758# CHECK-BE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14abs
1759# CHECK-LE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14abs
1760 bnla- target
1761# CHECK-BE: bgelr- 2 # encoding: [0x4c,0xc8,0x00,0x20]
1762# CHECK-LE: bgelr- 2 # encoding: [0x20,0x00,0xc8,0x4c]
1763 bnllr- 2
1764# CHECK-BE: bgelr- 0 # encoding: [0x4c,0xc0,0x00,0x20]
1765# CHECK-LE: bgelr- 0 # encoding: [0x20,0x00,0xc0,0x4c]
1766 bnllr-
1767# CHECK-BE: bgectr- 2 # encoding: [0x4c,0xc8,0x04,0x20]
1768# CHECK-LE: bgectr- 2 # encoding: [0x20,0x04,0xc8,0x4c]
1769 bnlctr- 2
1770# CHECK-BE: bgectr- 0 # encoding: [0x4c,0xc0,0x04,0x20]
1771# CHECK-LE: bgectr- 0 # encoding: [0x20,0x04,0xc0,0x4c]
1772 bnlctr-
1773# CHECK-BE: bgel- 2, target # encoding: [0x40,0xc8,A,0bAAAAAA01]
1774# CHECK-LE: bgel- 2, target # encoding: [0bAAAAAA01,A,0xc8,0x40]
1775# CHECK-BE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14
1776# CHECK-LE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14
1777 bnll- 2, target
1778# CHECK-BE: bgel- 0, target # encoding: [0x40,0xc0,A,0bAAAAAA01]
1779# CHECK-LE: bgel- 0, target # encoding: [0bAAAAAA01,A,0xc0,0x40]
1780# CHECK-BE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14
1781# CHECK-LE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14
1782 bnll- target
1783# CHECK-BE: bgela- 2, target # encoding: [0x40,0xc8,A,0bAAAAAA11]
1784# CHECK-LE: bgela- 2, target # encoding: [0bAAAAAA11,A,0xc8,0x40]
1785# CHECK-BE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14abs
1786# CHECK-LE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14abs
1787 bnlla- 2, target
1788# CHECK-BE: bgela- 0, target # encoding: [0x40,0xc0,A,0bAAAAAA11]
1789# CHECK-LE: bgela- 0, target # encoding: [0bAAAAAA11,A,0xc0,0x40]
1790# CHECK-BE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14abs
1791# CHECK-LE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14abs
1792 bnlla- target
1793# CHECK-BE: bgelrl- 2 # encoding: [0x4c,0xc8,0x00,0x21]
1794# CHECK-LE: bgelrl- 2 # encoding: [0x21,0x00,0xc8,0x4c]
1795 bnllrl- 2
1796# CHECK-BE: bgelrl- 0 # encoding: [0x4c,0xc0,0x00,0x21]
1797# CHECK-LE: bgelrl- 0 # encoding: [0x21,0x00,0xc0,0x4c]
1798 bnllrl-
1799# CHECK-BE: bgectrl- 2 # encoding: [0x4c,0xc8,0x04,0x21]
1800# CHECK-LE: bgectrl- 2 # encoding: [0x21,0x04,0xc8,0x4c]
1801 bnlctrl- 2
1802# CHECK-BE: bgectrl- 0 # encoding: [0x4c,0xc0,0x04,0x21]
1803# CHECK-LE: bgectrl- 0 # encoding: [0x21,0x04,0xc0,0x4c]
1804 bnlctrl-
Ulrich Weigand86247b62013-06-24 16:52:04 +00001805
Ulrich Weigandcae3a172014-03-24 18:16:09 +00001806# CHECK-BE: bne 2, target # encoding: [0x40,0x8a,A,0bAAAAAA00]
1807# CHECK-LE: bne 2, target # encoding: [0bAAAAAA00,A,0x8a,0x40]
1808# CHECK-BE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14
1809# CHECK-LE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14
1810 bne 2, target
1811# CHECK-BE: bne 0, target # encoding: [0x40,0x82,A,0bAAAAAA00]
1812# CHECK-LE: bne 0, target # encoding: [0bAAAAAA00,A,0x82,0x40]
1813# CHECK-BE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14
1814# CHECK-LE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14
1815 bne target
1816# CHECK-BE: bnea 2, target # encoding: [0x40,0x8a,A,0bAAAAAA10]
1817# CHECK-LE: bnea 2, target # encoding: [0bAAAAAA10,A,0x8a,0x40]
1818# CHECK-BE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14abs
1819# CHECK-LE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14abs
1820 bnea 2, target
1821# CHECK-BE: bnea 0, target # encoding: [0x40,0x82,A,0bAAAAAA10]
1822# CHECK-LE: bnea 0, target # encoding: [0bAAAAAA10,A,0x82,0x40]
1823# CHECK-BE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14abs
1824# CHECK-LE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14abs
1825 bnea target
1826# CHECK-BE: bnelr 2 # encoding: [0x4c,0x8a,0x00,0x20]
1827# CHECK-LE: bnelr 2 # encoding: [0x20,0x00,0x8a,0x4c]
1828 bnelr 2
1829# CHECK-BE: bnelr 0 # encoding: [0x4c,0x82,0x00,0x20]
1830# CHECK-LE: bnelr 0 # encoding: [0x20,0x00,0x82,0x4c]
1831 bnelr
1832# CHECK-BE: bnectr 2 # encoding: [0x4c,0x8a,0x04,0x20]
1833# CHECK-LE: bnectr 2 # encoding: [0x20,0x04,0x8a,0x4c]
1834 bnectr 2
1835# CHECK-BE: bnectr 0 # encoding: [0x4c,0x82,0x04,0x20]
1836# CHECK-LE: bnectr 0 # encoding: [0x20,0x04,0x82,0x4c]
1837 bnectr
1838# CHECK-BE: bnel 2, target # encoding: [0x40,0x8a,A,0bAAAAAA01]
1839# CHECK-LE: bnel 2, target # encoding: [0bAAAAAA01,A,0x8a,0x40]
1840# CHECK-BE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14
1841# CHECK-LE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14
1842 bnel 2, target
1843# CHECK-BE: bnel 0, target # encoding: [0x40,0x82,A,0bAAAAAA01]
1844# CHECK-LE: bnel 0, target # encoding: [0bAAAAAA01,A,0x82,0x40]
1845# CHECK-BE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14
1846# CHECK-LE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14
1847 bnel target
1848# CHECK-BE: bnela 2, target # encoding: [0x40,0x8a,A,0bAAAAAA11]
1849# CHECK-LE: bnela 2, target # encoding: [0bAAAAAA11,A,0x8a,0x40]
1850# CHECK-BE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14abs
1851# CHECK-LE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14abs
1852 bnela 2, target
1853# CHECK-BE: bnela 0, target # encoding: [0x40,0x82,A,0bAAAAAA11]
1854# CHECK-LE: bnela 0, target # encoding: [0bAAAAAA11,A,0x82,0x40]
1855# CHECK-BE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14abs
1856# CHECK-LE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14abs
1857 bnela target
1858# CHECK-BE: bnelrl 2 # encoding: [0x4c,0x8a,0x00,0x21]
1859# CHECK-LE: bnelrl 2 # encoding: [0x21,0x00,0x8a,0x4c]
1860 bnelrl 2
1861# CHECK-BE: bnelrl 0 # encoding: [0x4c,0x82,0x00,0x21]
1862# CHECK-LE: bnelrl 0 # encoding: [0x21,0x00,0x82,0x4c]
1863 bnelrl
1864# CHECK-BE: bnectrl 2 # encoding: [0x4c,0x8a,0x04,0x21]
1865# CHECK-LE: bnectrl 2 # encoding: [0x21,0x04,0x8a,0x4c]
1866 bnectrl 2
1867# CHECK-BE: bnectrl 0 # encoding: [0x4c,0x82,0x04,0x21]
1868# CHECK-LE: bnectrl 0 # encoding: [0x21,0x04,0x82,0x4c]
1869 bnectrl
Ulrich Weigandd8394902013-05-03 19:50:27 +00001870
Ulrich Weigandcae3a172014-03-24 18:16:09 +00001871# CHECK-BE: bne+ 2, target # encoding: [0x40,0xea,A,0bAAAAAA00]
1872# CHECK-LE: bne+ 2, target # encoding: [0bAAAAAA00,A,0xea,0x40]
1873# CHECK-BE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14
1874# CHECK-LE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14
1875 bne+ 2, target
1876# CHECK-BE: bne+ 0, target # encoding: [0x40,0xe2,A,0bAAAAAA00]
1877# CHECK-LE: bne+ 0, target # encoding: [0bAAAAAA00,A,0xe2,0x40]
1878# CHECK-BE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14
1879# CHECK-LE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14
1880 bne+ target
1881# CHECK-BE: bnea+ 2, target # encoding: [0x40,0xea,A,0bAAAAAA10]
1882# CHECK-LE: bnea+ 2, target # encoding: [0bAAAAAA10,A,0xea,0x40]
1883# CHECK-BE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14abs
1884# CHECK-LE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14abs
1885 bnea+ 2, target
1886# CHECK-BE: bnea+ 0, target # encoding: [0x40,0xe2,A,0bAAAAAA10]
1887# CHECK-LE: bnea+ 0, target # encoding: [0bAAAAAA10,A,0xe2,0x40]
1888# CHECK-BE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14abs
1889# CHECK-LE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14abs
1890 bnea+ target
1891# CHECK-BE: bnelr+ 2 # encoding: [0x4c,0xea,0x00,0x20]
1892# CHECK-LE: bnelr+ 2 # encoding: [0x20,0x00,0xea,0x4c]
1893 bnelr+ 2
1894# CHECK-BE: bnelr+ 0 # encoding: [0x4c,0xe2,0x00,0x20]
1895# CHECK-LE: bnelr+ 0 # encoding: [0x20,0x00,0xe2,0x4c]
1896 bnelr+
1897# CHECK-BE: bnectr+ 2 # encoding: [0x4c,0xea,0x04,0x20]
1898# CHECK-LE: bnectr+ 2 # encoding: [0x20,0x04,0xea,0x4c]
1899 bnectr+ 2
1900# CHECK-BE: bnectr+ 0 # encoding: [0x4c,0xe2,0x04,0x20]
1901# CHECK-LE: bnectr+ 0 # encoding: [0x20,0x04,0xe2,0x4c]
1902 bnectr+
1903# CHECK-BE: bnel+ 2, target # encoding: [0x40,0xea,A,0bAAAAAA01]
1904# CHECK-LE: bnel+ 2, target # encoding: [0bAAAAAA01,A,0xea,0x40]
1905# CHECK-BE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14
1906# CHECK-LE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14
1907 bnel+ 2, target
1908# CHECK-BE: bnel+ 0, target # encoding: [0x40,0xe2,A,0bAAAAAA01]
1909# CHECK-LE: bnel+ 0, target # encoding: [0bAAAAAA01,A,0xe2,0x40]
1910# CHECK-BE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14
1911# CHECK-LE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14
1912 bnel+ target
1913# CHECK-BE: bnela+ 2, target # encoding: [0x40,0xea,A,0bAAAAAA11]
1914# CHECK-LE: bnela+ 2, target # encoding: [0bAAAAAA11,A,0xea,0x40]
1915# CHECK-BE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14abs
1916# CHECK-LE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14abs
1917 bnela+ 2, target
1918# CHECK-BE: bnela+ 0, target # encoding: [0x40,0xe2,A,0bAAAAAA11]
1919# CHECK-LE: bnela+ 0, target # encoding: [0bAAAAAA11,A,0xe2,0x40]
1920# CHECK-BE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14abs
1921# CHECK-LE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14abs
1922 bnela+ target
1923# CHECK-BE: bnelrl+ 2 # encoding: [0x4c,0xea,0x00,0x21]
1924# CHECK-LE: bnelrl+ 2 # encoding: [0x21,0x00,0xea,0x4c]
1925 bnelrl+ 2
1926# CHECK-BE: bnelrl+ 0 # encoding: [0x4c,0xe2,0x00,0x21]
1927# CHECK-LE: bnelrl+ 0 # encoding: [0x21,0x00,0xe2,0x4c]
1928 bnelrl+
1929# CHECK-BE: bnectrl+ 2 # encoding: [0x4c,0xea,0x04,0x21]
1930# CHECK-LE: bnectrl+ 2 # encoding: [0x21,0x04,0xea,0x4c]
1931 bnectrl+ 2
1932# CHECK-BE: bnectrl+ 0 # encoding: [0x4c,0xe2,0x04,0x21]
1933# CHECK-LE: bnectrl+ 0 # encoding: [0x21,0x04,0xe2,0x4c]
1934 bnectrl+
Ulrich Weigand86247b62013-06-24 16:52:04 +00001935
Ulrich Weigandcae3a172014-03-24 18:16:09 +00001936# CHECK-BE: bne- 2, target # encoding: [0x40,0xca,A,0bAAAAAA00]
1937# CHECK-LE: bne- 2, target # encoding: [0bAAAAAA00,A,0xca,0x40]
1938# CHECK-BE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14
1939# CHECK-LE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14
1940 bne- 2, target
1941# CHECK-BE: bne- 0, target # encoding: [0x40,0xc2,A,0bAAAAAA00]
1942# CHECK-LE: bne- 0, target # encoding: [0bAAAAAA00,A,0xc2,0x40]
1943# CHECK-BE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14
1944# CHECK-LE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14
1945 bne- target
1946# CHECK-BE: bnea- 2, target # encoding: [0x40,0xca,A,0bAAAAAA10]
1947# CHECK-LE: bnea- 2, target # encoding: [0bAAAAAA10,A,0xca,0x40]
1948# CHECK-BE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14abs
1949# CHECK-LE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14abs
1950 bnea- 2, target
1951# CHECK-BE: bnea- 0, target # encoding: [0x40,0xc2,A,0bAAAAAA10]
1952# CHECK-LE: bnea- 0, target # encoding: [0bAAAAAA10,A,0xc2,0x40]
1953# CHECK-BE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14abs
1954# CHECK-LE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14abs
1955 bnea- target
1956# CHECK-BE: bnelr- 2 # encoding: [0x4c,0xca,0x00,0x20]
1957# CHECK-LE: bnelr- 2 # encoding: [0x20,0x00,0xca,0x4c]
1958 bnelr- 2
1959# CHECK-BE: bnelr- 0 # encoding: [0x4c,0xc2,0x00,0x20]
1960# CHECK-LE: bnelr- 0 # encoding: [0x20,0x00,0xc2,0x4c]
1961 bnelr-
1962# CHECK-BE: bnectr- 2 # encoding: [0x4c,0xca,0x04,0x20]
1963# CHECK-LE: bnectr- 2 # encoding: [0x20,0x04,0xca,0x4c]
1964 bnectr- 2
1965# CHECK-BE: bnectr- 0 # encoding: [0x4c,0xc2,0x04,0x20]
1966# CHECK-LE: bnectr- 0 # encoding: [0x20,0x04,0xc2,0x4c]
1967 bnectr-
1968# CHECK-BE: bnel- 2, target # encoding: [0x40,0xca,A,0bAAAAAA01]
1969# CHECK-LE: bnel- 2, target # encoding: [0bAAAAAA01,A,0xca,0x40]
1970# CHECK-BE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14
1971# CHECK-LE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14
1972 bnel- 2, target
1973# CHECK-BE: bnel- 0, target # encoding: [0x40,0xc2,A,0bAAAAAA01]
1974# CHECK-LE: bnel- 0, target # encoding: [0bAAAAAA01,A,0xc2,0x40]
1975# CHECK-BE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14
1976# CHECK-LE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14
1977 bnel- target
1978# CHECK-BE: bnela- 2, target # encoding: [0x40,0xca,A,0bAAAAAA11]
1979# CHECK-LE: bnela- 2, target # encoding: [0bAAAAAA11,A,0xca,0x40]
1980# CHECK-BE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14abs
1981# CHECK-LE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14abs
1982 bnela- 2, target
1983# CHECK-BE: bnela- 0, target # encoding: [0x40,0xc2,A,0bAAAAAA11]
1984# CHECK-LE: bnela- 0, target # encoding: [0bAAAAAA11,A,0xc2,0x40]
1985# CHECK-BE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14abs
1986# CHECK-LE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14abs
1987 bnela- target
1988# CHECK-BE: bnelrl- 2 # encoding: [0x4c,0xca,0x00,0x21]
1989# CHECK-LE: bnelrl- 2 # encoding: [0x21,0x00,0xca,0x4c]
1990 bnelrl- 2
1991# CHECK-BE: bnelrl- 0 # encoding: [0x4c,0xc2,0x00,0x21]
1992# CHECK-LE: bnelrl- 0 # encoding: [0x21,0x00,0xc2,0x4c]
1993 bnelrl-
1994# CHECK-BE: bnectrl- 2 # encoding: [0x4c,0xca,0x04,0x21]
1995# CHECK-LE: bnectrl- 2 # encoding: [0x21,0x04,0xca,0x4c]
1996 bnectrl- 2
1997# CHECK-BE: bnectrl- 0 # encoding: [0x4c,0xc2,0x04,0x21]
1998# CHECK-LE: bnectrl- 0 # encoding: [0x21,0x04,0xc2,0x4c]
1999 bnectrl-
Ulrich Weigand86247b62013-06-24 16:52:04 +00002000
Ulrich Weigandcae3a172014-03-24 18:16:09 +00002001# CHECK-BE: ble 2, target # encoding: [0x40,0x89,A,0bAAAAAA00]
2002# CHECK-LE: ble 2, target # encoding: [0bAAAAAA00,A,0x89,0x40]
2003# CHECK-BE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14
2004# CHECK-LE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14
2005 bng 2, target
2006# CHECK-BE: ble 0, target # encoding: [0x40,0x81,A,0bAAAAAA00]
2007# CHECK-LE: ble 0, target # encoding: [0bAAAAAA00,A,0x81,0x40]
2008# CHECK-BE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14
2009# CHECK-LE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14
2010 bng target
2011# CHECK-BE: blea 2, target # encoding: [0x40,0x89,A,0bAAAAAA10]
2012# CHECK-LE: blea 2, target # encoding: [0bAAAAAA10,A,0x89,0x40]
2013# CHECK-BE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14abs
2014# CHECK-LE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14abs
2015 bnga 2, target
2016# CHECK-BE: blea 0, target # encoding: [0x40,0x81,A,0bAAAAAA10]
2017# CHECK-LE: blea 0, target # encoding: [0bAAAAAA10,A,0x81,0x40]
2018# CHECK-BE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14abs
2019# CHECK-LE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14abs
2020 bnga target
2021# CHECK-BE: blelr 2 # encoding: [0x4c,0x89,0x00,0x20]
2022# CHECK-LE: blelr 2 # encoding: [0x20,0x00,0x89,0x4c]
2023 bnglr 2
2024# CHECK-BE: blelr 0 # encoding: [0x4c,0x81,0x00,0x20]
2025# CHECK-LE: blelr 0 # encoding: [0x20,0x00,0x81,0x4c]
2026 bnglr
2027# CHECK-BE: blectr 2 # encoding: [0x4c,0x89,0x04,0x20]
2028# CHECK-LE: blectr 2 # encoding: [0x20,0x04,0x89,0x4c]
2029 bngctr 2
2030# CHECK-BE: blectr 0 # encoding: [0x4c,0x81,0x04,0x20]
2031# CHECK-LE: blectr 0 # encoding: [0x20,0x04,0x81,0x4c]
2032 bngctr
2033# CHECK-BE: blel 2, target # encoding: [0x40,0x89,A,0bAAAAAA01]
2034# CHECK-LE: blel 2, target # encoding: [0bAAAAAA01,A,0x89,0x40]
2035# CHECK-BE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14
2036# CHECK-LE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14
2037 bngl 2, target
2038# CHECK-BE: blel 0, target # encoding: [0x40,0x81,A,0bAAAAAA01]
2039# CHECK-LE: blel 0, target # encoding: [0bAAAAAA01,A,0x81,0x40]
2040# CHECK-BE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14
2041# CHECK-LE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14
2042 bngl target
2043# CHECK-BE: blela 2, target # encoding: [0x40,0x89,A,0bAAAAAA11]
2044# CHECK-LE: blela 2, target # encoding: [0bAAAAAA11,A,0x89,0x40]
2045# CHECK-BE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14abs
2046# CHECK-LE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14abs
2047 bngla 2, target
2048# CHECK-BE: blela 0, target # encoding: [0x40,0x81,A,0bAAAAAA11]
2049# CHECK-LE: blela 0, target # encoding: [0bAAAAAA11,A,0x81,0x40]
2050# CHECK-BE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14abs
2051# CHECK-LE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14abs
2052 bngla target
2053# CHECK-BE: blelrl 2 # encoding: [0x4c,0x89,0x00,0x21]
2054# CHECK-LE: blelrl 2 # encoding: [0x21,0x00,0x89,0x4c]
2055 bnglrl 2
2056# CHECK-BE: blelrl 0 # encoding: [0x4c,0x81,0x00,0x21]
2057# CHECK-LE: blelrl 0 # encoding: [0x21,0x00,0x81,0x4c]
2058 bnglrl
2059# CHECK-BE: blectrl 2 # encoding: [0x4c,0x89,0x04,0x21]
2060# CHECK-LE: blectrl 2 # encoding: [0x21,0x04,0x89,0x4c]
2061 bngctrl 2
2062# CHECK-BE: blectrl 0 # encoding: [0x4c,0x81,0x04,0x21]
2063# CHECK-LE: blectrl 0 # encoding: [0x21,0x04,0x81,0x4c]
2064 bngctrl
Ulrich Weigandd8394902013-05-03 19:50:27 +00002065
Ulrich Weigandcae3a172014-03-24 18:16:09 +00002066# CHECK-BE: ble+ 2, target # encoding: [0x40,0xe9,A,0bAAAAAA00]
2067# CHECK-LE: ble+ 2, target # encoding: [0bAAAAAA00,A,0xe9,0x40]
2068# CHECK-BE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14
2069# CHECK-LE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14
2070 bng+ 2, target
2071# CHECK-BE: ble+ 0, target # encoding: [0x40,0xe1,A,0bAAAAAA00]
2072# CHECK-LE: ble+ 0, target # encoding: [0bAAAAAA00,A,0xe1,0x40]
2073# CHECK-BE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14
2074# CHECK-LE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14
2075 bng+ target
2076# CHECK-BE: blea+ 2, target # encoding: [0x40,0xe9,A,0bAAAAAA10]
2077# CHECK-LE: blea+ 2, target # encoding: [0bAAAAAA10,A,0xe9,0x40]
2078# CHECK-BE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14abs
2079# CHECK-LE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14abs
2080 bnga+ 2, target
2081# CHECK-BE: blea+ 0, target # encoding: [0x40,0xe1,A,0bAAAAAA10]
2082# CHECK-LE: blea+ 0, target # encoding: [0bAAAAAA10,A,0xe1,0x40]
2083# CHECK-BE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14abs
2084# CHECK-LE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14abs
2085 bnga+ target
2086# CHECK-BE: blelr+ 2 # encoding: [0x4c,0xe9,0x00,0x20]
2087# CHECK-LE: blelr+ 2 # encoding: [0x20,0x00,0xe9,0x4c]
2088 bnglr+ 2
2089# CHECK-BE: blelr+ 0 # encoding: [0x4c,0xe1,0x00,0x20]
2090# CHECK-LE: blelr+ 0 # encoding: [0x20,0x00,0xe1,0x4c]
2091 bnglr+
2092# CHECK-BE: blectr+ 2 # encoding: [0x4c,0xe9,0x04,0x20]
2093# CHECK-LE: blectr+ 2 # encoding: [0x20,0x04,0xe9,0x4c]
2094 bngctr+ 2
2095# CHECK-BE: blectr+ 0 # encoding: [0x4c,0xe1,0x04,0x20]
2096# CHECK-LE: blectr+ 0 # encoding: [0x20,0x04,0xe1,0x4c]
2097 bngctr+
2098# CHECK-BE: blel+ 2, target # encoding: [0x40,0xe9,A,0bAAAAAA01]
2099# CHECK-LE: blel+ 2, target # encoding: [0bAAAAAA01,A,0xe9,0x40]
2100# CHECK-BE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14
2101# CHECK-LE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14
2102 bngl+ 2, target
2103# CHECK-BE: blel+ 0, target # encoding: [0x40,0xe1,A,0bAAAAAA01]
2104# CHECK-LE: blel+ 0, target # encoding: [0bAAAAAA01,A,0xe1,0x40]
2105# CHECK-BE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14
2106# CHECK-LE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14
2107 bngl+ target
2108# CHECK-BE: blela+ 2, target # encoding: [0x40,0xe9,A,0bAAAAAA11]
2109# CHECK-LE: blela+ 2, target # encoding: [0bAAAAAA11,A,0xe9,0x40]
2110# CHECK-BE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14abs
2111# CHECK-LE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14abs
2112 bngla+ 2, target
2113# CHECK-BE: blela+ 0, target # encoding: [0x40,0xe1,A,0bAAAAAA11]
2114# CHECK-LE: blela+ 0, target # encoding: [0bAAAAAA11,A,0xe1,0x40]
2115# CHECK-BE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14abs
2116# CHECK-LE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14abs
2117 bngla+ target
2118# CHECK-BE: blelrl+ 2 # encoding: [0x4c,0xe9,0x00,0x21]
2119# CHECK-LE: blelrl+ 2 # encoding: [0x21,0x00,0xe9,0x4c]
2120 bnglrl+ 2
2121# CHECK-BE: blelrl+ 0 # encoding: [0x4c,0xe1,0x00,0x21]
2122# CHECK-LE: blelrl+ 0 # encoding: [0x21,0x00,0xe1,0x4c]
2123 bnglrl+
2124# CHECK-BE: blectrl+ 2 # encoding: [0x4c,0xe9,0x04,0x21]
2125# CHECK-LE: blectrl+ 2 # encoding: [0x21,0x04,0xe9,0x4c]
2126 bngctrl+ 2
2127# CHECK-BE: blectrl+ 0 # encoding: [0x4c,0xe1,0x04,0x21]
2128# CHECK-LE: blectrl+ 0 # encoding: [0x21,0x04,0xe1,0x4c]
2129 bngctrl+
Ulrich Weigand86247b62013-06-24 16:52:04 +00002130
Ulrich Weigandcae3a172014-03-24 18:16:09 +00002131# CHECK-BE: ble- 2, target # encoding: [0x40,0xc9,A,0bAAAAAA00]
2132# CHECK-LE: ble- 2, target # encoding: [0bAAAAAA00,A,0xc9,0x40]
2133# CHECK-BE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14
2134# CHECK-LE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14
2135 bng- 2, target
2136# CHECK-BE: ble- 0, target # encoding: [0x40,0xc1,A,0bAAAAAA00]
2137# CHECK-LE: ble- 0, target # encoding: [0bAAAAAA00,A,0xc1,0x40]
2138# CHECK-BE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14
2139# CHECK-LE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14
2140 bng- target
2141# CHECK-BE: blea- 2, target # encoding: [0x40,0xc9,A,0bAAAAAA10]
2142# CHECK-LE: blea- 2, target # encoding: [0bAAAAAA10,A,0xc9,0x40]
2143# CHECK-BE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14abs
2144# CHECK-LE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14abs
2145 bnga- 2, target
2146# CHECK-BE: blea- 0, target # encoding: [0x40,0xc1,A,0bAAAAAA10]
2147# CHECK-LE: blea- 0, target # encoding: [0bAAAAAA10,A,0xc1,0x40]
2148# CHECK-BE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14abs
2149# CHECK-LE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14abs
2150 bnga- target
2151# CHECK-BE: blelr- 2 # encoding: [0x4c,0xc9,0x00,0x20]
2152# CHECK-LE: blelr- 2 # encoding: [0x20,0x00,0xc9,0x4c]
2153 bnglr- 2
2154# CHECK-BE: blelr- 0 # encoding: [0x4c,0xc1,0x00,0x20]
2155# CHECK-LE: blelr- 0 # encoding: [0x20,0x00,0xc1,0x4c]
2156 bnglr-
2157# CHECK-BE: blectr- 2 # encoding: [0x4c,0xc9,0x04,0x20]
2158# CHECK-LE: blectr- 2 # encoding: [0x20,0x04,0xc9,0x4c]
2159 bngctr- 2
2160# CHECK-BE: blectr- 0 # encoding: [0x4c,0xc1,0x04,0x20]
2161# CHECK-LE: blectr- 0 # encoding: [0x20,0x04,0xc1,0x4c]
2162 bngctr-
2163# CHECK-BE: blel- 2, target # encoding: [0x40,0xc9,A,0bAAAAAA01]
2164# CHECK-LE: blel- 2, target # encoding: [0bAAAAAA01,A,0xc9,0x40]
2165# CHECK-BE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14
2166# CHECK-LE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14
2167 bngl- 2, target
2168# CHECK-BE: blel- 0, target # encoding: [0x40,0xc1,A,0bAAAAAA01]
2169# CHECK-LE: blel- 0, target # encoding: [0bAAAAAA01,A,0xc1,0x40]
2170# CHECK-BE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14
2171# CHECK-LE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14
2172 bngl- target
2173# CHECK-BE: blela- 2, target # encoding: [0x40,0xc9,A,0bAAAAAA11]
2174# CHECK-LE: blela- 2, target # encoding: [0bAAAAAA11,A,0xc9,0x40]
2175# CHECK-BE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14abs
2176# CHECK-LE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14abs
2177 bngla- 2, target
2178# CHECK-BE: blela- 0, target # encoding: [0x40,0xc1,A,0bAAAAAA11]
2179# CHECK-LE: blela- 0, target # encoding: [0bAAAAAA11,A,0xc1,0x40]
2180# CHECK-BE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14abs
2181# CHECK-LE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14abs
2182 bngla- target
2183# CHECK-BE: blelrl- 2 # encoding: [0x4c,0xc9,0x00,0x21]
2184# CHECK-LE: blelrl- 2 # encoding: [0x21,0x00,0xc9,0x4c]
2185 bnglrl- 2
2186# CHECK-BE: blelrl- 0 # encoding: [0x4c,0xc1,0x00,0x21]
2187# CHECK-LE: blelrl- 0 # encoding: [0x21,0x00,0xc1,0x4c]
2188 bnglrl-
2189# CHECK-BE: blectrl- 2 # encoding: [0x4c,0xc9,0x04,0x21]
2190# CHECK-LE: blectrl- 2 # encoding: [0x21,0x04,0xc9,0x4c]
2191 bngctrl- 2
2192# CHECK-BE: blectrl- 0 # encoding: [0x4c,0xc1,0x04,0x21]
2193# CHECK-LE: blectrl- 0 # encoding: [0x21,0x04,0xc1,0x4c]
2194 bngctrl-
Ulrich Weigand86247b62013-06-24 16:52:04 +00002195
Ulrich Weigandcae3a172014-03-24 18:16:09 +00002196# CHECK-BE: bun 2, target # encoding: [0x41,0x8b,A,0bAAAAAA00]
2197# CHECK-LE: bun 2, target # encoding: [0bAAAAAA00,A,0x8b,0x41]
2198# CHECK-BE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14
2199# CHECK-LE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14
2200 bso 2, target
2201# CHECK-BE: bun 0, target # encoding: [0x41,0x83,A,0bAAAAAA00]
2202# CHECK-LE: bun 0, target # encoding: [0bAAAAAA00,A,0x83,0x41]
2203# CHECK-BE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14
2204# CHECK-LE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14
2205 bso target
2206# CHECK-BE: buna 2, target # encoding: [0x41,0x8b,A,0bAAAAAA10]
2207# CHECK-LE: buna 2, target # encoding: [0bAAAAAA10,A,0x8b,0x41]
2208# CHECK-BE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14abs
2209# CHECK-LE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14abs
2210 bsoa 2, target
2211# CHECK-BE: buna 0, target # encoding: [0x41,0x83,A,0bAAAAAA10]
2212# CHECK-LE: buna 0, target # encoding: [0bAAAAAA10,A,0x83,0x41]
2213# CHECK-BE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14abs
2214# CHECK-LE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14abs
2215 bsoa target
2216# CHECK-BE: bunlr 2 # encoding: [0x4d,0x8b,0x00,0x20]
2217# CHECK-LE: bunlr 2 # encoding: [0x20,0x00,0x8b,0x4d]
2218 bsolr 2
2219# CHECK-BE: bunlr 0 # encoding: [0x4d,0x83,0x00,0x20]
2220# CHECK-LE: bunlr 0 # encoding: [0x20,0x00,0x83,0x4d]
2221 bsolr
2222# CHECK-BE: bunctr 2 # encoding: [0x4d,0x8b,0x04,0x20]
2223# CHECK-LE: bunctr 2 # encoding: [0x20,0x04,0x8b,0x4d]
2224 bsoctr 2
2225# CHECK-BE: bunctr 0 # encoding: [0x4d,0x83,0x04,0x20]
2226# CHECK-LE: bunctr 0 # encoding: [0x20,0x04,0x83,0x4d]
2227 bsoctr
2228# CHECK-BE: bunl 2, target # encoding: [0x41,0x8b,A,0bAAAAAA01]
2229# CHECK-LE: bunl 2, target # encoding: [0bAAAAAA01,A,0x8b,0x41]
2230# CHECK-BE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14
2231# CHECK-LE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14
2232 bsol 2, target
2233# CHECK-BE: bunl 0, target # encoding: [0x41,0x83,A,0bAAAAAA01]
2234# CHECK-LE: bunl 0, target # encoding: [0bAAAAAA01,A,0x83,0x41]
2235# CHECK-BE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14
2236# CHECK-LE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14
2237 bsol target
2238# CHECK-BE: bunla 2, target # encoding: [0x41,0x8b,A,0bAAAAAA11]
2239# CHECK-LE: bunla 2, target # encoding: [0bAAAAAA11,A,0x8b,0x41]
2240# CHECK-BE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14abs
2241# CHECK-LE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14abs
2242 bsola 2, target
2243# CHECK-BE: bunla 0, target # encoding: [0x41,0x83,A,0bAAAAAA11]
2244# CHECK-LE: bunla 0, target # encoding: [0bAAAAAA11,A,0x83,0x41]
2245# CHECK-BE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14abs
2246# CHECK-LE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14abs
2247 bsola target
2248# CHECK-BE: bunlrl 2 # encoding: [0x4d,0x8b,0x00,0x21]
2249# CHECK-LE: bunlrl 2 # encoding: [0x21,0x00,0x8b,0x4d]
2250 bsolrl 2
2251# CHECK-BE: bunlrl 0 # encoding: [0x4d,0x83,0x00,0x21]
2252# CHECK-LE: bunlrl 0 # encoding: [0x21,0x00,0x83,0x4d]
2253 bsolrl
2254# CHECK-BE: bunctrl 2 # encoding: [0x4d,0x8b,0x04,0x21]
2255# CHECK-LE: bunctrl 2 # encoding: [0x21,0x04,0x8b,0x4d]
2256 bsoctrl 2
2257# CHECK-BE: bunctrl 0 # encoding: [0x4d,0x83,0x04,0x21]
2258# CHECK-LE: bunctrl 0 # encoding: [0x21,0x04,0x83,0x4d]
2259 bsoctrl
Ulrich Weigandd8394902013-05-03 19:50:27 +00002260
Ulrich Weigandcae3a172014-03-24 18:16:09 +00002261# CHECK-BE: bun+ 2, target # encoding: [0x41,0xeb,A,0bAAAAAA00]
2262# CHECK-LE: bun+ 2, target # encoding: [0bAAAAAA00,A,0xeb,0x41]
2263# CHECK-BE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14
2264# CHECK-LE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14
2265 bso+ 2, target
2266# CHECK-BE: bun+ 0, target # encoding: [0x41,0xe3,A,0bAAAAAA00]
2267# CHECK-LE: bun+ 0, target # encoding: [0bAAAAAA00,A,0xe3,0x41]
2268# CHECK-BE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14
2269# CHECK-LE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14
2270 bso+ target
2271# CHECK-BE: buna+ 2, target # encoding: [0x41,0xeb,A,0bAAAAAA10]
2272# CHECK-LE: buna+ 2, target # encoding: [0bAAAAAA10,A,0xeb,0x41]
2273# CHECK-BE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14abs
2274# CHECK-LE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14abs
2275 bsoa+ 2, target
2276# CHECK-BE: buna+ 0, target # encoding: [0x41,0xe3,A,0bAAAAAA10]
2277# CHECK-LE: buna+ 0, target # encoding: [0bAAAAAA10,A,0xe3,0x41]
2278# CHECK-BE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14abs
2279# CHECK-LE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14abs
2280 bsoa+ target
2281# CHECK-BE: bunlr+ 2 # encoding: [0x4d,0xeb,0x00,0x20]
2282# CHECK-LE: bunlr+ 2 # encoding: [0x20,0x00,0xeb,0x4d]
2283 bsolr+ 2
2284# CHECK-BE: bunlr+ 0 # encoding: [0x4d,0xe3,0x00,0x20]
2285# CHECK-LE: bunlr+ 0 # encoding: [0x20,0x00,0xe3,0x4d]
2286 bsolr+
2287# CHECK-BE: bunctr+ 2 # encoding: [0x4d,0xeb,0x04,0x20]
2288# CHECK-LE: bunctr+ 2 # encoding: [0x20,0x04,0xeb,0x4d]
2289 bsoctr+ 2
2290# CHECK-BE: bunctr+ 0 # encoding: [0x4d,0xe3,0x04,0x20]
2291# CHECK-LE: bunctr+ 0 # encoding: [0x20,0x04,0xe3,0x4d]
2292 bsoctr+
2293# CHECK-BE: bunl+ 2, target # encoding: [0x41,0xeb,A,0bAAAAAA01]
2294# CHECK-LE: bunl+ 2, target # encoding: [0bAAAAAA01,A,0xeb,0x41]
2295# CHECK-BE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14
2296# CHECK-LE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14
2297 bsol+ 2, target
2298# CHECK-BE: bunl+ 0, target # encoding: [0x41,0xe3,A,0bAAAAAA01]
2299# CHECK-LE: bunl+ 0, target # encoding: [0bAAAAAA01,A,0xe3,0x41]
2300# CHECK-BE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14
2301# CHECK-LE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14
2302 bsol+ target
2303# CHECK-BE: bunla+ 2, target # encoding: [0x41,0xeb,A,0bAAAAAA11]
2304# CHECK-LE: bunla+ 2, target # encoding: [0bAAAAAA11,A,0xeb,0x41]
2305# CHECK-BE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14abs
2306# CHECK-LE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14abs
2307 bsola+ 2, target
2308# CHECK-BE: bunla+ 0, target # encoding: [0x41,0xe3,A,0bAAAAAA11]
2309# CHECK-LE: bunla+ 0, target # encoding: [0bAAAAAA11,A,0xe3,0x41]
2310# CHECK-BE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14abs
2311# CHECK-LE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14abs
2312 bsola+ target
2313# CHECK-BE: bunlrl+ 2 # encoding: [0x4d,0xeb,0x00,0x21]
2314# CHECK-LE: bunlrl+ 2 # encoding: [0x21,0x00,0xeb,0x4d]
2315 bsolrl+ 2
2316# CHECK-BE: bunlrl+ 0 # encoding: [0x4d,0xe3,0x00,0x21]
2317# CHECK-LE: bunlrl+ 0 # encoding: [0x21,0x00,0xe3,0x4d]
2318 bsolrl+
2319# CHECK-BE: bunctrl+ 2 # encoding: [0x4d,0xeb,0x04,0x21]
2320# CHECK-LE: bunctrl+ 2 # encoding: [0x21,0x04,0xeb,0x4d]
2321 bsoctrl+ 2
2322# CHECK-BE: bunctrl+ 0 # encoding: [0x4d,0xe3,0x04,0x21]
2323# CHECK-LE: bunctrl+ 0 # encoding: [0x21,0x04,0xe3,0x4d]
2324 bsoctrl+
Ulrich Weigand86247b62013-06-24 16:52:04 +00002325
Ulrich Weigandcae3a172014-03-24 18:16:09 +00002326# CHECK-BE: bun- 2, target # encoding: [0x41,0xcb,A,0bAAAAAA00]
2327# CHECK-LE: bun- 2, target # encoding: [0bAAAAAA00,A,0xcb,0x41]
2328# CHECK-BE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14
2329# CHECK-LE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14
2330 bso- 2, target
2331# CHECK-BE: bun- 0, target # encoding: [0x41,0xc3,A,0bAAAAAA00]
2332# CHECK-LE: bun- 0, target # encoding: [0bAAAAAA00,A,0xc3,0x41]
2333# CHECK-BE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14
2334# CHECK-LE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14
2335 bso- target
2336# CHECK-BE: buna- 2, target # encoding: [0x41,0xcb,A,0bAAAAAA10]
2337# CHECK-LE: buna- 2, target # encoding: [0bAAAAAA10,A,0xcb,0x41]
2338# CHECK-BE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14abs
2339# CHECK-LE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14abs
2340 bsoa- 2, target
2341# CHECK-BE: buna- 0, target # encoding: [0x41,0xc3,A,0bAAAAAA10]
2342# CHECK-LE: buna- 0, target # encoding: [0bAAAAAA10,A,0xc3,0x41]
2343# CHECK-BE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14abs
2344# CHECK-LE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14abs
2345 bsoa- target
2346# CHECK-BE: bunlr- 2 # encoding: [0x4d,0xcb,0x00,0x20]
2347# CHECK-LE: bunlr- 2 # encoding: [0x20,0x00,0xcb,0x4d]
2348 bsolr- 2
2349# CHECK-BE: bunlr- 0 # encoding: [0x4d,0xc3,0x00,0x20]
2350# CHECK-LE: bunlr- 0 # encoding: [0x20,0x00,0xc3,0x4d]
2351 bsolr-
2352# CHECK-BE: bunctr- 2 # encoding: [0x4d,0xcb,0x04,0x20]
2353# CHECK-LE: bunctr- 2 # encoding: [0x20,0x04,0xcb,0x4d]
2354 bsoctr- 2
2355# CHECK-BE: bunctr- 0 # encoding: [0x4d,0xc3,0x04,0x20]
2356# CHECK-LE: bunctr- 0 # encoding: [0x20,0x04,0xc3,0x4d]
2357 bsoctr-
2358# CHECK-BE: bunl- 2, target # encoding: [0x41,0xcb,A,0bAAAAAA01]
2359# CHECK-LE: bunl- 2, target # encoding: [0bAAAAAA01,A,0xcb,0x41]
2360# CHECK-BE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14
2361# CHECK-LE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14
2362 bsol- 2, target
2363# CHECK-BE: bunl- 0, target # encoding: [0x41,0xc3,A,0bAAAAAA01]
2364# CHECK-LE: bunl- 0, target # encoding: [0bAAAAAA01,A,0xc3,0x41]
2365# CHECK-BE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14
2366# CHECK-LE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14
2367 bsol- target
2368# CHECK-BE: bunla- 2, target # encoding: [0x41,0xcb,A,0bAAAAAA11]
2369# CHECK-LE: bunla- 2, target # encoding: [0bAAAAAA11,A,0xcb,0x41]
2370# CHECK-BE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14abs
2371# CHECK-LE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14abs
2372 bsola- 2, target
2373# CHECK-BE: bunla- 0, target # encoding: [0x41,0xc3,A,0bAAAAAA11]
2374# CHECK-LE: bunla- 0, target # encoding: [0bAAAAAA11,A,0xc3,0x41]
2375# CHECK-BE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14abs
2376# CHECK-LE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14abs
2377 bsola- target
2378# CHECK-BE: bunlrl- 2 # encoding: [0x4d,0xcb,0x00,0x21]
2379# CHECK-LE: bunlrl- 2 # encoding: [0x21,0x00,0xcb,0x4d]
2380 bsolrl- 2
2381# CHECK-BE: bunlrl- 0 # encoding: [0x4d,0xc3,0x00,0x21]
2382# CHECK-LE: bunlrl- 0 # encoding: [0x21,0x00,0xc3,0x4d]
2383 bsolrl-
2384# CHECK-BE: bunctrl- 2 # encoding: [0x4d,0xcb,0x04,0x21]
2385# CHECK-LE: bunctrl- 2 # encoding: [0x21,0x04,0xcb,0x4d]
2386 bsoctrl- 2
2387# CHECK-BE: bunctrl- 0 # encoding: [0x4d,0xc3,0x04,0x21]
2388# CHECK-LE: bunctrl- 0 # encoding: [0x21,0x04,0xc3,0x4d]
2389 bsoctrl-
Ulrich Weigand86247b62013-06-24 16:52:04 +00002390
Ulrich Weigandcae3a172014-03-24 18:16:09 +00002391# CHECK-BE: bnu 2, target # encoding: [0x40,0x8b,A,0bAAAAAA00]
2392# CHECK-LE: bnu 2, target # encoding: [0bAAAAAA00,A,0x8b,0x40]
2393# CHECK-BE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14
2394# CHECK-LE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14
2395 bns 2, target
2396# CHECK-BE: bnu 0, target # encoding: [0x40,0x83,A,0bAAAAAA00]
2397# CHECK-LE: bnu 0, target # encoding: [0bAAAAAA00,A,0x83,0x40]
2398# CHECK-BE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14
2399# CHECK-LE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14
2400 bns target
2401# CHECK-BE: bnua 2, target # encoding: [0x40,0x8b,A,0bAAAAAA10]
2402# CHECK-LE: bnua 2, target # encoding: [0bAAAAAA10,A,0x8b,0x40]
2403# CHECK-BE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14abs
2404# CHECK-LE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14abs
2405 bnsa 2, target
2406# CHECK-BE: bnua 0, target # encoding: [0x40,0x83,A,0bAAAAAA10]
2407# CHECK-LE: bnua 0, target # encoding: [0bAAAAAA10,A,0x83,0x40]
2408# CHECK-BE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14abs
2409# CHECK-LE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14abs
2410 bnsa target
2411# CHECK-BE: bnulr 2 # encoding: [0x4c,0x8b,0x00,0x20]
2412# CHECK-LE: bnulr 2 # encoding: [0x20,0x00,0x8b,0x4c]
2413 bnslr 2
2414# CHECK-BE: bnulr 0 # encoding: [0x4c,0x83,0x00,0x20]
2415# CHECK-LE: bnulr 0 # encoding: [0x20,0x00,0x83,0x4c]
2416 bnslr
2417# CHECK-BE: bnuctr 2 # encoding: [0x4c,0x8b,0x04,0x20]
2418# CHECK-LE: bnuctr 2 # encoding: [0x20,0x04,0x8b,0x4c]
2419 bnsctr 2
2420# CHECK-BE: bnuctr 0 # encoding: [0x4c,0x83,0x04,0x20]
2421# CHECK-LE: bnuctr 0 # encoding: [0x20,0x04,0x83,0x4c]
2422 bnsctr
2423# CHECK-BE: bnul 2, target # encoding: [0x40,0x8b,A,0bAAAAAA01]
2424# CHECK-LE: bnul 2, target # encoding: [0bAAAAAA01,A,0x8b,0x40]
2425# CHECK-BE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14
2426# CHECK-LE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14
2427 bnsl 2, target
2428# CHECK-BE: bnul 0, target # encoding: [0x40,0x83,A,0bAAAAAA01]
2429# CHECK-LE: bnul 0, target # encoding: [0bAAAAAA01,A,0x83,0x40]
2430# CHECK-BE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14
2431# CHECK-LE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14
2432 bnsl target
2433# CHECK-BE: bnula 2, target # encoding: [0x40,0x8b,A,0bAAAAAA11]
2434# CHECK-LE: bnula 2, target # encoding: [0bAAAAAA11,A,0x8b,0x40]
2435# CHECK-BE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14abs
2436# CHECK-LE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14abs
2437 bnsla 2, target
2438# CHECK-BE: bnula 0, target # encoding: [0x40,0x83,A,0bAAAAAA11]
2439# CHECK-LE: bnula 0, target # encoding: [0bAAAAAA11,A,0x83,0x40]
2440# CHECK-BE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14abs
2441# CHECK-LE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14abs
2442 bnsla target
2443# CHECK-BE: bnulrl 2 # encoding: [0x4c,0x8b,0x00,0x21]
2444# CHECK-LE: bnulrl 2 # encoding: [0x21,0x00,0x8b,0x4c]
2445 bnslrl 2
2446# CHECK-BE: bnulrl 0 # encoding: [0x4c,0x83,0x00,0x21]
2447# CHECK-LE: bnulrl 0 # encoding: [0x21,0x00,0x83,0x4c]
2448 bnslrl
2449# CHECK-BE: bnuctrl 2 # encoding: [0x4c,0x8b,0x04,0x21]
2450# CHECK-LE: bnuctrl 2 # encoding: [0x21,0x04,0x8b,0x4c]
2451 bnsctrl 2
2452# CHECK-BE: bnuctrl 0 # encoding: [0x4c,0x83,0x04,0x21]
2453# CHECK-LE: bnuctrl 0 # encoding: [0x21,0x04,0x83,0x4c]
2454 bnsctrl
Ulrich Weigandd8394902013-05-03 19:50:27 +00002455
Ulrich Weigandcae3a172014-03-24 18:16:09 +00002456# CHECK-BE: bnu+ 2, target # encoding: [0x40,0xeb,A,0bAAAAAA00]
2457# CHECK-LE: bnu+ 2, target # encoding: [0bAAAAAA00,A,0xeb,0x40]
2458# CHECK-BE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14
2459# CHECK-LE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14
2460 bns+ 2, target
2461# CHECK-BE: bnu+ 0, target # encoding: [0x40,0xe3,A,0bAAAAAA00]
2462# CHECK-LE: bnu+ 0, target # encoding: [0bAAAAAA00,A,0xe3,0x40]
2463# CHECK-BE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14
2464# CHECK-LE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14
2465 bns+ target
2466# CHECK-BE: bnua+ 2, target # encoding: [0x40,0xeb,A,0bAAAAAA10]
2467# CHECK-LE: bnua+ 2, target # encoding: [0bAAAAAA10,A,0xeb,0x40]
2468# CHECK-BE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14abs
2469# CHECK-LE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14abs
2470 bnsa+ 2, target
2471# CHECK-BE: bnua+ 0, target # encoding: [0x40,0xe3,A,0bAAAAAA10]
2472# CHECK-LE: bnua+ 0, target # encoding: [0bAAAAAA10,A,0xe3,0x40]
2473# CHECK-BE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14abs
2474# CHECK-LE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14abs
2475 bnsa+ target
2476# CHECK-BE: bnulr+ 2 # encoding: [0x4c,0xeb,0x00,0x20]
2477# CHECK-LE: bnulr+ 2 # encoding: [0x20,0x00,0xeb,0x4c]
2478 bnslr+ 2
2479# CHECK-BE: bnulr+ 0 # encoding: [0x4c,0xe3,0x00,0x20]
2480# CHECK-LE: bnulr+ 0 # encoding: [0x20,0x00,0xe3,0x4c]
2481 bnslr+
2482# CHECK-BE: bnuctr+ 2 # encoding: [0x4c,0xeb,0x04,0x20]
2483# CHECK-LE: bnuctr+ 2 # encoding: [0x20,0x04,0xeb,0x4c]
2484 bnsctr+ 2
2485# CHECK-BE: bnuctr+ 0 # encoding: [0x4c,0xe3,0x04,0x20]
2486# CHECK-LE: bnuctr+ 0 # encoding: [0x20,0x04,0xe3,0x4c]
2487 bnsctr+
2488# CHECK-BE: bnul+ 2, target # encoding: [0x40,0xeb,A,0bAAAAAA01]
2489# CHECK-LE: bnul+ 2, target # encoding: [0bAAAAAA01,A,0xeb,0x40]
2490# CHECK-BE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14
2491# CHECK-LE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14
2492 bnsl+ 2, target
2493# CHECK-BE: bnul+ 0, target # encoding: [0x40,0xe3,A,0bAAAAAA01]
2494# CHECK-LE: bnul+ 0, target # encoding: [0bAAAAAA01,A,0xe3,0x40]
2495# CHECK-BE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14
2496# CHECK-LE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14
2497 bnsl+ target
2498# CHECK-BE: bnula+ 2, target # encoding: [0x40,0xeb,A,0bAAAAAA11]
2499# CHECK-LE: bnula+ 2, target # encoding: [0bAAAAAA11,A,0xeb,0x40]
2500# CHECK-BE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14abs
2501# CHECK-LE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14abs
2502 bnsla+ 2, target
2503# CHECK-BE: bnula+ 0, target # encoding: [0x40,0xe3,A,0bAAAAAA11]
2504# CHECK-LE: bnula+ 0, target # encoding: [0bAAAAAA11,A,0xe3,0x40]
2505# CHECK-BE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14abs
2506# CHECK-LE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14abs
2507 bnsla+ target
2508# CHECK-BE: bnulrl+ 2 # encoding: [0x4c,0xeb,0x00,0x21]
2509# CHECK-LE: bnulrl+ 2 # encoding: [0x21,0x00,0xeb,0x4c]
2510 bnslrl+ 2
2511# CHECK-BE: bnulrl+ 0 # encoding: [0x4c,0xe3,0x00,0x21]
2512# CHECK-LE: bnulrl+ 0 # encoding: [0x21,0x00,0xe3,0x4c]
2513 bnslrl+
2514# CHECK-BE: bnuctrl+ 2 # encoding: [0x4c,0xeb,0x04,0x21]
2515# CHECK-LE: bnuctrl+ 2 # encoding: [0x21,0x04,0xeb,0x4c]
2516 bnsctrl+ 2
2517# CHECK-BE: bnuctrl+ 0 # encoding: [0x4c,0xe3,0x04,0x21]
2518# CHECK-LE: bnuctrl+ 0 # encoding: [0x21,0x04,0xe3,0x4c]
2519 bnsctrl+
Ulrich Weigand86247b62013-06-24 16:52:04 +00002520
Ulrich Weigandcae3a172014-03-24 18:16:09 +00002521# CHECK-BE: bnu- 2, target # encoding: [0x40,0xcb,A,0bAAAAAA00]
2522# CHECK-LE: bnu- 2, target # encoding: [0bAAAAAA00,A,0xcb,0x40]
2523# CHECK-BE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14
2524# CHECK-LE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14
2525 bns- 2, target
2526# CHECK-BE: bnu- 0, target # encoding: [0x40,0xc3,A,0bAAAAAA00]
2527# CHECK-LE: bnu- 0, target # encoding: [0bAAAAAA00,A,0xc3,0x40]
2528# CHECK-BE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14
2529# CHECK-LE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14
2530 bns- target
2531# CHECK-BE: bnua- 2, target # encoding: [0x40,0xcb,A,0bAAAAAA10]
2532# CHECK-LE: bnua- 2, target # encoding: [0bAAAAAA10,A,0xcb,0x40]
2533# CHECK-BE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14abs
2534# CHECK-LE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14abs
2535 bnsa- 2, target
2536# CHECK-BE: bnua- 0, target # encoding: [0x40,0xc3,A,0bAAAAAA10]
2537# CHECK-LE: bnua- 0, target # encoding: [0bAAAAAA10,A,0xc3,0x40]
2538# CHECK-BE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14abs
2539# CHECK-LE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14abs
2540 bnsa- target
2541# CHECK-BE: bnulr- 2 # encoding: [0x4c,0xcb,0x00,0x20]
2542# CHECK-LE: bnulr- 2 # encoding: [0x20,0x00,0xcb,0x4c]
2543 bnslr- 2
2544# CHECK-BE: bnulr- 0 # encoding: [0x4c,0xc3,0x00,0x20]
2545# CHECK-LE: bnulr- 0 # encoding: [0x20,0x00,0xc3,0x4c]
2546 bnslr-
2547# CHECK-BE: bnuctr- 2 # encoding: [0x4c,0xcb,0x04,0x20]
2548# CHECK-LE: bnuctr- 2 # encoding: [0x20,0x04,0xcb,0x4c]
2549 bnsctr- 2
2550# CHECK-BE: bnuctr- 0 # encoding: [0x4c,0xc3,0x04,0x20]
2551# CHECK-LE: bnuctr- 0 # encoding: [0x20,0x04,0xc3,0x4c]
2552 bnsctr-
2553# CHECK-BE: bnul- 2, target # encoding: [0x40,0xcb,A,0bAAAAAA01]
2554# CHECK-LE: bnul- 2, target # encoding: [0bAAAAAA01,A,0xcb,0x40]
2555# CHECK-BE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14
2556# CHECK-LE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14
2557 bnsl- 2, target
2558# CHECK-BE: bnul- 0, target # encoding: [0x40,0xc3,A,0bAAAAAA01]
2559# CHECK-LE: bnul- 0, target # encoding: [0bAAAAAA01,A,0xc3,0x40]
2560# CHECK-BE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14
2561# CHECK-LE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14
2562 bnsl- target
2563# CHECK-BE: bnula- 2, target # encoding: [0x40,0xcb,A,0bAAAAAA11]
2564# CHECK-LE: bnula- 2, target # encoding: [0bAAAAAA11,A,0xcb,0x40]
2565# CHECK-BE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14abs
2566# CHECK-LE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14abs
2567 bnsla- 2, target
2568# CHECK-BE: bnula- 0, target # encoding: [0x40,0xc3,A,0bAAAAAA11]
2569# CHECK-LE: bnula- 0, target # encoding: [0bAAAAAA11,A,0xc3,0x40]
2570# CHECK-BE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14abs
2571# CHECK-LE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14abs
2572 bnsla- target
2573# CHECK-BE: bnulrl- 2 # encoding: [0x4c,0xcb,0x00,0x21]
2574# CHECK-LE: bnulrl- 2 # encoding: [0x21,0x00,0xcb,0x4c]
2575 bnslrl- 2
2576# CHECK-BE: bnulrl- 0 # encoding: [0x4c,0xc3,0x00,0x21]
2577# CHECK-LE: bnulrl- 0 # encoding: [0x21,0x00,0xc3,0x4c]
2578 bnslrl-
2579# CHECK-BE: bnuctrl- 2 # encoding: [0x4c,0xcb,0x04,0x21]
2580# CHECK-LE: bnuctrl- 2 # encoding: [0x21,0x04,0xcb,0x4c]
2581 bnsctrl- 2
2582# CHECK-BE: bnuctrl- 0 # encoding: [0x4c,0xc3,0x04,0x21]
2583# CHECK-LE: bnuctrl- 0 # encoding: [0x21,0x04,0xc3,0x4c]
2584 bnsctrl-
Ulrich Weigand86247b62013-06-24 16:52:04 +00002585
Ulrich Weigandcae3a172014-03-24 18:16:09 +00002586# CHECK-BE: bun 2, target # encoding: [0x41,0x8b,A,0bAAAAAA00]
2587# CHECK-LE: bun 2, target # encoding: [0bAAAAAA00,A,0x8b,0x41]
2588# CHECK-BE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14
2589# CHECK-LE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14
2590 bun 2, target
2591# CHECK-BE: bun 0, target # encoding: [0x41,0x83,A,0bAAAAAA00]
2592# CHECK-LE: bun 0, target # encoding: [0bAAAAAA00,A,0x83,0x41]
2593# CHECK-BE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14
2594# CHECK-LE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14
2595 bun target
2596# CHECK-BE: buna 2, target # encoding: [0x41,0x8b,A,0bAAAAAA10]
2597# CHECK-LE: buna 2, target # encoding: [0bAAAAAA10,A,0x8b,0x41]
2598# CHECK-BE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14abs
2599# CHECK-LE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14abs
2600 buna 2, target
2601# CHECK-BE: buna 0, target # encoding: [0x41,0x83,A,0bAAAAAA10]
2602# CHECK-LE: buna 0, target # encoding: [0bAAAAAA10,A,0x83,0x41]
2603# CHECK-BE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14abs
2604# CHECK-LE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14abs
2605 buna target
2606# CHECK-BE: bunlr 2 # encoding: [0x4d,0x8b,0x00,0x20]
2607# CHECK-LE: bunlr 2 # encoding: [0x20,0x00,0x8b,0x4d]
2608 bunlr 2
2609# CHECK-BE: bunlr 0 # encoding: [0x4d,0x83,0x00,0x20]
2610# CHECK-LE: bunlr 0 # encoding: [0x20,0x00,0x83,0x4d]
2611 bunlr
2612# CHECK-BE: bunctr 2 # encoding: [0x4d,0x8b,0x04,0x20]
2613# CHECK-LE: bunctr 2 # encoding: [0x20,0x04,0x8b,0x4d]
2614 bunctr 2
2615# CHECK-BE: bunctr 0 # encoding: [0x4d,0x83,0x04,0x20]
2616# CHECK-LE: bunctr 0 # encoding: [0x20,0x04,0x83,0x4d]
2617 bunctr
2618# CHECK-BE: bunl 2, target # encoding: [0x41,0x8b,A,0bAAAAAA01]
2619# CHECK-LE: bunl 2, target # encoding: [0bAAAAAA01,A,0x8b,0x41]
2620# CHECK-BE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14
2621# CHECK-LE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14
2622 bunl 2, target
2623# CHECK-BE: bunl 0, target # encoding: [0x41,0x83,A,0bAAAAAA01]
2624# CHECK-LE: bunl 0, target # encoding: [0bAAAAAA01,A,0x83,0x41]
2625# CHECK-BE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14
2626# CHECK-LE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14
2627 bunl target
2628# CHECK-BE: bunla 2, target # encoding: [0x41,0x8b,A,0bAAAAAA11]
2629# CHECK-LE: bunla 2, target # encoding: [0bAAAAAA11,A,0x8b,0x41]
2630# CHECK-BE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14abs
2631# CHECK-LE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14abs
2632 bunla 2, target
2633# CHECK-BE: bunla 0, target # encoding: [0x41,0x83,A,0bAAAAAA11]
2634# CHECK-LE: bunla 0, target # encoding: [0bAAAAAA11,A,0x83,0x41]
2635# CHECK-BE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14abs
2636# CHECK-LE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14abs
2637 bunla target
2638# CHECK-BE: bunlrl 2 # encoding: [0x4d,0x8b,0x00,0x21]
2639# CHECK-LE: bunlrl 2 # encoding: [0x21,0x00,0x8b,0x4d]
2640 bunlrl 2
2641# CHECK-BE: bunlrl 0 # encoding: [0x4d,0x83,0x00,0x21]
2642# CHECK-LE: bunlrl 0 # encoding: [0x21,0x00,0x83,0x4d]
2643 bunlrl
2644# CHECK-BE: bunctrl 2 # encoding: [0x4d,0x8b,0x04,0x21]
2645# CHECK-LE: bunctrl 2 # encoding: [0x21,0x04,0x8b,0x4d]
2646 bunctrl 2
2647# CHECK-BE: bunctrl 0 # encoding: [0x4d,0x83,0x04,0x21]
2648# CHECK-LE: bunctrl 0 # encoding: [0x21,0x04,0x83,0x4d]
2649 bunctrl
Ulrich Weigandd8394902013-05-03 19:50:27 +00002650
Ulrich Weigandcae3a172014-03-24 18:16:09 +00002651# CHECK-BE: bun+ 2, target # encoding: [0x41,0xeb,A,0bAAAAAA00]
2652# CHECK-LE: bun+ 2, target # encoding: [0bAAAAAA00,A,0xeb,0x41]
2653# CHECK-BE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14
2654# CHECK-LE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14
2655 bun+ 2, target
2656# CHECK-BE: bun+ 0, target # encoding: [0x41,0xe3,A,0bAAAAAA00]
2657# CHECK-LE: bun+ 0, target # encoding: [0bAAAAAA00,A,0xe3,0x41]
2658# CHECK-BE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14
2659# CHECK-LE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14
2660 bun+ target
2661# CHECK-BE: buna+ 2, target # encoding: [0x41,0xeb,A,0bAAAAAA10]
2662# CHECK-LE: buna+ 2, target # encoding: [0bAAAAAA10,A,0xeb,0x41]
2663# CHECK-BE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14abs
2664# CHECK-LE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14abs
2665 buna+ 2, target
2666# CHECK-BE: buna+ 0, target # encoding: [0x41,0xe3,A,0bAAAAAA10]
2667# CHECK-LE: buna+ 0, target # encoding: [0bAAAAAA10,A,0xe3,0x41]
2668# CHECK-BE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14abs
2669# CHECK-LE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14abs
2670 buna+ target
2671# CHECK-BE: bunlr+ 2 # encoding: [0x4d,0xeb,0x00,0x20]
2672# CHECK-LE: bunlr+ 2 # encoding: [0x20,0x00,0xeb,0x4d]
2673 bunlr+ 2
2674# CHECK-BE: bunlr+ 0 # encoding: [0x4d,0xe3,0x00,0x20]
2675# CHECK-LE: bunlr+ 0 # encoding: [0x20,0x00,0xe3,0x4d]
2676 bunlr+
2677# CHECK-BE: bunctr+ 2 # encoding: [0x4d,0xeb,0x04,0x20]
2678# CHECK-LE: bunctr+ 2 # encoding: [0x20,0x04,0xeb,0x4d]
2679 bunctr+ 2
2680# CHECK-BE: bunctr+ 0 # encoding: [0x4d,0xe3,0x04,0x20]
2681# CHECK-LE: bunctr+ 0 # encoding: [0x20,0x04,0xe3,0x4d]
2682 bunctr+
2683# CHECK-BE: bunl+ 2, target # encoding: [0x41,0xeb,A,0bAAAAAA01]
2684# CHECK-LE: bunl+ 2, target # encoding: [0bAAAAAA01,A,0xeb,0x41]
2685# CHECK-BE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14
2686# CHECK-LE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14
2687 bunl+ 2, target
2688# CHECK-BE: bunl+ 0, target # encoding: [0x41,0xe3,A,0bAAAAAA01]
2689# CHECK-LE: bunl+ 0, target # encoding: [0bAAAAAA01,A,0xe3,0x41]
2690# CHECK-BE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14
2691# CHECK-LE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14
2692 bunl+ target
2693# CHECK-BE: bunla+ 2, target # encoding: [0x41,0xeb,A,0bAAAAAA11]
2694# CHECK-LE: bunla+ 2, target # encoding: [0bAAAAAA11,A,0xeb,0x41]
2695# CHECK-BE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14abs
2696# CHECK-LE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14abs
2697 bunla+ 2, target
2698# CHECK-BE: bunla+ 0, target # encoding: [0x41,0xe3,A,0bAAAAAA11]
2699# CHECK-LE: bunla+ 0, target # encoding: [0bAAAAAA11,A,0xe3,0x41]
2700# CHECK-BE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14abs
2701# CHECK-LE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14abs
2702 bunla+ target
2703# CHECK-BE: bunlrl+ 2 # encoding: [0x4d,0xeb,0x00,0x21]
2704# CHECK-LE: bunlrl+ 2 # encoding: [0x21,0x00,0xeb,0x4d]
2705 bunlrl+ 2
2706# CHECK-BE: bunlrl+ 0 # encoding: [0x4d,0xe3,0x00,0x21]
2707# CHECK-LE: bunlrl+ 0 # encoding: [0x21,0x00,0xe3,0x4d]
2708 bunlrl+
2709# CHECK-BE: bunctrl+ 2 # encoding: [0x4d,0xeb,0x04,0x21]
2710# CHECK-LE: bunctrl+ 2 # encoding: [0x21,0x04,0xeb,0x4d]
2711 bunctrl+ 2
2712# CHECK-BE: bunctrl+ 0 # encoding: [0x4d,0xe3,0x04,0x21]
2713# CHECK-LE: bunctrl+ 0 # encoding: [0x21,0x04,0xe3,0x4d]
2714 bunctrl+
Ulrich Weigand86247b62013-06-24 16:52:04 +00002715
Ulrich Weigandcae3a172014-03-24 18:16:09 +00002716# CHECK-BE: bun- 2, target # encoding: [0x41,0xcb,A,0bAAAAAA00]
2717# CHECK-LE: bun- 2, target # encoding: [0bAAAAAA00,A,0xcb,0x41]
2718# CHECK-BE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14
2719# CHECK-LE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14
2720 bun- 2, target
2721# CHECK-BE: bun- 0, target # encoding: [0x41,0xc3,A,0bAAAAAA00]
2722# CHECK-LE: bun- 0, target # encoding: [0bAAAAAA00,A,0xc3,0x41]
2723# CHECK-BE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14
2724# CHECK-LE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14
2725 bun- target
2726# CHECK-BE: buna- 2, target # encoding: [0x41,0xcb,A,0bAAAAAA10]
2727# CHECK-LE: buna- 2, target # encoding: [0bAAAAAA10,A,0xcb,0x41]
2728# CHECK-BE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14abs
2729# CHECK-LE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14abs
2730 buna- 2, target
2731# CHECK-BE: buna- 0, target # encoding: [0x41,0xc3,A,0bAAAAAA10]
2732# CHECK-LE: buna- 0, target # encoding: [0bAAAAAA10,A,0xc3,0x41]
2733# CHECK-BE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14abs
2734# CHECK-LE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14abs
2735 buna- target
2736# CHECK-BE: bunlr- 2 # encoding: [0x4d,0xcb,0x00,0x20]
2737# CHECK-LE: bunlr- 2 # encoding: [0x20,0x00,0xcb,0x4d]
2738 bunlr- 2
2739# CHECK-BE: bunlr- 0 # encoding: [0x4d,0xc3,0x00,0x20]
2740# CHECK-LE: bunlr- 0 # encoding: [0x20,0x00,0xc3,0x4d]
2741 bunlr-
2742# CHECK-BE: bunctr- 2 # encoding: [0x4d,0xcb,0x04,0x20]
2743# CHECK-LE: bunctr- 2 # encoding: [0x20,0x04,0xcb,0x4d]
2744 bunctr- 2
2745# CHECK-BE: bunctr- 0 # encoding: [0x4d,0xc3,0x04,0x20]
2746# CHECK-LE: bunctr- 0 # encoding: [0x20,0x04,0xc3,0x4d]
2747 bunctr-
2748# CHECK-BE: bunl- 2, target # encoding: [0x41,0xcb,A,0bAAAAAA01]
2749# CHECK-LE: bunl- 2, target # encoding: [0bAAAAAA01,A,0xcb,0x41]
2750# CHECK-BE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14
2751# CHECK-LE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14
2752 bunl- 2, target
2753# CHECK-BE: bunl- 0, target # encoding: [0x41,0xc3,A,0bAAAAAA01]
2754# CHECK-LE: bunl- 0, target # encoding: [0bAAAAAA01,A,0xc3,0x41]
2755# CHECK-BE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14
2756# CHECK-LE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14
2757 bunl- target
2758# CHECK-BE: bunla- 2, target # encoding: [0x41,0xcb,A,0bAAAAAA11]
2759# CHECK-LE: bunla- 2, target # encoding: [0bAAAAAA11,A,0xcb,0x41]
2760# CHECK-BE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14abs
2761# CHECK-LE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14abs
2762 bunla- 2, target
2763# CHECK-BE: bunla- 0, target # encoding: [0x41,0xc3,A,0bAAAAAA11]
2764# CHECK-LE: bunla- 0, target # encoding: [0bAAAAAA11,A,0xc3,0x41]
2765# CHECK-BE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14abs
2766# CHECK-LE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14abs
2767 bunla- target
2768# CHECK-BE: bunlrl- 2 # encoding: [0x4d,0xcb,0x00,0x21]
2769# CHECK-LE: bunlrl- 2 # encoding: [0x21,0x00,0xcb,0x4d]
2770 bunlrl- 2
2771# CHECK-BE: bunlrl- 0 # encoding: [0x4d,0xc3,0x00,0x21]
2772# CHECK-LE: bunlrl- 0 # encoding: [0x21,0x00,0xc3,0x4d]
2773 bunlrl-
2774# CHECK-BE: bunctrl- 2 # encoding: [0x4d,0xcb,0x04,0x21]
2775# CHECK-LE: bunctrl- 2 # encoding: [0x21,0x04,0xcb,0x4d]
2776 bunctrl- 2
2777# CHECK-BE: bunctrl- 0 # encoding: [0x4d,0xc3,0x04,0x21]
2778# CHECK-LE: bunctrl- 0 # encoding: [0x21,0x04,0xc3,0x4d]
2779 bunctrl-
Ulrich Weigand86247b62013-06-24 16:52:04 +00002780
Ulrich Weigandcae3a172014-03-24 18:16:09 +00002781# CHECK-BE: bnu 2, target # encoding: [0x40,0x8b,A,0bAAAAAA00]
2782# CHECK-LE: bnu 2, target # encoding: [0bAAAAAA00,A,0x8b,0x40]
2783# CHECK-BE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14
2784# CHECK-LE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14
2785 bnu 2, target
2786# CHECK-BE: bnu 0, target # encoding: [0x40,0x83,A,0bAAAAAA00]
2787# CHECK-LE: bnu 0, target # encoding: [0bAAAAAA00,A,0x83,0x40]
2788# CHECK-BE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14
2789# CHECK-LE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14
2790 bnu target
2791# CHECK-BE: bnua 2, target # encoding: [0x40,0x8b,A,0bAAAAAA10]
2792# CHECK-LE: bnua 2, target # encoding: [0bAAAAAA10,A,0x8b,0x40]
2793# CHECK-BE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14abs
2794# CHECK-LE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14abs
2795 bnua 2, target
2796# CHECK-BE: bnua 0, target # encoding: [0x40,0x83,A,0bAAAAAA10]
2797# CHECK-LE: bnua 0, target # encoding: [0bAAAAAA10,A,0x83,0x40]
2798# CHECK-BE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14abs
2799# CHECK-LE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14abs
2800 bnua target
2801# CHECK-BE: bnulr 2 # encoding: [0x4c,0x8b,0x00,0x20]
2802# CHECK-LE: bnulr 2 # encoding: [0x20,0x00,0x8b,0x4c]
2803 bnulr 2
2804# CHECK-BE: bnulr 0 # encoding: [0x4c,0x83,0x00,0x20]
2805# CHECK-LE: bnulr 0 # encoding: [0x20,0x00,0x83,0x4c]
2806 bnulr
2807# CHECK-BE: bnuctr 2 # encoding: [0x4c,0x8b,0x04,0x20]
2808# CHECK-LE: bnuctr 2 # encoding: [0x20,0x04,0x8b,0x4c]
2809 bnuctr 2
2810# CHECK-BE: bnuctr 0 # encoding: [0x4c,0x83,0x04,0x20]
2811# CHECK-LE: bnuctr 0 # encoding: [0x20,0x04,0x83,0x4c]
2812 bnuctr
2813# CHECK-BE: bnul 2, target # encoding: [0x40,0x8b,A,0bAAAAAA01]
2814# CHECK-LE: bnul 2, target # encoding: [0bAAAAAA01,A,0x8b,0x40]
2815# CHECK-BE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14
2816# CHECK-LE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14
2817 bnul 2, target
2818# CHECK-BE: bnul 0, target # encoding: [0x40,0x83,A,0bAAAAAA01]
2819# CHECK-LE: bnul 0, target # encoding: [0bAAAAAA01,A,0x83,0x40]
2820# CHECK-BE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14
2821# CHECK-LE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14
2822 bnul target
2823# CHECK-BE: bnula 2, target # encoding: [0x40,0x8b,A,0bAAAAAA11]
2824# CHECK-LE: bnula 2, target # encoding: [0bAAAAAA11,A,0x8b,0x40]
2825# CHECK-BE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14abs
2826# CHECK-LE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14abs
2827 bnula 2, target
2828# CHECK-BE: bnula 0, target # encoding: [0x40,0x83,A,0bAAAAAA11]
2829# CHECK-LE: bnula 0, target # encoding: [0bAAAAAA11,A,0x83,0x40]
2830# CHECK-BE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14abs
2831# CHECK-LE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14abs
2832 bnula target
2833# CHECK-BE: bnulrl 2 # encoding: [0x4c,0x8b,0x00,0x21]
2834# CHECK-LE: bnulrl 2 # encoding: [0x21,0x00,0x8b,0x4c]
2835 bnulrl 2
2836# CHECK-BE: bnulrl 0 # encoding: [0x4c,0x83,0x00,0x21]
2837# CHECK-LE: bnulrl 0 # encoding: [0x21,0x00,0x83,0x4c]
2838 bnulrl
2839# CHECK-BE: bnuctrl 2 # encoding: [0x4c,0x8b,0x04,0x21]
2840# CHECK-LE: bnuctrl 2 # encoding: [0x21,0x04,0x8b,0x4c]
2841 bnuctrl 2
2842# CHECK-BE: bnuctrl 0 # encoding: [0x4c,0x83,0x04,0x21]
2843# CHECK-LE: bnuctrl 0 # encoding: [0x21,0x04,0x83,0x4c]
2844 bnuctrl
Ulrich Weigandd8394902013-05-03 19:50:27 +00002845
Ulrich Weigandcae3a172014-03-24 18:16:09 +00002846# CHECK-BE: bnu+ 2, target # encoding: [0x40,0xeb,A,0bAAAAAA00]
2847# CHECK-LE: bnu+ 2, target # encoding: [0bAAAAAA00,A,0xeb,0x40]
2848# CHECK-BE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14
2849# CHECK-LE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14
2850 bnu+ 2, target
2851# CHECK-BE: bnu+ 0, target # encoding: [0x40,0xe3,A,0bAAAAAA00]
2852# CHECK-LE: bnu+ 0, target # encoding: [0bAAAAAA00,A,0xe3,0x40]
2853# CHECK-BE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14
2854# CHECK-LE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14
2855 bnu+ target
2856# CHECK-BE: bnua+ 2, target # encoding: [0x40,0xeb,A,0bAAAAAA10]
2857# CHECK-LE: bnua+ 2, target # encoding: [0bAAAAAA10,A,0xeb,0x40]
2858# CHECK-BE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14abs
2859# CHECK-LE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14abs
2860 bnua+ 2, target
2861# CHECK-BE: bnua+ 0, target # encoding: [0x40,0xe3,A,0bAAAAAA10]
2862# CHECK-LE: bnua+ 0, target # encoding: [0bAAAAAA10,A,0xe3,0x40]
2863# CHECK-BE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14abs
2864# CHECK-LE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14abs
2865 bnua+ target
2866# CHECK-BE: bnulr+ 2 # encoding: [0x4c,0xeb,0x00,0x20]
2867# CHECK-LE: bnulr+ 2 # encoding: [0x20,0x00,0xeb,0x4c]
2868 bnulr+ 2
2869# CHECK-BE: bnulr+ 0 # encoding: [0x4c,0xe3,0x00,0x20]
2870# CHECK-LE: bnulr+ 0 # encoding: [0x20,0x00,0xe3,0x4c]
2871 bnulr+
2872# CHECK-BE: bnuctr+ 2 # encoding: [0x4c,0xeb,0x04,0x20]
2873# CHECK-LE: bnuctr+ 2 # encoding: [0x20,0x04,0xeb,0x4c]
2874 bnuctr+ 2
2875# CHECK-BE: bnuctr+ 0 # encoding: [0x4c,0xe3,0x04,0x20]
2876# CHECK-LE: bnuctr+ 0 # encoding: [0x20,0x04,0xe3,0x4c]
2877 bnuctr+
2878# CHECK-BE: bnul+ 2, target # encoding: [0x40,0xeb,A,0bAAAAAA01]
2879# CHECK-LE: bnul+ 2, target # encoding: [0bAAAAAA01,A,0xeb,0x40]
2880# CHECK-BE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14
2881# CHECK-LE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14
2882 bnul+ 2, target
2883# CHECK-BE: bnul+ 0, target # encoding: [0x40,0xe3,A,0bAAAAAA01]
2884# CHECK-LE: bnul+ 0, target # encoding: [0bAAAAAA01,A,0xe3,0x40]
2885# CHECK-BE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14
2886# CHECK-LE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14
2887 bnul+ target
2888# CHECK-BE: bnula+ 2, target # encoding: [0x40,0xeb,A,0bAAAAAA11]
2889# CHECK-LE: bnula+ 2, target # encoding: [0bAAAAAA11,A,0xeb,0x40]
2890# CHECK-BE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14abs
2891# CHECK-LE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14abs
2892 bnula+ 2, target
2893# CHECK-BE: bnula+ 0, target # encoding: [0x40,0xe3,A,0bAAAAAA11]
2894# CHECK-LE: bnula+ 0, target # encoding: [0bAAAAAA11,A,0xe3,0x40]
2895# CHECK-BE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14abs
2896# CHECK-LE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14abs
2897 bnula+ target
2898# CHECK-BE: bnulrl+ 2 # encoding: [0x4c,0xeb,0x00,0x21]
2899# CHECK-LE: bnulrl+ 2 # encoding: [0x21,0x00,0xeb,0x4c]
2900 bnulrl+ 2
2901# CHECK-BE: bnulrl+ 0 # encoding: [0x4c,0xe3,0x00,0x21]
2902# CHECK-LE: bnulrl+ 0 # encoding: [0x21,0x00,0xe3,0x4c]
2903 bnulrl+
2904# CHECK-BE: bnuctrl+ 2 # encoding: [0x4c,0xeb,0x04,0x21]
2905# CHECK-LE: bnuctrl+ 2 # encoding: [0x21,0x04,0xeb,0x4c]
2906 bnuctrl+ 2
2907# CHECK-BE: bnuctrl+ 0 # encoding: [0x4c,0xe3,0x04,0x21]
2908# CHECK-LE: bnuctrl+ 0 # encoding: [0x21,0x04,0xe3,0x4c]
2909 bnuctrl+
Ulrich Weigand86247b62013-06-24 16:52:04 +00002910
Ulrich Weigandcae3a172014-03-24 18:16:09 +00002911# CHECK-BE: bnu- 2, target # encoding: [0x40,0xcb,A,0bAAAAAA00]
2912# CHECK-LE: bnu- 2, target # encoding: [0bAAAAAA00,A,0xcb,0x40]
2913# CHECK-BE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14
2914# CHECK-LE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14
2915 bnu- 2, target
2916# CHECK-BE: bnu- 0, target # encoding: [0x40,0xc3,A,0bAAAAAA00]
2917# CHECK-LE: bnu- 0, target # encoding: [0bAAAAAA00,A,0xc3,0x40]
2918# CHECK-BE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14
2919# CHECK-LE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14
2920 bnu- target
2921# CHECK-BE: bnua- 2, target # encoding: [0x40,0xcb,A,0bAAAAAA10]
2922# CHECK-LE: bnua- 2, target # encoding: [0bAAAAAA10,A,0xcb,0x40]
2923# CHECK-BE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14abs
2924# CHECK-LE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14abs
2925 bnua- 2, target
2926# CHECK-BE: bnua- 0, target # encoding: [0x40,0xc3,A,0bAAAAAA10]
2927# CHECK-LE: bnua- 0, target # encoding: [0bAAAAAA10,A,0xc3,0x40]
2928# CHECK-BE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14abs
2929# CHECK-LE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14abs
2930 bnua- target
2931# CHECK-BE: bnulr- 2 # encoding: [0x4c,0xcb,0x00,0x20]
2932# CHECK-LE: bnulr- 2 # encoding: [0x20,0x00,0xcb,0x4c]
2933 bnulr- 2
2934# CHECK-BE: bnulr- 0 # encoding: [0x4c,0xc3,0x00,0x20]
2935# CHECK-LE: bnulr- 0 # encoding: [0x20,0x00,0xc3,0x4c]
2936 bnulr-
2937# CHECK-BE: bnuctr- 2 # encoding: [0x4c,0xcb,0x04,0x20]
2938# CHECK-LE: bnuctr- 2 # encoding: [0x20,0x04,0xcb,0x4c]
2939 bnuctr- 2
2940# CHECK-BE: bnuctr- 0 # encoding: [0x4c,0xc3,0x04,0x20]
2941# CHECK-LE: bnuctr- 0 # encoding: [0x20,0x04,0xc3,0x4c]
2942 bnuctr-
2943# CHECK-BE: bnul- 2, target # encoding: [0x40,0xcb,A,0bAAAAAA01]
2944# CHECK-LE: bnul- 2, target # encoding: [0bAAAAAA01,A,0xcb,0x40]
2945# CHECK-BE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14
2946# CHECK-LE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14
2947 bnul- 2, target
2948# CHECK-BE: bnul- 0, target # encoding: [0x40,0xc3,A,0bAAAAAA01]
2949# CHECK-LE: bnul- 0, target # encoding: [0bAAAAAA01,A,0xc3,0x40]
2950# CHECK-BE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14
2951# CHECK-LE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14
2952 bnul- target
2953# CHECK-BE: bnula- 2, target # encoding: [0x40,0xcb,A,0bAAAAAA11]
2954# CHECK-LE: bnula- 2, target # encoding: [0bAAAAAA11,A,0xcb,0x40]
2955# CHECK-BE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14abs
2956# CHECK-LE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14abs
2957 bnula- 2, target
2958# CHECK-BE: bnula- 0, target # encoding: [0x40,0xc3,A,0bAAAAAA11]
2959# CHECK-LE: bnula- 0, target # encoding: [0bAAAAAA11,A,0xc3,0x40]
2960# CHECK-BE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14abs
2961# CHECK-LE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14abs
2962 bnula- target
2963# CHECK-BE: bnulrl- 2 # encoding: [0x4c,0xcb,0x00,0x21]
2964# CHECK-LE: bnulrl- 2 # encoding: [0x21,0x00,0xcb,0x4c]
2965 bnulrl- 2
2966# CHECK-BE: bnulrl- 0 # encoding: [0x4c,0xc3,0x00,0x21]
2967# CHECK-LE: bnulrl- 0 # encoding: [0x21,0x00,0xc3,0x4c]
2968 bnulrl-
2969# CHECK-BE: bnuctrl- 2 # encoding: [0x4c,0xcb,0x04,0x21]
2970# CHECK-LE: bnuctrl- 2 # encoding: [0x21,0x04,0xcb,0x4c]
2971 bnuctrl- 2
2972# CHECK-BE: bnuctrl- 0 # encoding: [0x4c,0xc3,0x04,0x21]
2973# CHECK-LE: bnuctrl- 0 # encoding: [0x21,0x04,0xc3,0x4c]
2974 bnuctrl-
Ulrich Weigand86247b62013-06-24 16:52:04 +00002975
Ulrich Weigand85c6f7f2013-07-01 21:40:54 +00002976# Condition register logical mnemonics
2977
Ulrich Weigandcae3a172014-03-24 18:16:09 +00002978# CHECK-BE: creqv 2, 2, 2 # encoding: [0x4c,0x42,0x12,0x42]
2979# CHECK-LE: creqv 2, 2, 2 # encoding: [0x42,0x12,0x42,0x4c]
2980 crset 2
2981# CHECK-BE: crxor 2, 2, 2 # encoding: [0x4c,0x42,0x11,0x82]
2982# CHECK-LE: crxor 2, 2, 2 # encoding: [0x82,0x11,0x42,0x4c]
2983 crclr 2
2984# CHECK-BE: cror 2, 3, 3 # encoding: [0x4c,0x43,0x1b,0x82]
2985# CHECK-LE: cror 2, 3, 3 # encoding: [0x82,0x1b,0x43,0x4c]
2986 crmove 2, 3
2987# CHECK-BE: crnor 2, 3, 3 # encoding: [0x4c,0x43,0x18,0x42]
2988# CHECK-LE: crnor 2, 3, 3 # encoding: [0x42,0x18,0x43,0x4c]
2989 crnot 2, 3
Ulrich Weigandd8394902013-05-03 19:50:27 +00002990
Ulrich Weigand4069e242013-06-25 13:16:48 +00002991# Subtract mnemonics
2992
Ulrich Weigandcae3a172014-03-24 18:16:09 +00002993# CHECK-BE: addi 2, 3, -128 # encoding: [0x38,0x43,0xff,0x80]
2994# CHECK-LE: addi 2, 3, -128 # encoding: [0x80,0xff,0x43,0x38]
2995 subi 2, 3, 128
2996# CHECK-BE: addis 2, 3, -128 # encoding: [0x3c,0x43,0xff,0x80]
2997# CHECK-LE: addis 2, 3, -128 # encoding: [0x80,0xff,0x43,0x3c]
2998 subis 2, 3, 128
2999# CHECK-BE: addic 2, 3, -128 # encoding: [0x30,0x43,0xff,0x80]
3000# CHECK-LE: addic 2, 3, -128 # encoding: [0x80,0xff,0x43,0x30]
3001 subic 2, 3, 128
3002# CHECK-BE: addic. 2, 3, -128 # encoding: [0x34,0x43,0xff,0x80]
3003# CHECK-LE: addic. 2, 3, -128 # encoding: [0x80,0xff,0x43,0x34]
3004 subic. 2, 3, 128
Ulrich Weigand4069e242013-06-25 13:16:48 +00003005
Ulrich Weigandcae3a172014-03-24 18:16:09 +00003006# CHECK-BE: subf 2, 4, 3 # encoding: [0x7c,0x44,0x18,0x50]
3007# CHECK-LE: subf 2, 4, 3 # encoding: [0x50,0x18,0x44,0x7c]
3008 sub 2, 3, 4
3009# CHECK-BE: subf. 2, 4, 3 # encoding: [0x7c,0x44,0x18,0x51]
3010# CHECK-LE: subf. 2, 4, 3 # encoding: [0x51,0x18,0x44,0x7c]
3011 sub. 2, 3, 4
3012# CHECK-BE: subfc 2, 4, 3 # encoding: [0x7c,0x44,0x18,0x10]
3013# CHECK-LE: subfc 2, 4, 3 # encoding: [0x10,0x18,0x44,0x7c]
3014 subc 2, 3, 4
3015# CHECK-BE: subfc. 2, 4, 3 # encoding: [0x7c,0x44,0x18,0x11]
3016# CHECK-LE: subfc. 2, 4, 3 # encoding: [0x11,0x18,0x44,0x7c]
3017 subc. 2, 3, 4
Ulrich Weigandd8394902013-05-03 19:50:27 +00003018
3019# Compare mnemonics
3020
Ulrich Weigandcae3a172014-03-24 18:16:09 +00003021# CHECK-BE: cmpdi 2, 3, 128 # encoding: [0x2d,0x23,0x00,0x80]
3022# CHECK-LE: cmpdi 2, 3, 128 # encoding: [0x80,0x00,0x23,0x2d]
3023 cmpdi 2, 3, 128
3024# CHECK-BE: cmpdi 0, 3, 128 # encoding: [0x2c,0x23,0x00,0x80]
3025# CHECK-LE: cmpdi 0, 3, 128 # encoding: [0x80,0x00,0x23,0x2c]
3026 cmpdi 3, 128
3027# CHECK-BE: cmpd 2, 3, 4 # encoding: [0x7d,0x23,0x20,0x00]
3028# CHECK-LE: cmpd 2, 3, 4 # encoding: [0x00,0x20,0x23,0x7d]
3029 cmpd 2, 3, 4
3030# CHECK-BE: cmpd 0, 3, 4 # encoding: [0x7c,0x23,0x20,0x00]
3031# CHECK-LE: cmpd 0, 3, 4 # encoding: [0x00,0x20,0x23,0x7c]
3032 cmpd 3, 4
3033# CHECK-BE: cmpldi 2, 3, 128 # encoding: [0x29,0x23,0x00,0x80]
3034# CHECK-LE: cmpldi 2, 3, 128 # encoding: [0x80,0x00,0x23,0x29]
3035 cmpldi 2, 3, 128
3036# CHECK-BE: cmpldi 0, 3, 128 # encoding: [0x28,0x23,0x00,0x80]
3037# CHECK-LE: cmpldi 0, 3, 128 # encoding: [0x80,0x00,0x23,0x28]
3038 cmpldi 3, 128
3039# CHECK-BE: cmpld 2, 3, 4 # encoding: [0x7d,0x23,0x20,0x40]
3040# CHECK-LE: cmpld 2, 3, 4 # encoding: [0x40,0x20,0x23,0x7d]
3041 cmpld 2, 3, 4
3042# CHECK-BE: cmpld 0, 3, 4 # encoding: [0x7c,0x23,0x20,0x40]
3043# CHECK-LE: cmpld 0, 3, 4 # encoding: [0x40,0x20,0x23,0x7c]
3044 cmpld 3, 4
Ulrich Weigandd8394902013-05-03 19:50:27 +00003045
Ulrich Weigandcae3a172014-03-24 18:16:09 +00003046# CHECK-BE: cmpwi 2, 3, 128 # encoding: [0x2d,0x03,0x00,0x80]
3047# CHECK-LE: cmpwi 2, 3, 128 # encoding: [0x80,0x00,0x03,0x2d]
3048 cmpwi 2, 3, 128
3049# CHECK-BE: cmpwi 0, 3, 128 # encoding: [0x2c,0x03,0x00,0x80]
3050# CHECK-LE: cmpwi 0, 3, 128 # encoding: [0x80,0x00,0x03,0x2c]
3051 cmpwi 3, 128
3052# CHECK-BE: cmpw 2, 3, 4 # encoding: [0x7d,0x03,0x20,0x00]
3053# CHECK-LE: cmpw 2, 3, 4 # encoding: [0x00,0x20,0x03,0x7d]
3054 cmpw 2, 3, 4
3055# CHECK-BE: cmpw 0, 3, 4 # encoding: [0x7c,0x03,0x20,0x00]
3056# CHECK-LE: cmpw 0, 3, 4 # encoding: [0x00,0x20,0x03,0x7c]
3057 cmpw 3, 4
3058# CHECK-BE: cmplwi 2, 3, 128 # encoding: [0x29,0x03,0x00,0x80]
3059# CHECK-LE: cmplwi 2, 3, 128 # encoding: [0x80,0x00,0x03,0x29]
3060 cmplwi 2, 3, 128
3061# CHECK-BE: cmplwi 0, 3, 128 # encoding: [0x28,0x03,0x00,0x80]
3062# CHECK-LE: cmplwi 0, 3, 128 # encoding: [0x80,0x00,0x03,0x28]
3063 cmplwi 3, 128
3064# CHECK-BE: cmplw 2, 3, 4 # encoding: [0x7d,0x03,0x20,0x40]
3065# CHECK-LE: cmplw 2, 3, 4 # encoding: [0x40,0x20,0x03,0x7d]
3066 cmplw 2, 3, 4
3067# CHECK-BE: cmplw 0, 3, 4 # encoding: [0x7c,0x03,0x20,0x40]
3068# CHECK-LE: cmplw 0, 3, 4 # encoding: [0x40,0x20,0x03,0x7c]
3069 cmplw 3, 4
Ulrich Weigandd8394902013-05-03 19:50:27 +00003070
Ulrich Weigand56b0e7b2013-07-04 14:40:12 +00003071# Trap mnemonics
3072
Ulrich Weigandcae3a172014-03-24 18:16:09 +00003073# CHECK-BE: twi 16, 3, 4 # encoding: [0x0e,0x03,0x00,0x04]
3074# CHECK-LE: twi 16, 3, 4 # encoding: [0x04,0x00,0x03,0x0e]
3075 twlti 3, 4
3076# CHECK-BE: tw 16, 3, 4 # encoding: [0x7e,0x03,0x20,0x08]
3077# CHECK-LE: tw 16, 3, 4 # encoding: [0x08,0x20,0x03,0x7e]
3078 twlt 3, 4
3079# CHECK-BE: tdi 16, 3, 4 # encoding: [0x0a,0x03,0x00,0x04]
3080# CHECK-LE: tdi 16, 3, 4 # encoding: [0x04,0x00,0x03,0x0a]
3081 tdlti 3, 4
3082# CHECK-BE: td 16, 3, 4 # encoding: [0x7e,0x03,0x20,0x88]
3083# CHECK-LE: td 16, 3, 4 # encoding: [0x88,0x20,0x03,0x7e]
3084 tdlt 3, 4
Ulrich Weigand56b0e7b2013-07-04 14:40:12 +00003085
Ulrich Weigandcae3a172014-03-24 18:16:09 +00003086# CHECK-BE: twi 20, 3, 4 # encoding: [0x0e,0x83,0x00,0x04]
3087# CHECK-LE: twi 20, 3, 4 # encoding: [0x04,0x00,0x83,0x0e]
3088 twlei 3, 4
3089# CHECK-BE: tw 20, 3, 4 # encoding: [0x7e,0x83,0x20,0x08]
3090# CHECK-LE: tw 20, 3, 4 # encoding: [0x08,0x20,0x83,0x7e]
3091 twle 3, 4
3092# CHECK-BE: tdi 20, 3, 4 # encoding: [0x0a,0x83,0x00,0x04]
3093# CHECK-LE: tdi 20, 3, 4 # encoding: [0x04,0x00,0x83,0x0a]
3094 tdlei 3, 4
3095# CHECK-BE: td 20, 3, 4 # encoding: [0x7e,0x83,0x20,0x88]
3096# CHECK-LE: td 20, 3, 4 # encoding: [0x88,0x20,0x83,0x7e]
3097 tdle 3, 4
Ulrich Weigand56b0e7b2013-07-04 14:40:12 +00003098
Ulrich Weigandcae3a172014-03-24 18:16:09 +00003099# CHECK-BE: twi 4, 3, 4 # encoding: [0x0c,0x83,0x00,0x04]
3100# CHECK-LE: twi 4, 3, 4 # encoding: [0x04,0x00,0x83,0x0c]
3101 tweqi 3, 4
3102# CHECK-BE: tw 4, 3, 4 # encoding: [0x7c,0x83,0x20,0x08]
3103# CHECK-LE: tw 4, 3, 4 # encoding: [0x08,0x20,0x83,0x7c]
3104 tweq 3, 4
3105# CHECK-BE: tdi 4, 3, 4 # encoding: [0x08,0x83,0x00,0x04]
3106# CHECK-LE: tdi 4, 3, 4 # encoding: [0x04,0x00,0x83,0x08]
3107 tdeqi 3, 4
3108# CHECK-BE: td 4, 3, 4 # encoding: [0x7c,0x83,0x20,0x88]
3109# CHECK-LE: td 4, 3, 4 # encoding: [0x88,0x20,0x83,0x7c]
3110 tdeq 3, 4
Ulrich Weigand56b0e7b2013-07-04 14:40:12 +00003111
Ulrich Weigandcae3a172014-03-24 18:16:09 +00003112# CHECK-BE: twi 12, 3, 4 # encoding: [0x0d,0x83,0x00,0x04]
3113# CHECK-LE: twi 12, 3, 4 # encoding: [0x04,0x00,0x83,0x0d]
3114 twgei 3, 4
3115# CHECK-BE: tw 12, 3, 4 # encoding: [0x7d,0x83,0x20,0x08]
3116# CHECK-LE: tw 12, 3, 4 # encoding: [0x08,0x20,0x83,0x7d]
3117 twge 3, 4
3118# CHECK-BE: tdi 12, 3, 4 # encoding: [0x09,0x83,0x00,0x04]
3119# CHECK-LE: tdi 12, 3, 4 # encoding: [0x04,0x00,0x83,0x09]
3120 tdgei 3, 4
3121# CHECK-BE: td 12, 3, 4 # encoding: [0x7d,0x83,0x20,0x88]
3122# CHECK-LE: td 12, 3, 4 # encoding: [0x88,0x20,0x83,0x7d]
3123 tdge 3, 4
Ulrich Weigand56b0e7b2013-07-04 14:40:12 +00003124
Ulrich Weigandcae3a172014-03-24 18:16:09 +00003125# CHECK-BE: twi 8, 3, 4 # encoding: [0x0d,0x03,0x00,0x04]
3126# CHECK-LE: twi 8, 3, 4 # encoding: [0x04,0x00,0x03,0x0d]
3127 twgti 3, 4
3128# CHECK-BE: tw 8, 3, 4 # encoding: [0x7d,0x03,0x20,0x08]
3129# CHECK-LE: tw 8, 3, 4 # encoding: [0x08,0x20,0x03,0x7d]
3130 twgt 3, 4
3131# CHECK-BE: tdi 8, 3, 4 # encoding: [0x09,0x03,0x00,0x04]
3132# CHECK-LE: tdi 8, 3, 4 # encoding: [0x04,0x00,0x03,0x09]
3133 tdgti 3, 4
3134# CHECK-BE: td 8, 3, 4 # encoding: [0x7d,0x03,0x20,0x88]
3135# CHECK-LE: td 8, 3, 4 # encoding: [0x88,0x20,0x03,0x7d]
3136 tdgt 3, 4
Ulrich Weigand56b0e7b2013-07-04 14:40:12 +00003137
Ulrich Weigandcae3a172014-03-24 18:16:09 +00003138# CHECK-BE: twi 12, 3, 4 # encoding: [0x0d,0x83,0x00,0x04]
3139# CHECK-LE: twi 12, 3, 4 # encoding: [0x04,0x00,0x83,0x0d]
3140 twnli 3, 4
3141# CHECK-BE: tw 12, 3, 4 # encoding: [0x7d,0x83,0x20,0x08]
3142# CHECK-LE: tw 12, 3, 4 # encoding: [0x08,0x20,0x83,0x7d]
3143 twnl 3, 4
3144# CHECK-BE: tdi 12, 3, 4 # encoding: [0x09,0x83,0x00,0x04]
3145# CHECK-LE: tdi 12, 3, 4 # encoding: [0x04,0x00,0x83,0x09]
3146 tdnli 3, 4
3147# CHECK-BE: td 12, 3, 4 # encoding: [0x7d,0x83,0x20,0x88]
3148# CHECK-LE: td 12, 3, 4 # encoding: [0x88,0x20,0x83,0x7d]
3149 tdnl 3, 4
Ulrich Weigand56b0e7b2013-07-04 14:40:12 +00003150
Ulrich Weigandcae3a172014-03-24 18:16:09 +00003151# CHECK-BE: twi 24, 3, 4 # encoding: [0x0f,0x03,0x00,0x04]
3152# CHECK-LE: twi 24, 3, 4 # encoding: [0x04,0x00,0x03,0x0f]
3153 twnei 3, 4
3154# CHECK-BE: tw 24, 3, 4 # encoding: [0x7f,0x03,0x20,0x08]
3155# CHECK-LE: tw 24, 3, 4 # encoding: [0x08,0x20,0x03,0x7f]
3156 twne 3, 4
3157# CHECK-BE: tdi 24, 3, 4 # encoding: [0x0b,0x03,0x00,0x04]
3158# CHECK-LE: tdi 24, 3, 4 # encoding: [0x04,0x00,0x03,0x0b]
3159 tdnei 3, 4
3160# CHECK-BE: td 24, 3, 4 # encoding: [0x7f,0x03,0x20,0x88]
3161# CHECK-LE: td 24, 3, 4 # encoding: [0x88,0x20,0x03,0x7f]
3162 tdne 3, 4
Ulrich Weigand56b0e7b2013-07-04 14:40:12 +00003163
Ulrich Weigandcae3a172014-03-24 18:16:09 +00003164# CHECK-BE: twi 20, 3, 4 # encoding: [0x0e,0x83,0x00,0x04]
3165# CHECK-LE: twi 20, 3, 4 # encoding: [0x04,0x00,0x83,0x0e]
3166 twngi 3, 4
3167# CHECK-BE: tw 20, 3, 4 # encoding: [0x7e,0x83,0x20,0x08]
3168# CHECK-LE: tw 20, 3, 4 # encoding: [0x08,0x20,0x83,0x7e]
3169 twng 3, 4
3170# CHECK-BE: tdi 20, 3, 4 # encoding: [0x0a,0x83,0x00,0x04]
3171# CHECK-LE: tdi 20, 3, 4 # encoding: [0x04,0x00,0x83,0x0a]
3172 tdngi 3, 4
3173# CHECK-BE: td 20, 3, 4 # encoding: [0x7e,0x83,0x20,0x88]
3174# CHECK-LE: td 20, 3, 4 # encoding: [0x88,0x20,0x83,0x7e]
3175 tdng 3, 4
Ulrich Weigand56b0e7b2013-07-04 14:40:12 +00003176
Ulrich Weigandcae3a172014-03-24 18:16:09 +00003177# CHECK-BE: twi 2, 3, 4 # encoding: [0x0c,0x43,0x00,0x04]
3178# CHECK-LE: twi 2, 3, 4 # encoding: [0x04,0x00,0x43,0x0c]
3179 twllti 3, 4
3180# CHECK-BE: tw 2, 3, 4 # encoding: [0x7c,0x43,0x20,0x08]
3181# CHECK-LE: tw 2, 3, 4 # encoding: [0x08,0x20,0x43,0x7c]
3182 twllt 3, 4
3183# CHECK-BE: tdi 2, 3, 4 # encoding: [0x08,0x43,0x00,0x04]
3184# CHECK-LE: tdi 2, 3, 4 # encoding: [0x04,0x00,0x43,0x08]
3185 tdllti 3, 4
3186# CHECK-BE: td 2, 3, 4 # encoding: [0x7c,0x43,0x20,0x88]
3187# CHECK-LE: td 2, 3, 4 # encoding: [0x88,0x20,0x43,0x7c]
3188 tdllt 3, 4
Ulrich Weigand56b0e7b2013-07-04 14:40:12 +00003189
Ulrich Weigandcae3a172014-03-24 18:16:09 +00003190# CHECK-BE: twi 6, 3, 4 # encoding: [0x0c,0xc3,0x00,0x04]
3191# CHECK-LE: twi 6, 3, 4 # encoding: [0x04,0x00,0xc3,0x0c]
3192 twllei 3, 4
3193# CHECK-BE: tw 6, 3, 4 # encoding: [0x7c,0xc3,0x20,0x08]
3194# CHECK-LE: tw 6, 3, 4 # encoding: [0x08,0x20,0xc3,0x7c]
3195 twlle 3, 4
3196# CHECK-BE: tdi 6, 3, 4 # encoding: [0x08,0xc3,0x00,0x04]
3197# CHECK-LE: tdi 6, 3, 4 # encoding: [0x04,0x00,0xc3,0x08]
3198 tdllei 3, 4
3199# CHECK-BE: td 6, 3, 4 # encoding: [0x7c,0xc3,0x20,0x88]
3200# CHECK-LE: td 6, 3, 4 # encoding: [0x88,0x20,0xc3,0x7c]
3201 tdlle 3, 4
Ulrich Weigand56b0e7b2013-07-04 14:40:12 +00003202
Ulrich Weigandcae3a172014-03-24 18:16:09 +00003203# CHECK-BE: twi 5, 3, 4 # encoding: [0x0c,0xa3,0x00,0x04]
3204# CHECK-LE: twi 5, 3, 4 # encoding: [0x04,0x00,0xa3,0x0c]
3205 twlgei 3, 4
3206# CHECK-BE: tw 5, 3, 4 # encoding: [0x7c,0xa3,0x20,0x08]
3207# CHECK-LE: tw 5, 3, 4 # encoding: [0x08,0x20,0xa3,0x7c]
3208 twlge 3, 4
3209# CHECK-BE: tdi 5, 3, 4 # encoding: [0x08,0xa3,0x00,0x04]
3210# CHECK-LE: tdi 5, 3, 4 # encoding: [0x04,0x00,0xa3,0x08]
3211 tdlgei 3, 4
3212# CHECK-BE: td 5, 3, 4 # encoding: [0x7c,0xa3,0x20,0x88]
3213# CHECK-LE: td 5, 3, 4 # encoding: [0x88,0x20,0xa3,0x7c]
3214 tdlge 3, 4
Ulrich Weigand56b0e7b2013-07-04 14:40:12 +00003215
Ulrich Weigandcae3a172014-03-24 18:16:09 +00003216# CHECK-BE: twi 1, 3, 4 # encoding: [0x0c,0x23,0x00,0x04]
3217# CHECK-LE: twi 1, 3, 4 # encoding: [0x04,0x00,0x23,0x0c]
3218 twlgti 3, 4
3219# CHECK-BE: tw 1, 3, 4 # encoding: [0x7c,0x23,0x20,0x08]
3220# CHECK-LE: tw 1, 3, 4 # encoding: [0x08,0x20,0x23,0x7c]
3221 twlgt 3, 4
3222# CHECK-BE: tdi 1, 3, 4 # encoding: [0x08,0x23,0x00,0x04]
3223# CHECK-LE: tdi 1, 3, 4 # encoding: [0x04,0x00,0x23,0x08]
3224 tdlgti 3, 4
3225# CHECK-BE: td 1, 3, 4 # encoding: [0x7c,0x23,0x20,0x88]
3226# CHECK-LE: td 1, 3, 4 # encoding: [0x88,0x20,0x23,0x7c]
3227 tdlgt 3, 4
Ulrich Weigand56b0e7b2013-07-04 14:40:12 +00003228
Ulrich Weigandcae3a172014-03-24 18:16:09 +00003229# CHECK-BE: twi 5, 3, 4 # encoding: [0x0c,0xa3,0x00,0x04]
3230# CHECK-LE: twi 5, 3, 4 # encoding: [0x04,0x00,0xa3,0x0c]
3231 twlnli 3, 4
3232# CHECK-BE: tw 5, 3, 4 # encoding: [0x7c,0xa3,0x20,0x08]
3233# CHECK-LE: tw 5, 3, 4 # encoding: [0x08,0x20,0xa3,0x7c]
3234 twlnl 3, 4
3235# CHECK-BE: tdi 5, 3, 4 # encoding: [0x08,0xa3,0x00,0x04]
3236# CHECK-LE: tdi 5, 3, 4 # encoding: [0x04,0x00,0xa3,0x08]
3237 tdlnli 3, 4
3238# CHECK-BE: td 5, 3, 4 # encoding: [0x7c,0xa3,0x20,0x88]
3239# CHECK-LE: td 5, 3, 4 # encoding: [0x88,0x20,0xa3,0x7c]
3240 tdlnl 3, 4
Ulrich Weigand56b0e7b2013-07-04 14:40:12 +00003241
Ulrich Weigandcae3a172014-03-24 18:16:09 +00003242# CHECK-BE: twi 6, 3, 4 # encoding: [0x0c,0xc3,0x00,0x04]
3243# CHECK-LE: twi 6, 3, 4 # encoding: [0x04,0x00,0xc3,0x0c]
3244 twlngi 3, 4
3245# CHECK-BE: tw 6, 3, 4 # encoding: [0x7c,0xc3,0x20,0x08]
3246# CHECK-LE: tw 6, 3, 4 # encoding: [0x08,0x20,0xc3,0x7c]
3247 twlng 3, 4
3248# CHECK-BE: tdi 6, 3, 4 # encoding: [0x08,0xc3,0x00,0x04]
3249# CHECK-LE: tdi 6, 3, 4 # encoding: [0x04,0x00,0xc3,0x08]
3250 tdlngi 3, 4
3251# CHECK-BE: td 6, 3, 4 # encoding: [0x7c,0xc3,0x20,0x88]
3252# CHECK-LE: td 6, 3, 4 # encoding: [0x88,0x20,0xc3,0x7c]
3253 tdlng 3, 4
Ulrich Weigand56b0e7b2013-07-04 14:40:12 +00003254
Ulrich Weigandcae3a172014-03-24 18:16:09 +00003255# CHECK-BE: twi 31, 3, 4 # encoding: [0x0f,0xe3,0x00,0x04]
3256# CHECK-LE: twi 31, 3, 4 # encoding: [0x04,0x00,0xe3,0x0f]
3257 twui 3, 4
3258# CHECK-BE: tw 31, 3, 4 # encoding: [0x7f,0xe3,0x20,0x08]
3259# CHECK-LE: tw 31, 3, 4 # encoding: [0x08,0x20,0xe3,0x7f]
3260 twu 3, 4
3261# CHECK-BE: tdi 31, 3, 4 # encoding: [0x0b,0xe3,0x00,0x04]
3262# CHECK-LE: tdi 31, 3, 4 # encoding: [0x04,0x00,0xe3,0x0b]
3263 tdui 3, 4
3264# CHECK-BE: td 31, 3, 4 # encoding: [0x7f,0xe3,0x20,0x88]
3265# CHECK-LE: td 31, 3, 4 # encoding: [0x88,0x20,0xe3,0x7f]
3266 tdu 3, 4
Ulrich Weigand56b0e7b2013-07-04 14:40:12 +00003267
Ulrich Weigandcae3a172014-03-24 18:16:09 +00003268# CHECK-BE: trap # encoding: [0x7f,0xe0,0x00,0x08]
3269# CHECK-LE: trap # encoding: [0x08,0x00,0xe0,0x7f]
3270 trap
Ulrich Weigandd8394902013-05-03 19:50:27 +00003271
3272# Rotate and shift mnemonics
3273
Ulrich Weigandcae3a172014-03-24 18:16:09 +00003274# CHECK-BE: rldicr 2, 3, 5, 3 # encoding: [0x78,0x62,0x28,0xc4]
3275# CHECK-LE: rldicr 2, 3, 5, 3 # encoding: [0xc4,0x28,0x62,0x78]
3276 extldi 2, 3, 4, 5
3277# CHECK-BE: rldicr. 2, 3, 5, 3 # encoding: [0x78,0x62,0x28,0xc5]
3278# CHECK-LE: rldicr. 2, 3, 5, 3 # encoding: [0xc5,0x28,0x62,0x78]
3279 extldi. 2, 3, 4, 5
3280# CHECK-BE: rldicl 2, 3, 9, 60 # encoding: [0x78,0x62,0x4f,0x20]
3281# CHECK-LE: rldicl 2, 3, 9, 60 # encoding: [0x20,0x4f,0x62,0x78]
3282 extrdi 2, 3, 4, 5
3283# CHECK-BE: rldicl. 2, 3, 9, 60 # encoding: [0x78,0x62,0x4f,0x21]
3284# CHECK-LE: rldicl. 2, 3, 9, 60 # encoding: [0x21,0x4f,0x62,0x78]
3285 extrdi. 2, 3, 4, 5
3286# CHECK-BE: rldimi 2, 3, 55, 5 # encoding: [0x78,0x62,0xb9,0x4e]
3287# CHECK-LE: rldimi 2, 3, 55, 5 # encoding: [0x4e,0xb9,0x62,0x78]
3288 insrdi 2, 3, 4, 5
3289# CHECK-BE: rldimi. 2, 3, 55, 5 # encoding: [0x78,0x62,0xb9,0x4f]
3290# CHECK-LE: rldimi. 2, 3, 55, 5 # encoding: [0x4f,0xb9,0x62,0x78]
3291 insrdi. 2, 3, 4, 5
3292# CHECK-BE: rldicl 2, 3, 4, 0 # encoding: [0x78,0x62,0x20,0x00]
3293# CHECK-LE: rldicl 2, 3, 4, 0 # encoding: [0x00,0x20,0x62,0x78]
3294 rotldi 2, 3, 4
3295# CHECK-BE: rldicl. 2, 3, 4, 0 # encoding: [0x78,0x62,0x20,0x01]
3296# CHECK-LE: rldicl. 2, 3, 4, 0 # encoding: [0x01,0x20,0x62,0x78]
3297 rotldi. 2, 3, 4
3298# CHECK-BE: rldicl 2, 3, 60, 0 # encoding: [0x78,0x62,0xe0,0x02]
3299# CHECK-LE: rldicl 2, 3, 60, 0 # encoding: [0x02,0xe0,0x62,0x78]
3300 rotrdi 2, 3, 4
3301# CHECK-BE: rldicl. 2, 3, 60, 0 # encoding: [0x78,0x62,0xe0,0x03]
3302# CHECK-LE: rldicl. 2, 3, 60, 0 # encoding: [0x03,0xe0,0x62,0x78]
3303 rotrdi. 2, 3, 4
3304# CHECK-BE: rldcl 2, 3, 4, 0 # encoding: [0x78,0x62,0x20,0x10]
3305# CHECK-LE: rldcl 2, 3, 4, 0 # encoding: [0x10,0x20,0x62,0x78]
3306 rotld 2, 3, 4
3307# CHECK-BE: rldcl. 2, 3, 4, 0 # encoding: [0x78,0x62,0x20,0x11]
3308# CHECK-LE: rldcl. 2, 3, 4, 0 # encoding: [0x11,0x20,0x62,0x78]
3309 rotld. 2, 3, 4
3310# CHECK-BE: sldi 2, 3, 4 # encoding: [0x78,0x62,0x26,0xe4]
3311# CHECK-LE: sldi 2, 3, 4 # encoding: [0xe4,0x26,0x62,0x78]
3312 sldi 2, 3, 4
3313# CHECK-BE: rldicr. 2, 3, 4, 59 # encoding: [0x78,0x62,0x26,0xe5]
3314# CHECK-LE: rldicr. 2, 3, 4, 59 # encoding: [0xe5,0x26,0x62,0x78]
3315 sldi. 2, 3, 4
3316# CHECK-BE: rldicl 2, 3, 60, 4 # encoding: [0x78,0x62,0xe1,0x02]
3317# CHECK-LE: rldicl 2, 3, 60, 4 # encoding: [0x02,0xe1,0x62,0x78]
3318 srdi 2, 3, 4
3319# CHECK-BE: rldicl. 2, 3, 60, 4 # encoding: [0x78,0x62,0xe1,0x03]
3320# CHECK-LE: rldicl. 2, 3, 60, 4 # encoding: [0x03,0xe1,0x62,0x78]
3321 srdi. 2, 3, 4
3322# CHECK-BE: rldicl 2, 3, 0, 4 # encoding: [0x78,0x62,0x01,0x00]
3323# CHECK-LE: rldicl 2, 3, 0, 4 # encoding: [0x00,0x01,0x62,0x78]
3324 clrldi 2, 3, 4
3325# CHECK-BE: rldicl. 2, 3, 0, 4 # encoding: [0x78,0x62,0x01,0x01]
3326# CHECK-LE: rldicl. 2, 3, 0, 4 # encoding: [0x01,0x01,0x62,0x78]
3327 clrldi. 2, 3, 4
3328# CHECK-BE: rldicr 2, 3, 0, 59 # encoding: [0x78,0x62,0x06,0xe4]
3329# CHECK-LE: rldicr 2, 3, 0, 59 # encoding: [0xe4,0x06,0x62,0x78]
3330 clrrdi 2, 3, 4
3331# CHECK-BE: rldicr. 2, 3, 0, 59 # encoding: [0x78,0x62,0x06,0xe5]
3332# CHECK-LE: rldicr. 2, 3, 0, 59 # encoding: [0xe5,0x06,0x62,0x78]
3333 clrrdi. 2, 3, 4
3334# CHECK-BE: rldic 2, 3, 4, 1 # encoding: [0x78,0x62,0x20,0x48]
3335# CHECK-LE: rldic 2, 3, 4, 1 # encoding: [0x48,0x20,0x62,0x78]
3336 clrlsldi 2, 3, 5, 4
3337# CHECK-BE: rldic. 2, 3, 4, 1 # encoding: [0x78,0x62,0x20,0x49]
3338# CHECK-LE: rldic. 2, 3, 4, 1 # encoding: [0x49,0x20,0x62,0x78]
3339 clrlsldi. 2, 3, 5, 4
Ulrich Weigandd8394902013-05-03 19:50:27 +00003340
Ulrich Weigandcae3a172014-03-24 18:16:09 +00003341# CHECK-BE: rlwinm 2, 3, 5, 0, 3 # encoding: [0x54,0x62,0x28,0x06]
3342# CHECK-LE: rlwinm 2, 3, 5, 0, 3 # encoding: [0x06,0x28,0x62,0x54]
3343 extlwi 2, 3, 4, 5
3344# CHECK-BE: rlwinm. 2, 3, 5, 0, 3 # encoding: [0x54,0x62,0x28,0x07]
3345# CHECK-LE: rlwinm. 2, 3, 5, 0, 3 # encoding: [0x07,0x28,0x62,0x54]
3346 extlwi. 2, 3, 4, 5
3347# CHECK-BE: rlwinm 2, 3, 9, 28, 31 # encoding: [0x54,0x62,0x4f,0x3e]
3348# CHECK-LE: rlwinm 2, 3, 9, 28, 31 # encoding: [0x3e,0x4f,0x62,0x54]
3349 extrwi 2, 3, 4, 5
3350# CHECK-BE: rlwinm. 2, 3, 9, 28, 31 # encoding: [0x54,0x62,0x4f,0x3f]
3351# CHECK-LE: rlwinm. 2, 3, 9, 28, 31 # encoding: [0x3f,0x4f,0x62,0x54]
3352 extrwi. 2, 3, 4, 5
3353# CHECK-BE: rlwimi 2, 3, 27, 5, 8 # encoding: [0x50,0x62,0xd9,0x50]
3354# CHECK-LE: rlwimi 2, 3, 27, 5, 8 # encoding: [0x50,0xd9,0x62,0x50]
3355 inslwi 2, 3, 4, 5
3356# CHECK-BE: rlwimi. 2, 3, 27, 5, 8 # encoding: [0x50,0x62,0xd9,0x51]
3357# CHECK-LE: rlwimi. 2, 3, 27, 5, 8 # encoding: [0x51,0xd9,0x62,0x50]
3358 inslwi. 2, 3, 4, 5
3359# CHECK-BE: rlwimi 2, 3, 23, 5, 8 # encoding: [0x50,0x62,0xb9,0x50]
3360# CHECK-LE: rlwimi 2, 3, 23, 5, 8 # encoding: [0x50,0xb9,0x62,0x50]
3361 insrwi 2, 3, 4, 5
3362# CHECK-BE: rlwimi. 2, 3, 23, 5, 8 # encoding: [0x50,0x62,0xb9,0x51]
3363# CHECK-LE: rlwimi. 2, 3, 23, 5, 8 # encoding: [0x51,0xb9,0x62,0x50]
3364 insrwi. 2, 3, 4, 5
3365# CHECK-BE: rlwinm 2, 3, 4, 0, 31 # encoding: [0x54,0x62,0x20,0x3e]
3366# CHECK-LE: rlwinm 2, 3, 4, 0, 31 # encoding: [0x3e,0x20,0x62,0x54]
3367 rotlwi 2, 3, 4
3368# CHECK-BE: rlwinm. 2, 3, 4, 0, 31 # encoding: [0x54,0x62,0x20,0x3f]
3369# CHECK-LE: rlwinm. 2, 3, 4, 0, 31 # encoding: [0x3f,0x20,0x62,0x54]
3370 rotlwi. 2, 3, 4
3371# CHECK-BE: rlwinm 2, 3, 28, 0, 31 # encoding: [0x54,0x62,0xe0,0x3e]
3372# CHECK-LE: rlwinm 2, 3, 28, 0, 31 # encoding: [0x3e,0xe0,0x62,0x54]
3373 rotrwi 2, 3, 4
3374# CHECK-BE: rlwinm. 2, 3, 28, 0, 31 # encoding: [0x54,0x62,0xe0,0x3f]
3375# CHECK-LE: rlwinm. 2, 3, 28, 0, 31 # encoding: [0x3f,0xe0,0x62,0x54]
3376 rotrwi. 2, 3, 4
3377# CHECK-BE: rlwnm 2, 3, 4, 0, 31 # encoding: [0x5c,0x62,0x20,0x3e]
3378# CHECK-LE: rlwnm 2, 3, 4, 0, 31 # encoding: [0x3e,0x20,0x62,0x5c]
3379 rotlw 2, 3, 4
3380# CHECK-BE: rlwnm. 2, 3, 4, 0, 31 # encoding: [0x5c,0x62,0x20,0x3f]
3381# CHECK-LE: rlwnm. 2, 3, 4, 0, 31 # encoding: [0x3f,0x20,0x62,0x5c]
3382 rotlw. 2, 3, 4
3383# CHECK-BE: slwi 2, 3, 4 # encoding: [0x54,0x62,0x20,0x36]
3384# CHECK-LE: slwi 2, 3, 4 # encoding: [0x36,0x20,0x62,0x54]
3385 slwi 2, 3, 4
3386# CHECK-BE: rlwinm. 2, 3, 4, 0, 27 # encoding: [0x54,0x62,0x20,0x37]
3387# CHECK-LE: rlwinm. 2, 3, 4, 0, 27 # encoding: [0x37,0x20,0x62,0x54]
3388 slwi. 2, 3, 4
3389# CHECK-BE: srwi 2, 3, 4 # encoding: [0x54,0x62,0xe1,0x3e]
3390# CHECK-LE: srwi 2, 3, 4 # encoding: [0x3e,0xe1,0x62,0x54]
3391 srwi 2, 3, 4
3392# CHECK-BE: rlwinm. 2, 3, 28, 4, 31 # encoding: [0x54,0x62,0xe1,0x3f]
3393# CHECK-LE: rlwinm. 2, 3, 28, 4, 31 # encoding: [0x3f,0xe1,0x62,0x54]
3394 srwi. 2, 3, 4
3395# CHECK-BE: rlwinm 2, 3, 0, 4, 31 # encoding: [0x54,0x62,0x01,0x3e]
3396# CHECK-LE: rlwinm 2, 3, 0, 4, 31 # encoding: [0x3e,0x01,0x62,0x54]
3397 clrlwi 2, 3, 4
3398# CHECK-BE: rlwinm. 2, 3, 0, 4, 31 # encoding: [0x54,0x62,0x01,0x3f]
3399# CHECK-LE: rlwinm. 2, 3, 0, 4, 31 # encoding: [0x3f,0x01,0x62,0x54]
3400 clrlwi. 2, 3, 4
3401# CHECK-BE: rlwinm 2, 3, 0, 0, 27 # encoding: [0x54,0x62,0x00,0x36]
3402# CHECK-LE: rlwinm 2, 3, 0, 0, 27 # encoding: [0x36,0x00,0x62,0x54]
3403 clrrwi 2, 3, 4
3404# CHECK-BE: rlwinm. 2, 3, 0, 0, 27 # encoding: [0x54,0x62,0x00,0x37]
3405# CHECK-LE: rlwinm. 2, 3, 0, 0, 27 # encoding: [0x37,0x00,0x62,0x54]
3406 clrrwi. 2, 3, 4
3407# CHECK-BE: rlwinm 2, 3, 4, 1, 27 # encoding: [0x54,0x62,0x20,0x76]
3408# CHECK-LE: rlwinm 2, 3, 4, 1, 27 # encoding: [0x76,0x20,0x62,0x54]
3409 clrlslwi 2, 3, 5, 4
3410# CHECK-BE: rlwinm. 2, 3, 4, 1, 27 # encoding: [0x54,0x62,0x20,0x77]
3411# CHECK-LE: rlwinm. 2, 3, 4, 1, 27 # encoding: [0x77,0x20,0x62,0x54]
3412 clrlslwi. 2, 3, 5, 4
Ulrich Weigandd8394902013-05-03 19:50:27 +00003413
3414# Move to/from special purpose register mnemonics
3415
Ulrich Weigandcae3a172014-03-24 18:16:09 +00003416# CHECK-BE: mtspr 1, 2 # encoding: [0x7c,0x41,0x03,0xa6]
3417# CHECK-LE: mtspr 1, 2 # encoding: [0xa6,0x03,0x41,0x7c]
3418 mtxer 2
3419# CHECK-BE: mfspr 2, 1 # encoding: [0x7c,0x41,0x02,0xa6]
3420# CHECK-LE: mfspr 2, 1 # encoding: [0xa6,0x02,0x41,0x7c]
3421 mfxer 2
Joerg Sonnenberger853feaa2014-08-07 13:16:58 +00003422# CHECK-BE: mfspr 2, 4 # encoding: [0x7c,0x44,0x02,0xa6]
3423# CHECK-LE: mfspr 2, 4 # encoding: [0xa6,0x02,0x44,0x7c]
3424 mfrtcu 2
3425# CHECK-BE: mfspr 2, 5 # encoding: [0x7c,0x45,0x02,0xa6]
3426# CHECK-LE: mfspr 2, 5 # encoding: [0xa6,0x02,0x45,0x7c]
3427 mfrtcl 2
Joerg Sonnenbergerb1ccf562014-07-29 18:55:43 +00003428# CHECK-BE: mtspr 17, 2 # encoding: [0x7c,0x51,0x03,0xa6]
3429# CHECK-LE: mtspr 17, 2 # encoding: [0xa6,0x03,0x51,0x7c]
3430 mtdscr 2
3431# CHECK-BE: mfspr 2, 17 # encoding: [0x7c,0x51,0x02,0xa6]
3432# CHECK-LE: mfspr 2, 17 # encoding: [0xa6,0x02,0x51,0x7c]
3433 mfdscr 2
3434# CHECK-BE: mtspr 18, 2 # encoding: [0x7c,0x52,0x03,0xa6]
3435# CHECK-LE: mtspr 18, 2 # encoding: [0xa6,0x03,0x52,0x7c]
Joerg Sonnenberger053566a2014-07-29 22:42:44 +00003436 mtdsisr 2
Joerg Sonnenbergerb1ccf562014-07-29 18:55:43 +00003437# CHECK-BE: mfspr 2, 18 # encoding: [0x7c,0x52,0x02,0xa6]
3438# CHECK-LE: mfspr 2, 18 # encoding: [0xa6,0x02,0x52,0x7c]
Joerg Sonnenberger053566a2014-07-29 22:42:44 +00003439 mfdsisr 2
Joerg Sonnenbergerb1ccf562014-07-29 18:55:43 +00003440# CHECK-BE: mtspr 19, 2 # encoding: [0x7c,0x53,0x03,0xa6]
3441# CHECK-LE: mtspr 19, 2 # encoding: [0xa6,0x03,0x53,0x7c]
3442 mtdar 2
3443# CHECK-BE: mfspr 2, 19 # encoding: [0x7c,0x53,0x02,0xa6]
3444# CHECK-LE: mfspr 2, 19 # encoding: [0xa6,0x02,0x53,0x7c]
3445 mfdar 2
3446# CHECK-BE: mtspr 22, 2 # encoding: [0x7c,0x56,0x03,0xa6]
3447# CHECK-LE: mtspr 22, 2 # encoding: [0xa6,0x03,0x56,0x7c]
3448 mtdec 2
3449# CHECK-BE: mfspr 2, 22 # encoding: [0x7c,0x56,0x02,0xa6]
3450# CHECK-LE: mfspr 2, 22 # encoding: [0xa6,0x02,0x56,0x7c]
3451 mfdec 2
3452# CHECK-BE: mtspr 25, 2 # encoding: [0x7c,0x59,0x03,0xa6]
3453# CHECK-LE: mtspr 25, 2 # encoding: [0xa6,0x03,0x59,0x7c]
3454 mtsdr1 2
3455# CHECK-BE: mfspr 2, 25 # encoding: [0x7c,0x59,0x02,0xa6]
3456# CHECK-LE: mfspr 2, 25 # encoding: [0xa6,0x02,0x59,0x7c]
3457 mfsdr1 2
3458# CHECK-BE: mtspr 26, 2 # encoding: [0x7c,0x5a,0x03,0xa6]
3459# CHECK-LE: mtspr 26, 2 # encoding: [0xa6,0x03,0x5a,0x7c]
3460 mtsrr0 2
3461# CHECK-BE: mfspr 2, 26 # encoding: [0x7c,0x5a,0x02,0xa6]
3462# CHECK-LE: mfspr 2, 26 # encoding: [0xa6,0x02,0x5a,0x7c]
3463 mfsrr0 2
3464# CHECK-BE: mtspr 27, 2 # encoding: [0x7c,0x5b,0x03,0xa6]
3465# CHECK-LE: mtspr 27, 2 # encoding: [0xa6,0x03,0x5b,0x7c]
3466 mtsrr1 2
3467# CHECK-BE: mfspr 2, 27 # encoding: [0x7c,0x5b,0x02,0xa6]
3468# CHECK-LE: mfspr 2, 27 # encoding: [0xa6,0x02,0x5b,0x7c]
3469 mfsrr1 2
3470# CHECK-BE: mtspr 28, 2 # encoding: [0x7c,0x5c,0x03,0xa6]
3471# CHECK-LE: mtspr 28, 2 # encoding: [0xa6,0x03,0x5c,0x7c]
3472 mtcfar 2
3473# CHECK-BE: mfspr 2, 28 # encoding: [0x7c,0x5c,0x02,0xa6]
3474# CHECK-LE: mfspr 2, 28 # encoding: [0xa6,0x02,0x5c,0x7c]
3475 mfcfar 2
3476# CHECK-BE: mtspr 29, 2 # encoding: [0x7c,0x5d,0x03,0xa6]
3477# CHECK-LE: mtspr 29, 2 # encoding: [0xa6,0x03,0x5d,0x7c]
3478 mtamr 2
3479# CHECK-BE: mfspr 2, 29 # encoding: [0x7c,0x5d,0x02,0xa6]
3480# CHECK-LE: mfspr 2, 29 # encoding: [0xa6,0x02,0x5d,0x7c]
3481 mfamr 2
Joerg Sonnenberger9e281bf2014-07-30 23:59:11 +00003482# CHECK-BE: mtspr 48, 2 # encoding: [0x7c,0x50,0x0b,0xa6]
3483# CHECK-LE: mtspr 48, 2 # encoding: [0xa6,0x0b,0x50,0x7c]
3484 mtpid 2
3485# CHECK-BE: mfspr 2, 48 # encoding: [0x7c,0x50,0x0a,0xa6]
3486# CHECK-LE: mfspr 2, 48 # encoding: [0xa6,0x0a,0x50,0x7c]
3487 mfpid 2
Ulrich Weigandcae3a172014-03-24 18:16:09 +00003488# CHECK-BE: mtlr 2 # encoding: [0x7c,0x48,0x03,0xa6]
3489# CHECK-LE: mtlr 2 # encoding: [0xa6,0x03,0x48,0x7c]
3490 mtlr 2
3491# CHECK-BE: mflr 2 # encoding: [0x7c,0x48,0x02,0xa6]
3492# CHECK-LE: mflr 2 # encoding: [0xa6,0x02,0x48,0x7c]
3493 mflr 2
3494# CHECK-BE: mtctr 2 # encoding: [0x7c,0x49,0x03,0xa6]
3495# CHECK-LE: mtctr 2 # encoding: [0xa6,0x03,0x49,0x7c]
3496 mtctr 2
3497# CHECK-BE: mfctr 2 # encoding: [0x7c,0x49,0x02,0xa6]
3498# CHECK-LE: mfctr 2 # encoding: [0xa6,0x02,0x49,0x7c]
3499 mfctr 2
Ulrich Weigandd8394902013-05-03 19:50:27 +00003500
3501# Miscellaneous mnemonics
3502
Ulrich Weigandcae3a172014-03-24 18:16:09 +00003503# CHECK-BE: nop # encoding: [0x60,0x00,0x00,0x00]
3504# CHECK-LE: nop # encoding: [0x00,0x00,0x00,0x60]
3505 nop
3506# CHECK-BE: xori 0, 0, 0 # encoding: [0x68,0x00,0x00,0x00]
3507# CHECK-LE: xori 0, 0, 0 # encoding: [0x00,0x00,0x00,0x68]
3508 xnop
3509# CHECK-BE: li 2, 128 # encoding: [0x38,0x40,0x00,0x80]
3510# CHECK-LE: li 2, 128 # encoding: [0x80,0x00,0x40,0x38]
3511 li 2, 128
3512# CHECK-BE: lis 2, 128 # encoding: [0x3c,0x40,0x00,0x80]
3513# CHECK-LE: lis 2, 128 # encoding: [0x80,0x00,0x40,0x3c]
3514 lis 2, 128
3515# CHECK-BE: la 2, 128(4)
3516# CHECK-LE: la 2, 128(4)
3517 la 2, 128(4)
3518# CHECK-BE: mr 2, 3 # encoding: [0x7c,0x62,0x1b,0x78]
3519# CHECK-LE: mr 2, 3 # encoding: [0x78,0x1b,0x62,0x7c]
3520 mr 2, 3
3521# CHECK-BE: or. 2, 3, 3 # encoding: [0x7c,0x62,0x1b,0x79]
3522# CHECK-LE: or. 2, 3, 3 # encoding: [0x79,0x1b,0x62,0x7c]
3523 mr. 2, 3
3524# CHECK-BE: nor 2, 3, 3 # encoding: [0x7c,0x62,0x18,0xf8]
3525# CHECK-LE: nor 2, 3, 3 # encoding: [0xf8,0x18,0x62,0x7c]
3526 not 2, 3
3527# CHECK-BE: nor. 2, 3, 3 # encoding: [0x7c,0x62,0x18,0xf9]
3528# CHECK-LE: nor. 2, 3, 3 # encoding: [0xf9,0x18,0x62,0x7c]
3529 not. 2, 3
3530# CHECK-BE: mtcrf 255, 2 # encoding: [0x7c,0x4f,0xf1,0x20]
3531# CHECK-LE: mtcrf 255, 2 # encoding: [0x20,0xf1,0x4f,0x7c]
3532 mtcr 2
Ulrich Weigandd8394902013-05-03 19:50:27 +00003533
Joerg Sonnenbergerdda8e782014-07-30 09:24:37 +00003534# CHECK-BE: mfspr 4, 272 # encoding: [0x7c,0x90,0x42,0xa6]
3535# CHECK-LE: mfspr 4, 272 # encoding: [0xa6,0x42,0x90,0x7c]
3536 mfsprg %r4, 0
3537
3538# CHECK-BE: mfspr 4, 273 # encoding: [0x7c,0x91,0x42,0xa6]
3539# CHECK-LE: mfspr 4, 273 # encoding: [0xa6,0x42,0x91,0x7c]
3540 mfsprg %r4, 1
3541
3542# CHECK-BE: mfspr 4, 274 # encoding: [0x7c,0x92,0x42,0xa6]
3543# CHECK-LE: mfspr 4, 274 # encoding: [0xa6,0x42,0x92,0x7c]
3544 mfsprg %r4, 2
3545
3546# CHECK-BE: mfspr 4, 275 # encoding: [0x7c,0x93,0x42,0xa6]
3547# CHECK-LE: mfspr 4, 275 # encoding: [0xa6,0x42,0x93,0x7c]
3548 mfsprg %r4, 3
3549
3550# CHECK-BE: mfspr 2, 272 # encoding: [0x7c,0x50,0x42,0xa6]
3551# CHECK-LE: mfspr 2, 272 # encoding: [0xa6,0x42,0x50,0x7c]
3552 mfsprg0 %r2
3553# CHECK-BE: mfspr 2, 273 # encoding: [0x7c,0x51,0x42,0xa6]
3554# CHECK-LE: mfspr 2, 273 # encoding: [0xa6,0x42,0x51,0x7c]
3555 mfsprg1 %r2
3556# CHECK-BE: mfspr 2, 274 # encoding: [0x7c,0x52,0x42,0xa6]
3557# CHECK-LE: mfspr 2, 274 # encoding: [0xa6,0x42,0x52,0x7c]
3558 mfsprg2 %r2
3559# CHECK-BE: mfspr 2, 275 # encoding: [0x7c,0x53,0x42,0xa6]
3560# CHECK-LE: mfspr 2, 275 # encoding: [0xa6,0x42,0x53,0x7c]
3561 mfsprg3 %r2
3562
3563# CHECK-BE: mtspr 272, 4 # encoding: [0x7c,0x90,0x43,0xa6]
3564# CHECK-LE: mtspr 272, 4 # encoding: [0xa6,0x43,0x90,0x7c]
3565 mtsprg 0, %r4
3566
3567# CHECK-BE: mtspr 273, 4 # encoding: [0x7c,0x91,0x43,0xa6]
3568# CHECK-LE: mtspr 273, 4 # encoding: [0xa6,0x43,0x91,0x7c]
3569 mtsprg 1, %r4
3570
3571# CHECK-BE: mtspr 274, 4 # encoding: [0x7c,0x92,0x43,0xa6]
3572# CHECK-LE: mtspr 274, 4 # encoding: [0xa6,0x43,0x92,0x7c]
3573 mtsprg 2, %r4
3574
3575# CHECK-BE: mtspr 275, 4 # encoding: [0x7c,0x93,0x43,0xa6]
3576# CHECK-LE: mtspr 275, 4 # encoding: [0xa6,0x43,0x93,0x7c]
3577 mtsprg 3, %r4
3578
3579# CHECK-BE: mtspr 272, 4 # encoding: [0x7c,0x90,0x43,0xa6]
3580# CHECK-LE: mtspr 272, 4 # encoding: [0xa6,0x43,0x90,0x7c]
3581 mtsprg0 %r4
3582
3583# CHECK-BE: mtspr 273, 4 # encoding: [0x7c,0x91,0x43,0xa6]
3584# CHECK-LE: mtspr 273, 4 # encoding: [0xa6,0x43,0x91,0x7c]
3585 mtsprg1 %r4
3586
3587# CHECK-BE: mtspr 274, 4 # encoding: [0x7c,0x92,0x43,0xa6]
3588# CHECK-LE: mtspr 274, 4 # encoding: [0xa6,0x43,0x92,0x7c]
3589 mtsprg2 %r4
3590
3591# CHECK-BE: mtspr 275, 4 # encoding: [0x7c,0x93,0x43,0xa6]
3592# CHECK-LE: mtspr 275, 4 # encoding: [0xa6,0x43,0x93,0x7c]
3593 mtsprg3 %r4
Joerg Sonnenberger68092872014-07-30 21:09:03 +00003594
Joerg Sonnenberger99ab5902014-08-02 15:09:41 +00003595# Altivec Data Stream instruction:
3596# CHECK-BE: dss 3 # encoding: [0x7c,0x60,0x06,0x6c]
3597# CHECK-LE: dss 3 # encoding: [0x6c,0x06,0x60,0x7c]
3598 dss 3
3599# CHECK-BE: dssall # encoding: [0x7e,0x00,0x06,0x6c]
3600# CHECK-LE: dssall # encoding: [0x6c,0x06,0x00,0x7e]
3601 dssall
3602# CHECK-BE: dst 12, 11, 3 # encoding: [0x7c,0x6c,0x5a,0xac]
3603# CHECK-LE: dst 12, 11, 3 # encoding: [0xac,0x5a,0x6c,0x7c]
3604 dst %r12, %r11, 3
3605# CHECK-BE: dstt 12, 11, 3 # encoding: [0x7e,0x6c,0x5a,0xac]
3606# CHECK-LE: dstt 12, 11, 3 # encoding: [0xac,0x5a,0x6c,0x7e]
3607 dstt %r12, %r11, 3
3608# CHECK-BE: dstst 12, 11, 3 # encoding: [0x7c,0x6c,0x5a,0xec]
3609# CHECK-LE: dstst 12, 11, 3 # encoding: [0xec,0x5a,0x6c,0x7c]
3610 dstst %r12, %r11, 3
3611# CHECK-BE: dststt 12, 11, 3 # encoding: [0x7e,0x6c,0x5a,0xec]
3612# CHECK-LE: dststt 12, 11, 3 # encoding: [0xec,0x5a,0x6c,0x7e]
3613 dststt %r12, %r11, 3
Joerg Sonnenbergere8a167c2014-08-02 20:00:26 +00003614
Joerg Sonnenbergerc03105b2014-08-02 20:16:29 +00003615# CHECK-BE: tlbia # encoding: [0x7c,0x00,0x02,0xe4]
3616# CHECK-LE: tlbia # encoding: [0xe4,0x02,0x00,0x7c]
3617 tlbia
Joerg Sonnenberger9dedceb2014-08-05 13:34:01 +00003618
3619# CHECK-BE: lswi 8, 6, 7 # encoding: [0x7d,0x06,0x3c,0xaa]
3620# CHECK-LE: lswi 8, 6, 7 # encoding: [0xaa,0x3c,0x06,0x7d]
3621 lswi %r8, %r6, 7
3622# CHECK-BE: stswi 8, 6, 7 # encoding: [0x7d,0x06,0x3d,0xaa]
3623# CHECK-LE: stswi 8, 6, 7 # encoding: [0xaa,0x3d,0x06,0x7d]
3624 stswi %r8, %r6, 7
Joerg Sonnenbergera3d4dc92014-08-07 12:39:59 +00003625
3626# CHECK-BE: rfid # encoding: [0x4c,0x00,0x00,0x24]
3627# CHECK-LE: rfid # encoding: [0x24,0x00,0x00,0x4c]
3628 rfid
Joerg Sonnenberger84d35df2014-08-07 13:35:34 +00003629
3630# CHECK-BE: mfspr 2, 280 # encoding: [0x7c,0x58,0x42,0xa6]
3631# CHECK-LE: mfspr 2, 280 # encoding: [0xa6,0x42,0x58,0x7c]
3632 mfasr 2
3633# CHECK-BE: mtspr 280, 2 # encoding: [0x7c,0x58,0x43,0xa6]
3634# CHECK-LE: mtspr 280, 2 # encoding: [0xa6,0x43,0x58,0x7c]
3635 mtasr 2