• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
1PPC integer arith insns with two args:
2         add 00000000, 00000000 => 00000000 (00000000 00000000)
3         add 00000000, 000f423f => 000f423f (00000000 00000000)
4         add 00000000, ffffffff => ffffffff (00000000 00000000)
5         add 000f423f, 00000000 => 000f423f (00000000 00000000)
6         add 000f423f, 000f423f => 001e847e (00000000 00000000)
7         add 000f423f, ffffffff => 000f423e (00000000 00000000)
8         add ffffffff, 00000000 => ffffffff (00000000 00000000)
9         add ffffffff, 000f423f => 000f423e (00000000 00000000)
10         add ffffffff, ffffffff => fffffffe (00000000 00000000)
11
12        addo 00000000, 00000000 => 00000000 (00000000 00000000)
13        addo 00000000, 000f423f => 000f423f (00000000 00000000)
14        addo 00000000, ffffffff => ffffffff (00000000 00000000)
15        addo 000f423f, 00000000 => 000f423f (00000000 00000000)
16        addo 000f423f, 000f423f => 001e847e (00000000 00000000)
17        addo 000f423f, ffffffff => 000f423e (00000000 00000000)
18        addo ffffffff, 00000000 => ffffffff (00000000 00000000)
19        addo ffffffff, 000f423f => 000f423e (00000000 00000000)
20        addo ffffffff, ffffffff => fffffffe (00000000 00000000)
21
22        addc 00000000, 00000000 => 00000000 (00000000 00000000)
23        addc 00000000, 000f423f => 000f423f (00000000 00000000)
24        addc 00000000, ffffffff => ffffffff (00000000 00000000)
25        addc 000f423f, 00000000 => 000f423f (00000000 00000000)
26        addc 000f423f, 000f423f => 001e847e (00000000 00000000)
27        addc 000f423f, ffffffff => 000f423e (00000000 20000000)
28        addc ffffffff, 00000000 => ffffffff (00000000 00000000)
29        addc ffffffff, 000f423f => 000f423e (00000000 20000000)
30        addc ffffffff, ffffffff => fffffffe (00000000 20000000)
31
32       addco 00000000, 00000000 => 00000000 (00000000 00000000)
33       addco 00000000, 000f423f => 000f423f (00000000 00000000)
34       addco 00000000, ffffffff => ffffffff (00000000 00000000)
35       addco 000f423f, 00000000 => 000f423f (00000000 00000000)
36       addco 000f423f, 000f423f => 001e847e (00000000 00000000)
37       addco 000f423f, ffffffff => 000f423e (00000000 20000000)
38       addco ffffffff, 00000000 => ffffffff (00000000 00000000)
39       addco ffffffff, 000f423f => 000f423e (00000000 20000000)
40       addco ffffffff, ffffffff => fffffffe (00000000 20000000)
41
42        divw 00000000, 000f423f => 00000000 (00000000 00000000)
43        divw 00000000, ffffffff => 00000000 (00000000 00000000)
44        divw 000f423f, 000f423f => 00000001 (00000000 00000000)
45        divw 000f423f, ffffffff => fff0bdc1 (00000000 00000000)
46        divw ffffffff, 000f423f => 00000000 (00000000 00000000)
47        divw ffffffff, ffffffff => 00000001 (00000000 00000000)
48
49       divwo 00000000, 000f423f => 00000000 (00000000 00000000)
50       divwo 00000000, ffffffff => 00000000 (00000000 00000000)
51       divwo 000f423f, 000f423f => 00000001 (00000000 00000000)
52       divwo 000f423f, ffffffff => fff0bdc1 (00000000 00000000)
53       divwo ffffffff, 000f423f => 00000000 (00000000 00000000)
54       divwo ffffffff, ffffffff => 00000001 (00000000 00000000)
55
56       divwu 00000000, 000f423f => 00000000 (00000000 00000000)
57       divwu 00000000, ffffffff => 00000000 (00000000 00000000)
58       divwu 000f423f, 000f423f => 00000001 (00000000 00000000)
59       divwu 000f423f, ffffffff => 00000000 (00000000 00000000)
60       divwu ffffffff, 000f423f => 000010c6 (00000000 00000000)
61       divwu ffffffff, ffffffff => 00000001 (00000000 00000000)
62
63      divwuo 00000000, 000f423f => 00000000 (00000000 00000000)
64      divwuo 00000000, ffffffff => 00000000 (00000000 00000000)
65      divwuo 000f423f, 000f423f => 00000001 (00000000 00000000)
66      divwuo 000f423f, ffffffff => 00000000 (00000000 00000000)
67      divwuo ffffffff, 000f423f => 000010c6 (00000000 00000000)
68      divwuo ffffffff, ffffffff => 00000001 (00000000 00000000)
69
70       mulhw 00000000, 00000000 => 00000000 (00000000 00000000)
71       mulhw 00000000, 000f423f => 00000000 (00000000 00000000)
72       mulhw 00000000, ffffffff => 00000000 (00000000 00000000)
73       mulhw 000f423f, 00000000 => 00000000 (00000000 00000000)
74       mulhw 000f423f, 000f423f => 000000e8 (00000000 00000000)
75       mulhw 000f423f, ffffffff => ffffffff (00000000 00000000)
76       mulhw ffffffff, 00000000 => 00000000 (00000000 00000000)
77       mulhw ffffffff, 000f423f => ffffffff (00000000 00000000)
78       mulhw ffffffff, ffffffff => 00000000 (00000000 00000000)
79
80      mulhwu 00000000, 00000000 => 00000000 (00000000 00000000)
81      mulhwu 00000000, 000f423f => 00000000 (00000000 00000000)
82      mulhwu 00000000, ffffffff => 00000000 (00000000 00000000)
83      mulhwu 000f423f, 00000000 => 00000000 (00000000 00000000)
84      mulhwu 000f423f, 000f423f => 000000e8 (00000000 00000000)
85      mulhwu 000f423f, ffffffff => 000f423e (00000000 00000000)
86      mulhwu ffffffff, 00000000 => 00000000 (00000000 00000000)
87      mulhwu ffffffff, 000f423f => 000f423e (00000000 00000000)
88      mulhwu ffffffff, ffffffff => fffffffe (00000000 00000000)
89
90       mullw 00000000, 00000000 => 00000000 (00000000 00000000)
91       mullw 00000000, 000f423f => 00000000 (00000000 00000000)
92       mullw 00000000, ffffffff => 00000000 (00000000 00000000)
93       mullw 000f423f, 00000000 => 00000000 (00000000 00000000)
94       mullw 000f423f, 000f423f => d4868b81 (00000000 00000000)
95       mullw 000f423f, ffffffff => fff0bdc1 (00000000 00000000)
96       mullw ffffffff, 00000000 => 00000000 (00000000 00000000)
97       mullw ffffffff, 000f423f => fff0bdc1 (00000000 00000000)
98       mullw ffffffff, ffffffff => 00000001 (00000000 00000000)
99
100      mullwo 00000000, 00000000 => 00000000 (00000000 00000000)
101      mullwo 00000000, 000f423f => 00000000 (00000000 00000000)
102      mullwo 00000000, ffffffff => 00000000 (00000000 00000000)
103      mullwo 000f423f, 00000000 => 00000000 (00000000 00000000)
104      mullwo 000f423f, 000f423f => d4868b81 (00000000 c0000000)
105      mullwo 000f423f, ffffffff => fff0bdc1 (00000000 00000000)
106      mullwo ffffffff, 00000000 => 00000000 (00000000 00000000)
107      mullwo ffffffff, 000f423f => fff0bdc1 (00000000 00000000)
108      mullwo ffffffff, ffffffff => 00000001 (00000000 00000000)
109
110        subf 00000000, 00000000 => 00000000 (00000000 00000000)
111        subf 00000000, 000f423f => 000f423f (00000000 00000000)
112        subf 00000000, ffffffff => ffffffff (00000000 00000000)
113        subf 000f423f, 00000000 => fff0bdc1 (00000000 00000000)
114        subf 000f423f, 000f423f => 00000000 (00000000 00000000)
115        subf 000f423f, ffffffff => fff0bdc0 (00000000 00000000)
116        subf ffffffff, 00000000 => 00000001 (00000000 00000000)
117        subf ffffffff, 000f423f => 000f4240 (00000000 00000000)
118        subf ffffffff, ffffffff => 00000000 (00000000 00000000)
119
120       subfo 00000000, 00000000 => 00000000 (00000000 00000000)
121       subfo 00000000, 000f423f => 000f423f (00000000 00000000)
122       subfo 00000000, ffffffff => ffffffff (00000000 00000000)
123       subfo 000f423f, 00000000 => fff0bdc1 (00000000 00000000)
124       subfo 000f423f, 000f423f => 00000000 (00000000 00000000)
125       subfo 000f423f, ffffffff => fff0bdc0 (00000000 00000000)
126       subfo ffffffff, 00000000 => 00000001 (00000000 00000000)
127       subfo ffffffff, 000f423f => 000f4240 (00000000 00000000)
128       subfo ffffffff, ffffffff => 00000000 (00000000 00000000)
129
130       subfc 00000000, 00000000 => 00000000 (00000000 20000000)
131       subfc 00000000, 000f423f => 000f423f (00000000 20000000)
132       subfc 00000000, ffffffff => ffffffff (00000000 20000000)
133       subfc 000f423f, 00000000 => fff0bdc1 (00000000 00000000)
134       subfc 000f423f, 000f423f => 00000000 (00000000 20000000)
135       subfc 000f423f, ffffffff => fff0bdc0 (00000000 20000000)
136       subfc ffffffff, 00000000 => 00000001 (00000000 00000000)
137       subfc ffffffff, 000f423f => 000f4240 (00000000 00000000)
138       subfc ffffffff, ffffffff => 00000000 (00000000 20000000)
139
140      subfco 00000000, 00000000 => 00000000 (00000000 20000000)
141      subfco 00000000, 000f423f => 000f423f (00000000 20000000)
142      subfco 00000000, ffffffff => ffffffff (00000000 20000000)
143      subfco 000f423f, 00000000 => fff0bdc1 (00000000 00000000)
144      subfco 000f423f, 000f423f => 00000000 (00000000 20000000)
145      subfco 000f423f, ffffffff => fff0bdc0 (00000000 20000000)
146      subfco ffffffff, 00000000 => 00000001 (00000000 00000000)
147      subfco ffffffff, 000f423f => 000f4240 (00000000 00000000)
148      subfco ffffffff, ffffffff => 00000000 (00000000 20000000)
149
150PPC integer arith insns with two args with flags update:
151        add. 00000000, 00000000 => 00000000 (20000000 00000000)
152        add. 00000000, 000f423f => 000f423f (40000000 00000000)
153        add. 00000000, ffffffff => ffffffff (80000000 00000000)
154        add. 000f423f, 00000000 => 000f423f (40000000 00000000)
155        add. 000f423f, 000f423f => 001e847e (40000000 00000000)
156        add. 000f423f, ffffffff => 000f423e (40000000 00000000)
157        add. ffffffff, 00000000 => ffffffff (80000000 00000000)
158        add. ffffffff, 000f423f => 000f423e (40000000 00000000)
159        add. ffffffff, ffffffff => fffffffe (80000000 00000000)
160
161       addo. 00000000, 00000000 => 00000000 (20000000 00000000)
162       addo. 00000000, 000f423f => 000f423f (40000000 00000000)
163       addo. 00000000, ffffffff => ffffffff (80000000 00000000)
164       addo. 000f423f, 00000000 => 000f423f (40000000 00000000)
165       addo. 000f423f, 000f423f => 001e847e (40000000 00000000)
166       addo. 000f423f, ffffffff => 000f423e (40000000 00000000)
167       addo. ffffffff, 00000000 => ffffffff (80000000 00000000)
168       addo. ffffffff, 000f423f => 000f423e (40000000 00000000)
169       addo. ffffffff, ffffffff => fffffffe (80000000 00000000)
170
171       addc. 00000000, 00000000 => 00000000 (20000000 00000000)
172       addc. 00000000, 000f423f => 000f423f (40000000 00000000)
173       addc. 00000000, ffffffff => ffffffff (80000000 00000000)
174       addc. 000f423f, 00000000 => 000f423f (40000000 00000000)
175       addc. 000f423f, 000f423f => 001e847e (40000000 00000000)
176       addc. 000f423f, ffffffff => 000f423e (40000000 20000000)
177       addc. ffffffff, 00000000 => ffffffff (80000000 00000000)
178       addc. ffffffff, 000f423f => 000f423e (40000000 20000000)
179       addc. ffffffff, ffffffff => fffffffe (80000000 20000000)
180
181      addco. 00000000, 00000000 => 00000000 (20000000 00000000)
182      addco. 00000000, 000f423f => 000f423f (40000000 00000000)
183      addco. 00000000, ffffffff => ffffffff (80000000 00000000)
184      addco. 000f423f, 00000000 => 000f423f (40000000 00000000)
185      addco. 000f423f, 000f423f => 001e847e (40000000 00000000)
186      addco. 000f423f, ffffffff => 000f423e (40000000 20000000)
187      addco. ffffffff, 00000000 => ffffffff (80000000 00000000)
188      addco. ffffffff, 000f423f => 000f423e (40000000 20000000)
189      addco. ffffffff, ffffffff => fffffffe (80000000 20000000)
190
191       divw. 00000000, 000f423f => 00000000 (20000000 00000000)
192       divw. 00000000, ffffffff => 00000000 (20000000 00000000)
193       divw. 000f423f, 000f423f => 00000001 (40000000 00000000)
194       divw. 000f423f, ffffffff => fff0bdc1 (80000000 00000000)
195       divw. ffffffff, 000f423f => 00000000 (20000000 00000000)
196       divw. ffffffff, ffffffff => 00000001 (40000000 00000000)
197
198      divwo. 00000000, 000f423f => 00000000 (20000000 00000000)
199      divwo. 00000000, ffffffff => 00000000 (20000000 00000000)
200      divwo. 000f423f, 000f423f => 00000001 (40000000 00000000)
201      divwo. 000f423f, ffffffff => fff0bdc1 (80000000 00000000)
202      divwo. ffffffff, 000f423f => 00000000 (20000000 00000000)
203      divwo. ffffffff, ffffffff => 00000001 (40000000 00000000)
204
205      divwu. 00000000, 000f423f => 00000000 (20000000 00000000)
206      divwu. 00000000, ffffffff => 00000000 (20000000 00000000)
207      divwu. 000f423f, 000f423f => 00000001 (40000000 00000000)
208      divwu. 000f423f, ffffffff => 00000000 (20000000 00000000)
209      divwu. ffffffff, 000f423f => 000010c6 (40000000 00000000)
210      divwu. ffffffff, ffffffff => 00000001 (40000000 00000000)
211
212     divwuo. 00000000, 000f423f => 00000000 (20000000 00000000)
213     divwuo. 00000000, ffffffff => 00000000 (20000000 00000000)
214     divwuo. 000f423f, 000f423f => 00000001 (40000000 00000000)
215     divwuo. 000f423f, ffffffff => 00000000 (20000000 00000000)
216     divwuo. ffffffff, 000f423f => 000010c6 (40000000 00000000)
217     divwuo. ffffffff, ffffffff => 00000001 (40000000 00000000)
218
219      mulhw. 00000000, 00000000 => 00000000 (20000000 00000000)
220      mulhw. 00000000, 000f423f => 00000000 (20000000 00000000)
221      mulhw. 00000000, ffffffff => 00000000 (20000000 00000000)
222      mulhw. 000f423f, 00000000 => 00000000 (20000000 00000000)
223      mulhw. 000f423f, 000f423f => 000000e8 (40000000 00000000)
224      mulhw. 000f423f, ffffffff => ffffffff (80000000 00000000)
225      mulhw. ffffffff, 00000000 => 00000000 (20000000 00000000)
226      mulhw. ffffffff, 000f423f => ffffffff (80000000 00000000)
227      mulhw. ffffffff, ffffffff => 00000000 (20000000 00000000)
228
229     mulhwu. 00000000, 00000000 => 00000000 (20000000 00000000)
230     mulhwu. 00000000, 000f423f => 00000000 (20000000 00000000)
231     mulhwu. 00000000, ffffffff => 00000000 (20000000 00000000)
232     mulhwu. 000f423f, 00000000 => 00000000 (20000000 00000000)
233     mulhwu. 000f423f, 000f423f => 000000e8 (40000000 00000000)
234     mulhwu. 000f423f, ffffffff => 000f423e (40000000 00000000)
235     mulhwu. ffffffff, 00000000 => 00000000 (20000000 00000000)
236     mulhwu. ffffffff, 000f423f => 000f423e (40000000 00000000)
237     mulhwu. ffffffff, ffffffff => fffffffe (80000000 00000000)
238
239      mullw. 00000000, 00000000 => 00000000 (20000000 00000000)
240      mullw. 00000000, 000f423f => 00000000 (20000000 00000000)
241      mullw. 00000000, ffffffff => 00000000 (20000000 00000000)
242      mullw. 000f423f, 00000000 => 00000000 (20000000 00000000)
243      mullw. 000f423f, 000f423f => d4868b81 (80000000 00000000)
244      mullw. 000f423f, ffffffff => fff0bdc1 (80000000 00000000)
245      mullw. ffffffff, 00000000 => 00000000 (20000000 00000000)
246      mullw. ffffffff, 000f423f => fff0bdc1 (80000000 00000000)
247      mullw. ffffffff, ffffffff => 00000001 (40000000 00000000)
248
249     mullwo. 00000000, 00000000 => 00000000 (20000000 00000000)
250     mullwo. 00000000, 000f423f => 00000000 (20000000 00000000)
251     mullwo. 00000000, ffffffff => 00000000 (20000000 00000000)
252     mullwo. 000f423f, 00000000 => 00000000 (20000000 00000000)
253     mullwo. 000f423f, 000f423f => d4868b81 (90000000 c0000000)
254     mullwo. 000f423f, ffffffff => fff0bdc1 (80000000 00000000)
255     mullwo. ffffffff, 00000000 => 00000000 (20000000 00000000)
256     mullwo. ffffffff, 000f423f => fff0bdc1 (80000000 00000000)
257     mullwo. ffffffff, ffffffff => 00000001 (40000000 00000000)
258
259       subf. 00000000, 00000000 => 00000000 (20000000 00000000)
260       subf. 00000000, 000f423f => 000f423f (40000000 00000000)
261       subf. 00000000, ffffffff => ffffffff (80000000 00000000)
262       subf. 000f423f, 00000000 => fff0bdc1 (80000000 00000000)
263       subf. 000f423f, 000f423f => 00000000 (20000000 00000000)
264       subf. 000f423f, ffffffff => fff0bdc0 (80000000 00000000)
265       subf. ffffffff, 00000000 => 00000001 (40000000 00000000)
266       subf. ffffffff, 000f423f => 000f4240 (40000000 00000000)
267       subf. ffffffff, ffffffff => 00000000 (20000000 00000000)
268
269      subfo. 00000000, 00000000 => 00000000 (20000000 00000000)
270      subfo. 00000000, 000f423f => 000f423f (40000000 00000000)
271      subfo. 00000000, ffffffff => ffffffff (80000000 00000000)
272      subfo. 000f423f, 00000000 => fff0bdc1 (80000000 00000000)
273      subfo. 000f423f, 000f423f => 00000000 (20000000 00000000)
274      subfo. 000f423f, ffffffff => fff0bdc0 (80000000 00000000)
275      subfo. ffffffff, 00000000 => 00000001 (40000000 00000000)
276      subfo. ffffffff, 000f423f => 000f4240 (40000000 00000000)
277      subfo. ffffffff, ffffffff => 00000000 (20000000 00000000)
278
279      subfc. 00000000, 00000000 => 00000000 (20000000 20000000)
280      subfc. 00000000, 000f423f => 000f423f (40000000 20000000)
281      subfc. 00000000, ffffffff => ffffffff (80000000 20000000)
282      subfc. 000f423f, 00000000 => fff0bdc1 (80000000 00000000)
283      subfc. 000f423f, 000f423f => 00000000 (20000000 20000000)
284      subfc. 000f423f, ffffffff => fff0bdc0 (80000000 20000000)
285      subfc. ffffffff, 00000000 => 00000001 (40000000 00000000)
286      subfc. ffffffff, 000f423f => 000f4240 (40000000 00000000)
287      subfc. ffffffff, ffffffff => 00000000 (20000000 20000000)
288
289     subfco. 00000000, 00000000 => 00000000 (20000000 20000000)
290     subfco. 00000000, 000f423f => 000f423f (40000000 20000000)
291     subfco. 00000000, ffffffff => ffffffff (80000000 20000000)
292     subfco. 000f423f, 00000000 => fff0bdc1 (80000000 00000000)
293     subfco. 000f423f, 000f423f => 00000000 (20000000 20000000)
294     subfco. 000f423f, ffffffff => fff0bdc0 (80000000 20000000)
295     subfco. ffffffff, 00000000 => 00000001 (40000000 00000000)
296     subfco. ffffffff, 000f423f => 000f4240 (40000000 00000000)
297     subfco. ffffffff, ffffffff => 00000000 (20000000 20000000)
298
299PPC integer arith insns with two args and carry:
300        adde 00000000, 00000000 => 00000000 (00000000 00000000)
301        adde 00000000, 000f423f => 000f423f (00000000 00000000)
302        adde 00000000, ffffffff => ffffffff (00000000 00000000)
303        adde 000f423f, 00000000 => 000f423f (00000000 00000000)
304        adde 000f423f, 000f423f => 001e847e (00000000 00000000)
305        adde 000f423f, ffffffff => 000f423e (00000000 20000000)
306        adde ffffffff, 00000000 => ffffffff (00000000 00000000)
307        adde ffffffff, 000f423f => 000f423e (00000000 20000000)
308        adde ffffffff, ffffffff => fffffffe (00000000 20000000)
309        adde 00000000, 00000000 => 00000001 (00000000 00000000)
310        adde 00000000, 000f423f => 000f4240 (00000000 00000000)
311        adde 00000000, ffffffff => 00000000 (00000000 20000000)
312        adde 000f423f, 00000000 => 000f4240 (00000000 00000000)
313        adde 000f423f, 000f423f => 001e847f (00000000 00000000)
314        adde 000f423f, ffffffff => 000f423f (00000000 20000000)
315        adde ffffffff, 00000000 => 00000000 (00000000 20000000)
316        adde ffffffff, 000f423f => 000f423f (00000000 20000000)
317        adde ffffffff, ffffffff => ffffffff (00000000 20000000)
318
319       addeo 00000000, 00000000 => 00000000 (00000000 00000000)
320       addeo 00000000, 000f423f => 000f423f (00000000 00000000)
321       addeo 00000000, ffffffff => ffffffff (00000000 00000000)
322       addeo 000f423f, 00000000 => 000f423f (00000000 00000000)
323       addeo 000f423f, 000f423f => 001e847e (00000000 00000000)
324       addeo 000f423f, ffffffff => 000f423e (00000000 20000000)
325       addeo ffffffff, 00000000 => ffffffff (00000000 00000000)
326       addeo ffffffff, 000f423f => 000f423e (00000000 20000000)
327       addeo ffffffff, ffffffff => fffffffe (00000000 20000000)
328       addeo 00000000, 00000000 => 00000001 (00000000 00000000)
329       addeo 00000000, 000f423f => 000f4240 (00000000 00000000)
330       addeo 00000000, ffffffff => 00000000 (00000000 20000000)
331       addeo 000f423f, 00000000 => 000f4240 (00000000 00000000)
332       addeo 000f423f, 000f423f => 001e847f (00000000 00000000)
333       addeo 000f423f, ffffffff => 000f423f (00000000 20000000)
334       addeo ffffffff, 00000000 => 00000000 (00000000 20000000)
335       addeo ffffffff, 000f423f => 000f423f (00000000 20000000)
336       addeo ffffffff, ffffffff => ffffffff (00000000 20000000)
337
338       subfe 00000000, 00000000 => ffffffff (00000000 00000000)
339       subfe 00000000, 000f423f => 000f423e (00000000 20000000)
340       subfe 00000000, ffffffff => fffffffe (00000000 20000000)
341       subfe 000f423f, 00000000 => fff0bdc0 (00000000 00000000)
342       subfe 000f423f, 000f423f => ffffffff (00000000 00000000)
343       subfe 000f423f, ffffffff => fff0bdbf (00000000 20000000)
344       subfe ffffffff, 00000000 => 00000000 (00000000 00000000)
345       subfe ffffffff, 000f423f => 000f423f (00000000 00000000)
346       subfe ffffffff, ffffffff => ffffffff (00000000 00000000)
347       subfe 00000000, 00000000 => 00000000 (00000000 20000000)
348       subfe 00000000, 000f423f => 000f423f (00000000 20000000)
349       subfe 00000000, ffffffff => ffffffff (00000000 20000000)
350       subfe 000f423f, 00000000 => fff0bdc1 (00000000 00000000)
351       subfe 000f423f, 000f423f => 00000000 (00000000 20000000)
352       subfe 000f423f, ffffffff => fff0bdc0 (00000000 20000000)
353       subfe ffffffff, 00000000 => 00000001 (00000000 00000000)
354       subfe ffffffff, 000f423f => 000f4240 (00000000 00000000)
355       subfe ffffffff, ffffffff => 00000000 (00000000 20000000)
356
357      subfeo 00000000, 00000000 => ffffffff (00000000 00000000)
358      subfeo 00000000, 000f423f => 000f423e (00000000 20000000)
359      subfeo 00000000, ffffffff => fffffffe (00000000 20000000)
360      subfeo 000f423f, 00000000 => fff0bdc0 (00000000 00000000)
361      subfeo 000f423f, 000f423f => ffffffff (00000000 00000000)
362      subfeo 000f423f, ffffffff => fff0bdbf (00000000 20000000)
363      subfeo ffffffff, 00000000 => 00000000 (00000000 00000000)
364      subfeo ffffffff, 000f423f => 000f423f (00000000 00000000)
365      subfeo ffffffff, ffffffff => ffffffff (00000000 00000000)
366      subfeo 00000000, 00000000 => 00000000 (00000000 20000000)
367      subfeo 00000000, 000f423f => 000f423f (00000000 20000000)
368      subfeo 00000000, ffffffff => ffffffff (00000000 20000000)
369      subfeo 000f423f, 00000000 => fff0bdc1 (00000000 00000000)
370      subfeo 000f423f, 000f423f => 00000000 (00000000 20000000)
371      subfeo 000f423f, ffffffff => fff0bdc0 (00000000 20000000)
372      subfeo ffffffff, 00000000 => 00000001 (00000000 00000000)
373      subfeo ffffffff, 000f423f => 000f4240 (00000000 00000000)
374      subfeo ffffffff, ffffffff => 00000000 (00000000 20000000)
375
376PPC integer arith insns with two args and carry with flags update:
377       adde. 00000000, 00000000 => 00000000 (20000000 00000000)
378       adde. 00000000, 000f423f => 000f423f (40000000 00000000)
379       adde. 00000000, ffffffff => ffffffff (80000000 00000000)
380       adde. 000f423f, 00000000 => 000f423f (40000000 00000000)
381       adde. 000f423f, 000f423f => 001e847e (40000000 00000000)
382       adde. 000f423f, ffffffff => 000f423e (40000000 20000000)
383       adde. ffffffff, 00000000 => ffffffff (80000000 00000000)
384       adde. ffffffff, 000f423f => 000f423e (40000000 20000000)
385       adde. ffffffff, ffffffff => fffffffe (80000000 20000000)
386       adde. 00000000, 00000000 => 00000001 (40000000 00000000)
387       adde. 00000000, 000f423f => 000f4240 (40000000 00000000)
388       adde. 00000000, ffffffff => 00000000 (20000000 20000000)
389       adde. 000f423f, 00000000 => 000f4240 (40000000 00000000)
390       adde. 000f423f, 000f423f => 001e847f (40000000 00000000)
391       adde. 000f423f, ffffffff => 000f423f (40000000 20000000)
392       adde. ffffffff, 00000000 => 00000000 (20000000 20000000)
393       adde. ffffffff, 000f423f => 000f423f (40000000 20000000)
394       adde. ffffffff, ffffffff => ffffffff (80000000 20000000)
395
396      addeo. 00000000, 00000000 => 00000000 (20000000 00000000)
397      addeo. 00000000, 000f423f => 000f423f (40000000 00000000)
398      addeo. 00000000, ffffffff => ffffffff (80000000 00000000)
399      addeo. 000f423f, 00000000 => 000f423f (40000000 00000000)
400      addeo. 000f423f, 000f423f => 001e847e (40000000 00000000)
401      addeo. 000f423f, ffffffff => 000f423e (40000000 20000000)
402      addeo. ffffffff, 00000000 => ffffffff (80000000 00000000)
403      addeo. ffffffff, 000f423f => 000f423e (40000000 20000000)
404      addeo. ffffffff, ffffffff => fffffffe (80000000 20000000)
405      addeo. 00000000, 00000000 => 00000001 (40000000 00000000)
406      addeo. 00000000, 000f423f => 000f4240 (40000000 00000000)
407      addeo. 00000000, ffffffff => 00000000 (20000000 20000000)
408      addeo. 000f423f, 00000000 => 000f4240 (40000000 00000000)
409      addeo. 000f423f, 000f423f => 001e847f (40000000 00000000)
410      addeo. 000f423f, ffffffff => 000f423f (40000000 20000000)
411      addeo. ffffffff, 00000000 => 00000000 (20000000 20000000)
412      addeo. ffffffff, 000f423f => 000f423f (40000000 20000000)
413      addeo. ffffffff, ffffffff => ffffffff (80000000 20000000)
414
415      subfe. 00000000, 00000000 => ffffffff (80000000 00000000)
416      subfe. 00000000, 000f423f => 000f423e (40000000 20000000)
417      subfe. 00000000, ffffffff => fffffffe (80000000 20000000)
418      subfe. 000f423f, 00000000 => fff0bdc0 (80000000 00000000)
419      subfe. 000f423f, 000f423f => ffffffff (80000000 00000000)
420      subfe. 000f423f, ffffffff => fff0bdbf (80000000 20000000)
421      subfe. ffffffff, 00000000 => 00000000 (20000000 00000000)
422      subfe. ffffffff, 000f423f => 000f423f (40000000 00000000)
423      subfe. ffffffff, ffffffff => ffffffff (80000000 00000000)
424      subfe. 00000000, 00000000 => 00000000 (20000000 20000000)
425      subfe. 00000000, 000f423f => 000f423f (40000000 20000000)
426      subfe. 00000000, ffffffff => ffffffff (80000000 20000000)
427      subfe. 000f423f, 00000000 => fff0bdc1 (80000000 00000000)
428      subfe. 000f423f, 000f423f => 00000000 (20000000 20000000)
429      subfe. 000f423f, ffffffff => fff0bdc0 (80000000 20000000)
430      subfe. ffffffff, 00000000 => 00000001 (40000000 00000000)
431      subfe. ffffffff, 000f423f => 000f4240 (40000000 00000000)
432      subfe. ffffffff, ffffffff => 00000000 (20000000 20000000)
433
434     subfeo. 00000000, 00000000 => ffffffff (80000000 00000000)
435     subfeo. 00000000, 000f423f => 000f423e (40000000 20000000)
436     subfeo. 00000000, ffffffff => fffffffe (80000000 20000000)
437     subfeo. 000f423f, 00000000 => fff0bdc0 (80000000 00000000)
438     subfeo. 000f423f, 000f423f => ffffffff (80000000 00000000)
439     subfeo. 000f423f, ffffffff => fff0bdbf (80000000 20000000)
440     subfeo. ffffffff, 00000000 => 00000000 (20000000 00000000)
441     subfeo. ffffffff, 000f423f => 000f423f (40000000 00000000)
442     subfeo. ffffffff, ffffffff => ffffffff (80000000 00000000)
443     subfeo. 00000000, 00000000 => 00000000 (20000000 20000000)
444     subfeo. 00000000, 000f423f => 000f423f (40000000 20000000)
445     subfeo. 00000000, ffffffff => ffffffff (80000000 20000000)
446     subfeo. 000f423f, 00000000 => fff0bdc1 (80000000 00000000)
447     subfeo. 000f423f, 000f423f => 00000000 (20000000 20000000)
448     subfeo. 000f423f, ffffffff => fff0bdc0 (80000000 20000000)
449     subfeo. ffffffff, 00000000 => 00000001 (40000000 00000000)
450     subfeo. ffffffff, 000f423f => 000f4240 (40000000 00000000)
451     subfeo. ffffffff, ffffffff => 00000000 (20000000 20000000)
452
453PPC integer logical insns with two args:
454         and 00000000, 00000000 => 00000000 (00000000 00000000)
455         and 00000000, 000f423f => 00000000 (00000000 00000000)
456         and 00000000, ffffffff => 00000000 (00000000 00000000)
457         and 000f423f, 00000000 => 00000000 (00000000 00000000)
458         and 000f423f, 000f423f => 000f423f (00000000 00000000)
459         and 000f423f, ffffffff => 000f423f (00000000 00000000)
460         and ffffffff, 00000000 => 00000000 (00000000 00000000)
461         and ffffffff, 000f423f => 000f423f (00000000 00000000)
462         and ffffffff, ffffffff => ffffffff (00000000 00000000)
463
464        andc 00000000, 00000000 => 00000000 (00000000 00000000)
465        andc 00000000, 000f423f => 00000000 (00000000 00000000)
466        andc 00000000, ffffffff => 00000000 (00000000 00000000)
467        andc 000f423f, 00000000 => 000f423f (00000000 00000000)
468        andc 000f423f, 000f423f => 00000000 (00000000 00000000)
469        andc 000f423f, ffffffff => 00000000 (00000000 00000000)
470        andc ffffffff, 00000000 => ffffffff (00000000 00000000)
471        andc ffffffff, 000f423f => fff0bdc0 (00000000 00000000)
472        andc ffffffff, ffffffff => 00000000 (00000000 00000000)
473
474         eqv 00000000, 00000000 => ffffffff (00000000 00000000)
475         eqv 00000000, 000f423f => fff0bdc0 (00000000 00000000)
476         eqv 00000000, ffffffff => 00000000 (00000000 00000000)
477         eqv 000f423f, 00000000 => fff0bdc0 (00000000 00000000)
478         eqv 000f423f, 000f423f => ffffffff (00000000 00000000)
479         eqv 000f423f, ffffffff => 000f423f (00000000 00000000)
480         eqv ffffffff, 00000000 => 00000000 (00000000 00000000)
481         eqv ffffffff, 000f423f => 000f423f (00000000 00000000)
482         eqv ffffffff, ffffffff => ffffffff (00000000 00000000)
483
484        nand 00000000, 00000000 => ffffffff (00000000 00000000)
485        nand 00000000, 000f423f => ffffffff (00000000 00000000)
486        nand 00000000, ffffffff => ffffffff (00000000 00000000)
487        nand 000f423f, 00000000 => ffffffff (00000000 00000000)
488        nand 000f423f, 000f423f => fff0bdc0 (00000000 00000000)
489        nand 000f423f, ffffffff => fff0bdc0 (00000000 00000000)
490        nand ffffffff, 00000000 => ffffffff (00000000 00000000)
491        nand ffffffff, 000f423f => fff0bdc0 (00000000 00000000)
492        nand ffffffff, ffffffff => 00000000 (00000000 00000000)
493
494         nor 00000000, 00000000 => ffffffff (00000000 00000000)
495         nor 00000000, 000f423f => fff0bdc0 (00000000 00000000)
496         nor 00000000, ffffffff => 00000000 (00000000 00000000)
497         nor 000f423f, 00000000 => fff0bdc0 (00000000 00000000)
498         nor 000f423f, 000f423f => fff0bdc0 (00000000 00000000)
499         nor 000f423f, ffffffff => 00000000 (00000000 00000000)
500         nor ffffffff, 00000000 => 00000000 (00000000 00000000)
501         nor ffffffff, 000f423f => 00000000 (00000000 00000000)
502         nor ffffffff, ffffffff => 00000000 (00000000 00000000)
503
504          or 00000000, 00000000 => 00000000 (00000000 00000000)
505          or 00000000, 000f423f => 000f423f (00000000 00000000)
506          or 00000000, ffffffff => ffffffff (00000000 00000000)
507          or 000f423f, 00000000 => 000f423f (00000000 00000000)
508          or 000f423f, 000f423f => 000f423f (00000000 00000000)
509          or 000f423f, ffffffff => ffffffff (00000000 00000000)
510          or ffffffff, 00000000 => ffffffff (00000000 00000000)
511          or ffffffff, 000f423f => ffffffff (00000000 00000000)
512          or ffffffff, ffffffff => ffffffff (00000000 00000000)
513
514         orc 00000000, 00000000 => ffffffff (00000000 00000000)
515         orc 00000000, 000f423f => fff0bdc0 (00000000 00000000)
516         orc 00000000, ffffffff => 00000000 (00000000 00000000)
517         orc 000f423f, 00000000 => ffffffff (00000000 00000000)
518         orc 000f423f, 000f423f => ffffffff (00000000 00000000)
519         orc 000f423f, ffffffff => 000f423f (00000000 00000000)
520         orc ffffffff, 00000000 => ffffffff (00000000 00000000)
521         orc ffffffff, 000f423f => ffffffff (00000000 00000000)
522         orc ffffffff, ffffffff => ffffffff (00000000 00000000)
523
524         xor 00000000, 00000000 => 00000000 (00000000 00000000)
525         xor 00000000, 000f423f => 000f423f (00000000 00000000)
526         xor 00000000, ffffffff => ffffffff (00000000 00000000)
527         xor 000f423f, 00000000 => 000f423f (00000000 00000000)
528         xor 000f423f, 000f423f => 00000000 (00000000 00000000)
529         xor 000f423f, ffffffff => fff0bdc0 (00000000 00000000)
530         xor ffffffff, 00000000 => ffffffff (00000000 00000000)
531         xor ffffffff, 000f423f => fff0bdc0 (00000000 00000000)
532         xor ffffffff, ffffffff => 00000000 (00000000 00000000)
533
534         slw 00000000, 00000000 => 00000000 (00000000 00000000)
535         slw 00000000, 000f423f => 00000000 (00000000 00000000)
536         slw 00000000, ffffffff => 00000000 (00000000 00000000)
537         slw 000f423f, 00000000 => 000f423f (00000000 00000000)
538         slw 000f423f, 000f423f => 00000000 (00000000 00000000)
539         slw 000f423f, ffffffff => 00000000 (00000000 00000000)
540         slw ffffffff, 00000000 => ffffffff (00000000 00000000)
541         slw ffffffff, 000f423f => 00000000 (00000000 00000000)
542         slw ffffffff, ffffffff => 00000000 (00000000 00000000)
543
544        sraw 00000000, 00000000 => 00000000 (00000000 00000000)
545        sraw 00000000, 000f423f => 00000000 (00000000 00000000)
546        sraw 00000000, ffffffff => 00000000 (00000000 00000000)
547        sraw 000f423f, 00000000 => 000f423f (00000000 00000000)
548        sraw 000f423f, 000f423f => 00000000 (00000000 00000000)
549        sraw 000f423f, ffffffff => 00000000 (00000000 00000000)
550        sraw ffffffff, 00000000 => ffffffff (00000000 00000000)
551        sraw ffffffff, 000f423f => ffffffff (00000000 20000000)
552        sraw ffffffff, ffffffff => ffffffff (00000000 20000000)
553
554         srw 00000000, 00000000 => 00000000 (00000000 00000000)
555         srw 00000000, 000f423f => 00000000 (00000000 00000000)
556         srw 00000000, ffffffff => 00000000 (00000000 00000000)
557         srw 000f423f, 00000000 => 000f423f (00000000 00000000)
558         srw 000f423f, 000f423f => 00000000 (00000000 00000000)
559         srw 000f423f, ffffffff => 00000000 (00000000 00000000)
560         srw ffffffff, 00000000 => ffffffff (00000000 00000000)
561         srw ffffffff, 000f423f => 00000000 (00000000 00000000)
562         srw ffffffff, ffffffff => 00000000 (00000000 00000000)
563
564PPC integer logical insns with two args with flags update:
565        and. 00000000, 00000000 => 00000000 (20000000 00000000)
566        and. 00000000, 000f423f => 00000000 (20000000 00000000)
567        and. 00000000, ffffffff => 00000000 (20000000 00000000)
568        and. 000f423f, 00000000 => 00000000 (20000000 00000000)
569        and. 000f423f, 000f423f => 000f423f (40000000 00000000)
570        and. 000f423f, ffffffff => 000f423f (40000000 00000000)
571        and. ffffffff, 00000000 => 00000000 (20000000 00000000)
572        and. ffffffff, 000f423f => 000f423f (40000000 00000000)
573        and. ffffffff, ffffffff => ffffffff (80000000 00000000)
574
575       andc. 00000000, 00000000 => 00000000 (20000000 00000000)
576       andc. 00000000, 000f423f => 00000000 (20000000 00000000)
577       andc. 00000000, ffffffff => 00000000 (20000000 00000000)
578       andc. 000f423f, 00000000 => 000f423f (40000000 00000000)
579       andc. 000f423f, 000f423f => 00000000 (20000000 00000000)
580       andc. 000f423f, ffffffff => 00000000 (20000000 00000000)
581       andc. ffffffff, 00000000 => ffffffff (80000000 00000000)
582       andc. ffffffff, 000f423f => fff0bdc0 (80000000 00000000)
583       andc. ffffffff, ffffffff => 00000000 (20000000 00000000)
584
585        eqv. 00000000, 00000000 => ffffffff (80000000 00000000)
586        eqv. 00000000, 000f423f => fff0bdc0 (80000000 00000000)
587        eqv. 00000000, ffffffff => 00000000 (20000000 00000000)
588        eqv. 000f423f, 00000000 => fff0bdc0 (80000000 00000000)
589        eqv. 000f423f, 000f423f => ffffffff (80000000 00000000)
590        eqv. 000f423f, ffffffff => 000f423f (40000000 00000000)
591        eqv. ffffffff, 00000000 => 00000000 (20000000 00000000)
592        eqv. ffffffff, 000f423f => 000f423f (40000000 00000000)
593        eqv. ffffffff, ffffffff => ffffffff (80000000 00000000)
594
595       nand. 00000000, 00000000 => ffffffff (80000000 00000000)
596       nand. 00000000, 000f423f => ffffffff (80000000 00000000)
597       nand. 00000000, ffffffff => ffffffff (80000000 00000000)
598       nand. 000f423f, 00000000 => ffffffff (80000000 00000000)
599       nand. 000f423f, 000f423f => fff0bdc0 (80000000 00000000)
600       nand. 000f423f, ffffffff => fff0bdc0 (80000000 00000000)
601       nand. ffffffff, 00000000 => ffffffff (80000000 00000000)
602       nand. ffffffff, 000f423f => fff0bdc0 (80000000 00000000)
603       nand. ffffffff, ffffffff => 00000000 (20000000 00000000)
604
605        nor. 00000000, 00000000 => ffffffff (80000000 00000000)
606        nor. 00000000, 000f423f => fff0bdc0 (80000000 00000000)
607        nor. 00000000, ffffffff => 00000000 (20000000 00000000)
608        nor. 000f423f, 00000000 => fff0bdc0 (80000000 00000000)
609        nor. 000f423f, 000f423f => fff0bdc0 (80000000 00000000)
610        nor. 000f423f, ffffffff => 00000000 (20000000 00000000)
611        nor. ffffffff, 00000000 => 00000000 (20000000 00000000)
612        nor. ffffffff, 000f423f => 00000000 (20000000 00000000)
613        nor. ffffffff, ffffffff => 00000000 (20000000 00000000)
614
615         or. 00000000, 00000000 => 00000000 (20000000 00000000)
616         or. 00000000, 000f423f => 000f423f (40000000 00000000)
617         or. 00000000, ffffffff => ffffffff (80000000 00000000)
618         or. 000f423f, 00000000 => 000f423f (40000000 00000000)
619         or. 000f423f, 000f423f => 000f423f (40000000 00000000)
620         or. 000f423f, ffffffff => ffffffff (80000000 00000000)
621         or. ffffffff, 00000000 => ffffffff (80000000 00000000)
622         or. ffffffff, 000f423f => ffffffff (80000000 00000000)
623         or. ffffffff, ffffffff => ffffffff (80000000 00000000)
624
625        orc. 00000000, 00000000 => ffffffff (80000000 00000000)
626        orc. 00000000, 000f423f => fff0bdc0 (80000000 00000000)
627        orc. 00000000, ffffffff => 00000000 (20000000 00000000)
628        orc. 000f423f, 00000000 => ffffffff (80000000 00000000)
629        orc. 000f423f, 000f423f => ffffffff (80000000 00000000)
630        orc. 000f423f, ffffffff => 000f423f (40000000 00000000)
631        orc. ffffffff, 00000000 => ffffffff (80000000 00000000)
632        orc. ffffffff, 000f423f => ffffffff (80000000 00000000)
633        orc. ffffffff, ffffffff => ffffffff (80000000 00000000)
634
635        xor. 00000000, 00000000 => 00000000 (20000000 00000000)
636        xor. 00000000, 000f423f => 000f423f (40000000 00000000)
637        xor. 00000000, ffffffff => ffffffff (80000000 00000000)
638        xor. 000f423f, 00000000 => 000f423f (40000000 00000000)
639        xor. 000f423f, 000f423f => 00000000 (20000000 00000000)
640        xor. 000f423f, ffffffff => fff0bdc0 (80000000 00000000)
641        xor. ffffffff, 00000000 => ffffffff (80000000 00000000)
642        xor. ffffffff, 000f423f => fff0bdc0 (80000000 00000000)
643        xor. ffffffff, ffffffff => 00000000 (20000000 00000000)
644
645        slw. 00000000, 00000000 => 00000000 (20000000 00000000)
646        slw. 00000000, 000f423f => 00000000 (20000000 00000000)
647        slw. 00000000, ffffffff => 00000000 (20000000 00000000)
648        slw. 000f423f, 00000000 => 000f423f (40000000 00000000)
649        slw. 000f423f, 000f423f => 00000000 (20000000 00000000)
650        slw. 000f423f, ffffffff => 00000000 (20000000 00000000)
651        slw. ffffffff, 00000000 => ffffffff (80000000 00000000)
652        slw. ffffffff, 000f423f => 00000000 (20000000 00000000)
653        slw. ffffffff, ffffffff => 00000000 (20000000 00000000)
654
655       sraw. 00000000, 00000000 => 00000000 (20000000 00000000)
656       sraw. 00000000, 000f423f => 00000000 (20000000 00000000)
657       sraw. 00000000, ffffffff => 00000000 (20000000 00000000)
658       sraw. 000f423f, 00000000 => 000f423f (40000000 00000000)
659       sraw. 000f423f, 000f423f => 00000000 (20000000 00000000)
660       sraw. 000f423f, ffffffff => 00000000 (20000000 00000000)
661       sraw. ffffffff, 00000000 => ffffffff (80000000 00000000)
662       sraw. ffffffff, 000f423f => ffffffff (80000000 20000000)
663       sraw. ffffffff, ffffffff => ffffffff (80000000 20000000)
664
665        srw. 00000000, 00000000 => 00000000 (20000000 00000000)
666        srw. 00000000, 000f423f => 00000000 (20000000 00000000)
667        srw. 00000000, ffffffff => 00000000 (20000000 00000000)
668        srw. 000f423f, 00000000 => 000f423f (40000000 00000000)
669        srw. 000f423f, 000f423f => 00000000 (20000000 00000000)
670        srw. 000f423f, ffffffff => 00000000 (20000000 00000000)
671        srw. ffffffff, 00000000 => ffffffff (80000000 00000000)
672        srw. ffffffff, 000f423f => 00000000 (20000000 00000000)
673        srw. ffffffff, ffffffff => 00000000 (20000000 00000000)
674
675PPC integer compare insns (two args):
676        cmpw 00000000, 00000000 => 00000000 (00200000 00000000)
677        cmpw 00000000, 000f423f => 00000000 (00800000 00000000)
678        cmpw 00000000, ffffffff => 00000000 (00400000 00000000)
679        cmpw 000f423f, 00000000 => 00000000 (00400000 00000000)
680        cmpw 000f423f, 000f423f => 00000000 (00200000 00000000)
681        cmpw 000f423f, ffffffff => 00000000 (00400000 00000000)
682        cmpw ffffffff, 00000000 => 00000000 (00800000 00000000)
683        cmpw ffffffff, 000f423f => 00000000 (00800000 00000000)
684        cmpw ffffffff, ffffffff => 00000000 (00200000 00000000)
685
686       cmplw 00000000, 00000000 => 00000000 (00200000 00000000)
687       cmplw 00000000, 000f423f => 00000000 (00800000 00000000)
688       cmplw 00000000, ffffffff => 00000000 (00800000 00000000)
689       cmplw 000f423f, 00000000 => 00000000 (00400000 00000000)
690       cmplw 000f423f, 000f423f => 00000000 (00200000 00000000)
691       cmplw 000f423f, ffffffff => 00000000 (00800000 00000000)
692       cmplw ffffffff, 00000000 => 00000000 (00400000 00000000)
693       cmplw ffffffff, 000f423f => 00000000 (00400000 00000000)
694       cmplw ffffffff, ffffffff => 00000000 (00200000 00000000)
695
696PPC integer compare with immediate insns (two args):
697       cmpwi 00000000, 00000000 => 00000000 (00200000 00000000)
698       cmpwi 00000000, 000003e7 => 00000000 (00800000 00000000)
699       cmpwi 00000000, 0000ffff => 00000000 (00400000 00000000)
700       cmpwi 000f423f, 00000000 => 00000000 (00400000 00000000)
701       cmpwi 000f423f, 000003e7 => 00000000 (00400000 00000000)
702       cmpwi 000f423f, 0000ffff => 00000000 (00400000 00000000)
703       cmpwi ffffffff, 00000000 => 00000000 (00800000 00000000)
704       cmpwi ffffffff, 000003e7 => 00000000 (00800000 00000000)
705       cmpwi ffffffff, 0000ffff => 00000000 (00200000 00000000)
706
707      cmplwi 00000000, 00000000 => 00000000 (00200000 00000000)
708      cmplwi 00000000, 000003e7 => 00000000 (00800000 00000000)
709      cmplwi 00000000, 0000ffff => 00000000 (00800000 00000000)
710      cmplwi 000f423f, 00000000 => 00000000 (00400000 00000000)
711      cmplwi 000f423f, 000003e7 => 00000000 (00400000 00000000)
712      cmplwi 000f423f, 0000ffff => 00000000 (00400000 00000000)
713      cmplwi ffffffff, 00000000 => 00000000 (00400000 00000000)
714      cmplwi ffffffff, 000003e7 => 00000000 (00400000 00000000)
715      cmplwi ffffffff, 0000ffff => 00000000 (00400000 00000000)
716
717PPC integer arith insns
718    with one register + one 16 bits immediate args:
719        addi 00000000, 00000000 => 00000000 (00000000 00000000)
720        addi 00000000, 000003e7 => 000003e7 (00000000 00000000)
721        addi 00000000, 0000ffff => ffffffff (00000000 00000000)
722        addi 000f423f, 00000000 => 000f423f (00000000 00000000)
723        addi 000f423f, 000003e7 => 000f4626 (00000000 00000000)
724        addi 000f423f, 0000ffff => 000f423e (00000000 00000000)
725        addi ffffffff, 00000000 => ffffffff (00000000 00000000)
726        addi ffffffff, 000003e7 => 000003e6 (00000000 00000000)
727        addi ffffffff, 0000ffff => fffffffe (00000000 00000000)
728
729       addic 00000000, 00000000 => 00000000 (00000000 00000000)
730       addic 00000000, 000003e7 => 000003e7 (00000000 00000000)
731       addic 00000000, 0000ffff => ffffffff (00000000 00000000)
732       addic 000f423f, 00000000 => 000f423f (00000000 00000000)
733       addic 000f423f, 000003e7 => 000f4626 (00000000 00000000)
734       addic 000f423f, 0000ffff => 000f423e (00000000 20000000)
735       addic ffffffff, 00000000 => ffffffff (00000000 00000000)
736       addic ffffffff, 000003e7 => 000003e6 (00000000 20000000)
737       addic ffffffff, 0000ffff => fffffffe (00000000 20000000)
738
739       addis 00000000, 00000000 => 00000000 (00000000 00000000)
740       addis 00000000, 000003e7 => 03e70000 (00000000 00000000)
741       addis 00000000, 0000ffff => ffff0000 (00000000 00000000)
742       addis 000f423f, 00000000 => 000f423f (00000000 00000000)
743       addis 000f423f, 000003e7 => 03f6423f (00000000 00000000)
744       addis 000f423f, 0000ffff => 000e423f (00000000 00000000)
745       addis ffffffff, 00000000 => ffffffff (00000000 00000000)
746       addis ffffffff, 000003e7 => 03e6ffff (00000000 00000000)
747       addis ffffffff, 0000ffff => fffeffff (00000000 00000000)
748
749       mulli 00000000, 00000000 => 00000000 (00000000 00000000)
750       mulli 00000000, 000003e7 => 00000000 (00000000 00000000)
751       mulli 00000000, 0000ffff => 00000000 (00000000 00000000)
752       mulli 000f423f, 00000000 => 00000000 (00000000 00000000)
753       mulli 000f423f, 000003e7 => 3b8b83d9 (00000000 00000000)
754       mulli 000f423f, 0000ffff => fff0bdc1 (00000000 00000000)
755       mulli ffffffff, 00000000 => 00000000 (00000000 00000000)
756       mulli ffffffff, 000003e7 => fffffc19 (00000000 00000000)
757       mulli ffffffff, 0000ffff => 00000001 (00000000 00000000)
758
759      subfic 00000000, 00000000 => 00000000 (00000000 20000000)
760      subfic 00000000, 000003e7 => 000003e7 (00000000 20000000)
761      subfic 00000000, 0000ffff => ffffffff (00000000 20000000)
762      subfic 000f423f, 00000000 => fff0bdc1 (00000000 00000000)
763      subfic 000f423f, 000003e7 => fff0c1a8 (00000000 00000000)
764      subfic 000f423f, 0000ffff => fff0bdc0 (00000000 20000000)
765      subfic ffffffff, 00000000 => 00000001 (00000000 00000000)
766      subfic ffffffff, 000003e7 => 000003e8 (00000000 00000000)
767      subfic ffffffff, 0000ffff => 00000000 (00000000 20000000)
768
769PPC integer arith insns
770    with one register + one 16 bits immediate args with flags update:
771      addic. 00000000, 00000000 => 00000000 (20000000 00000000)
772      addic. 00000000, 000003e7 => 000003e7 (40000000 00000000)
773      addic. 00000000, 0000ffff => ffffffff (80000000 00000000)
774      addic. 000f423f, 00000000 => 000f423f (40000000 00000000)
775      addic. 000f423f, 000003e7 => 000f4626 (40000000 00000000)
776      addic. 000f423f, 0000ffff => 000f423e (40000000 20000000)
777      addic. ffffffff, 00000000 => ffffffff (80000000 00000000)
778      addic. ffffffff, 000003e7 => 000003e6 (40000000 20000000)
779      addic. ffffffff, 0000ffff => fffffffe (80000000 20000000)
780
781PPC integer logical insns
782    with one register + one 16 bits immediate args:
783         ori 00000000, 00000000 => 00000000 (00000000 00000000)
784         ori 00000000, 000003e7 => 000003e7 (00000000 00000000)
785         ori 00000000, 0000ffff => 0000ffff (00000000 00000000)
786         ori 000f423f, 00000000 => 000f423f (00000000 00000000)
787         ori 000f423f, 000003e7 => 000f43ff (00000000 00000000)
788         ori 000f423f, 0000ffff => 000fffff (00000000 00000000)
789         ori ffffffff, 00000000 => ffffffff (00000000 00000000)
790         ori ffffffff, 000003e7 => ffffffff (00000000 00000000)
791         ori ffffffff, 0000ffff => ffffffff (00000000 00000000)
792
793        oris 00000000, 00000000 => 00000000 (00000000 00000000)
794        oris 00000000, 000003e7 => 03e70000 (00000000 00000000)
795        oris 00000000, 0000ffff => ffff0000 (00000000 00000000)
796        oris 000f423f, 00000000 => 000f423f (00000000 00000000)
797        oris 000f423f, 000003e7 => 03ef423f (00000000 00000000)
798        oris 000f423f, 0000ffff => ffff423f (00000000 00000000)
799        oris ffffffff, 00000000 => ffffffff (00000000 00000000)
800        oris ffffffff, 000003e7 => ffffffff (00000000 00000000)
801        oris ffffffff, 0000ffff => ffffffff (00000000 00000000)
802
803        xori 00000000, 00000000 => 00000000 (00000000 00000000)
804        xori 00000000, 000003e7 => 000003e7 (00000000 00000000)
805        xori 00000000, 0000ffff => 0000ffff (00000000 00000000)
806        xori 000f423f, 00000000 => 000f423f (00000000 00000000)
807        xori 000f423f, 000003e7 => 000f41d8 (00000000 00000000)
808        xori 000f423f, 0000ffff => 000fbdc0 (00000000 00000000)
809        xori ffffffff, 00000000 => ffffffff (00000000 00000000)
810        xori ffffffff, 000003e7 => fffffc18 (00000000 00000000)
811        xori ffffffff, 0000ffff => ffff0000 (00000000 00000000)
812
813       xoris 00000000, 00000000 => 00000000 (00000000 00000000)
814       xoris 00000000, 000003e7 => 03e70000 (00000000 00000000)
815       xoris 00000000, 0000ffff => ffff0000 (00000000 00000000)
816       xoris 000f423f, 00000000 => 000f423f (00000000 00000000)
817       xoris 000f423f, 000003e7 => 03e8423f (00000000 00000000)
818       xoris 000f423f, 0000ffff => fff0423f (00000000 00000000)
819       xoris ffffffff, 00000000 => ffffffff (00000000 00000000)
820       xoris ffffffff, 000003e7 => fc18ffff (00000000 00000000)
821       xoris ffffffff, 0000ffff => 0000ffff (00000000 00000000)
822
823PPC integer logical insns
824    with one register + one 16 bits immediate args with flags update:
825       andi. 00000000, 00000000 => 00000000 (20000000 00000000)
826       andi. 00000000, 000003e7 => 00000000 (20000000 00000000)
827       andi. 00000000, 0000ffff => 00000000 (20000000 00000000)
828       andi. 000f423f, 00000000 => 00000000 (20000000 00000000)
829       andi. 000f423f, 000003e7 => 00000227 (40000000 00000000)
830       andi. 000f423f, 0000ffff => 0000423f (40000000 00000000)
831       andi. ffffffff, 00000000 => 00000000 (20000000 00000000)
832       andi. ffffffff, 000003e7 => 000003e7 (40000000 00000000)
833       andi. ffffffff, 0000ffff => 0000ffff (40000000 00000000)
834
835      andis. 00000000, 00000000 => 00000000 (20000000 00000000)
836      andis. 00000000, 000003e7 => 00000000 (20000000 00000000)
837      andis. 00000000, 0000ffff => 00000000 (20000000 00000000)
838      andis. 000f423f, 00000000 => 00000000 (20000000 00000000)
839      andis. 000f423f, 000003e7 => 00070000 (40000000 00000000)
840      andis. 000f423f, 0000ffff => 000f0000 (40000000 00000000)
841      andis. ffffffff, 00000000 => 00000000 (20000000 00000000)
842      andis. ffffffff, 000003e7 => 03e70000 (40000000 00000000)
843      andis. ffffffff, 0000ffff => ffff0000 (80000000 00000000)
844
845PPC condition register logical insns - two operands:
846       crand 00000000, 00000000 => ffff0000 (00000000 00000000)
847       crand 00000000, 000f423f => ffff0000 (00000000 00000000)
848       crand 00000000, ffffffff => ffff0000 (00000000 00000000)
849       crand 000f423f, 00000000 => ffff0000 (00000000 00000000)
850       crand 000f423f, 000f423f => ffff0000 (00000000 00000000)
851       crand 000f423f, ffffffff => ffff0000 (00000000 00000000)
852       crand ffffffff, 00000000 => ffff0000 (00000000 00000000)
853       crand ffffffff, 000f423f => ffff0000 (00000000 00000000)
854       crand ffffffff, ffffffff => ffff0000 (00000000 00000000)
855
856      crandc 00000000, 00000000 => ffff0000 (00000000 00000000)
857      crandc 00000000, 000f423f => ffff0000 (00000000 00000000)
858      crandc 00000000, ffffffff => ffff0000 (00000000 00000000)
859      crandc 000f423f, 00000000 => ffff0000 (00000000 00000000)
860      crandc 000f423f, 000f423f => ffff0000 (00000000 00000000)
861      crandc 000f423f, ffffffff => ffff0000 (00000000 00000000)
862      crandc ffffffff, 00000000 => ffff0000 (00000000 00000000)
863      crandc ffffffff, 000f423f => ffff0000 (00000000 00000000)
864      crandc ffffffff, ffffffff => ffff0000 (00000000 00000000)
865
866       creqv 00000000, 00000000 => ffff0000 (00004000 00000000)
867       creqv 00000000, 000f423f => ffff0000 (00004000 00000000)
868       creqv 00000000, ffffffff => ffff0000 (00004000 00000000)
869       creqv 000f423f, 00000000 => ffff0000 (00004000 00000000)
870       creqv 000f423f, 000f423f => ffff0000 (00004000 00000000)
871       creqv 000f423f, ffffffff => ffff0000 (00004000 00000000)
872       creqv ffffffff, 00000000 => ffff0000 (00004000 00000000)
873       creqv ffffffff, 000f423f => ffff0000 (00004000 00000000)
874       creqv ffffffff, ffffffff => ffff0000 (00004000 00000000)
875
876      crnand 00000000, 00000000 => ffff0000 (00004000 00000000)
877      crnand 00000000, 000f423f => ffff0000 (00004000 00000000)
878      crnand 00000000, ffffffff => ffff0000 (00004000 00000000)
879      crnand 000f423f, 00000000 => ffff0000 (00004000 00000000)
880      crnand 000f423f, 000f423f => ffff0000 (00004000 00000000)
881      crnand 000f423f, ffffffff => ffff0000 (00004000 00000000)
882      crnand ffffffff, 00000000 => ffff0000 (00004000 00000000)
883      crnand ffffffff, 000f423f => ffff0000 (00004000 00000000)
884      crnand ffffffff, ffffffff => ffff0000 (00004000 00000000)
885
886       crnor 00000000, 00000000 => ffff0000 (00004000 00000000)
887       crnor 00000000, 000f423f => ffff0000 (00004000 00000000)
888       crnor 00000000, ffffffff => ffff0000 (00004000 00000000)
889       crnor 000f423f, 00000000 => ffff0000 (00004000 00000000)
890       crnor 000f423f, 000f423f => ffff0000 (00004000 00000000)
891       crnor 000f423f, ffffffff => ffff0000 (00004000 00000000)
892       crnor ffffffff, 00000000 => ffff0000 (00004000 00000000)
893       crnor ffffffff, 000f423f => ffff0000 (00004000 00000000)
894       crnor ffffffff, ffffffff => ffff0000 (00004000 00000000)
895
896        cror 00000000, 00000000 => ffff0000 (00000000 00000000)
897        cror 00000000, 000f423f => ffff0000 (00000000 00000000)
898        cror 00000000, ffffffff => ffff0000 (00000000 00000000)
899        cror 000f423f, 00000000 => ffff0000 (00000000 00000000)
900        cror 000f423f, 000f423f => ffff0000 (00000000 00000000)
901        cror 000f423f, ffffffff => ffff0000 (00000000 00000000)
902        cror ffffffff, 00000000 => ffff0000 (00000000 00000000)
903        cror ffffffff, 000f423f => ffff0000 (00000000 00000000)
904        cror ffffffff, ffffffff => ffff0000 (00000000 00000000)
905
906       crorc 00000000, 00000000 => ffff0000 (00004000 00000000)
907       crorc 00000000, 000f423f => ffff0000 (00004000 00000000)
908       crorc 00000000, ffffffff => ffff0000 (00004000 00000000)
909       crorc 000f423f, 00000000 => ffff0000 (00004000 00000000)
910       crorc 000f423f, 000f423f => ffff0000 (00004000 00000000)
911       crorc 000f423f, ffffffff => ffff0000 (00004000 00000000)
912       crorc ffffffff, 00000000 => ffff0000 (00004000 00000000)
913       crorc ffffffff, 000f423f => ffff0000 (00004000 00000000)
914       crorc ffffffff, ffffffff => ffff0000 (00004000 00000000)
915
916       crxor 00000000, 00000000 => ffff0000 (00000000 00000000)
917       crxor 00000000, 000f423f => ffff0000 (00000000 00000000)
918       crxor 00000000, ffffffff => ffff0000 (00000000 00000000)
919       crxor 000f423f, 00000000 => ffff0000 (00000000 00000000)
920       crxor 000f423f, 000f423f => ffff0000 (00000000 00000000)
921       crxor 000f423f, ffffffff => ffff0000 (00000000 00000000)
922       crxor ffffffff, 00000000 => ffff0000 (00000000 00000000)
923       crxor ffffffff, 000f423f => ffff0000 (00000000 00000000)
924       crxor ffffffff, ffffffff => ffff0000 (00000000 00000000)
925
926PPC integer arith insns with one arg and carry:
927       addme 00000000 => ffffffff (00000000 00000000)
928       addme 000f423f => 000f423e (00000000 20000000)
929       addme ffffffff => fffffffe (00000000 20000000)
930       addme 00000000 => 00000000 (00000000 20000000)
931       addme 000f423f => 000f423f (00000000 20000000)
932       addme ffffffff => ffffffff (00000000 20000000)
933
934      addmeo 00000000 => ffffffff (00000000 00000000)
935      addmeo 000f423f => 000f423e (00000000 20000000)
936      addmeo ffffffff => fffffffe (00000000 20000000)
937      addmeo 00000000 => 00000000 (00000000 20000000)
938      addmeo 000f423f => 000f423f (00000000 20000000)
939      addmeo ffffffff => ffffffff (00000000 20000000)
940
941       addze 00000000 => 00000000 (00000000 00000000)
942       addze 000f423f => 000f423f (00000000 00000000)
943       addze ffffffff => ffffffff (00000000 00000000)
944       addze 00000000 => 00000001 (00000000 00000000)
945       addze 000f423f => 000f4240 (00000000 00000000)
946       addze ffffffff => 00000000 (00000000 20000000)
947
948      addzeo 00000000 => 00000000 (00000000 00000000)
949      addzeo 000f423f => 000f423f (00000000 00000000)
950      addzeo ffffffff => ffffffff (00000000 00000000)
951      addzeo 00000000 => 00000001 (00000000 00000000)
952      addzeo 000f423f => 000f4240 (00000000 00000000)
953      addzeo ffffffff => 00000000 (00000000 20000000)
954
955      subfme 00000000 => fffffffe (00000000 20000000)
956      subfme 000f423f => fff0bdbf (00000000 20000000)
957      subfme ffffffff => ffffffff (00000000 00000000)
958      subfme 00000000 => ffffffff (00000000 20000000)
959      subfme 000f423f => fff0bdc0 (00000000 20000000)
960      subfme ffffffff => 00000000 (00000000 20000000)
961
962     subfmeo 00000000 => fffffffe (00000000 20000000)
963     subfmeo 000f423f => fff0bdbf (00000000 20000000)
964     subfmeo ffffffff => ffffffff (00000000 00000000)
965     subfmeo 00000000 => ffffffff (00000000 20000000)
966     subfmeo 000f423f => fff0bdc0 (00000000 20000000)
967     subfmeo ffffffff => 00000000 (00000000 20000000)
968
969      subfze 00000000 => ffffffff (00000000 00000000)
970      subfze 000f423f => fff0bdc0 (00000000 00000000)
971      subfze ffffffff => 00000000 (00000000 00000000)
972      subfze 00000000 => 00000000 (00000000 20000000)
973      subfze 000f423f => fff0bdc1 (00000000 00000000)
974      subfze ffffffff => 00000001 (00000000 00000000)
975
976     subfzeo 00000000 => ffffffff (00000000 00000000)
977     subfzeo 000f423f => fff0bdc0 (00000000 00000000)
978     subfzeo ffffffff => 00000000 (00000000 00000000)
979     subfzeo 00000000 => 00000000 (00000000 20000000)
980     subfzeo 000f423f => fff0bdc1 (00000000 00000000)
981     subfzeo ffffffff => 00000001 (00000000 00000000)
982
983PPC integer arith insns with one arg and carry with flags update:
984      addme. 00000000 => ffffffff (80000000 00000000)
985      addme. 000f423f => 000f423e (40000000 20000000)
986      addme. ffffffff => fffffffe (80000000 20000000)
987      addme. 00000000 => 00000000 (20000000 20000000)
988      addme. 000f423f => 000f423f (40000000 20000000)
989      addme. ffffffff => ffffffff (80000000 20000000)
990
991     addmeo. 00000000 => ffffffff (80000000 00000000)
992     addmeo. 000f423f => 000f423e (40000000 20000000)
993     addmeo. ffffffff => fffffffe (80000000 20000000)
994     addmeo. 00000000 => 00000000 (20000000 20000000)
995     addmeo. 000f423f => 000f423f (40000000 20000000)
996     addmeo. ffffffff => ffffffff (80000000 20000000)
997
998      addze. 00000000 => 00000000 (20000000 00000000)
999      addze. 000f423f => 000f423f (40000000 00000000)
1000      addze. ffffffff => ffffffff (80000000 00000000)
1001      addze. 00000000 => 00000001 (40000000 00000000)
1002      addze. 000f423f => 000f4240 (40000000 00000000)
1003      addze. ffffffff => 00000000 (20000000 20000000)
1004
1005     addzeo. 00000000 => 00000000 (20000000 00000000)
1006     addzeo. 000f423f => 000f423f (40000000 00000000)
1007     addzeo. ffffffff => ffffffff (80000000 00000000)
1008     addzeo. 00000000 => 00000001 (40000000 00000000)
1009     addzeo. 000f423f => 000f4240 (40000000 00000000)
1010     addzeo. ffffffff => 00000000 (20000000 20000000)
1011
1012     subfme. 00000000 => fffffffe (80000000 20000000)
1013     subfme. 000f423f => fff0bdbf (80000000 20000000)
1014     subfme. ffffffff => ffffffff (80000000 00000000)
1015     subfme. 00000000 => ffffffff (80000000 20000000)
1016     subfme. 000f423f => fff0bdc0 (80000000 20000000)
1017     subfme. ffffffff => 00000000 (20000000 20000000)
1018
1019    subfmeo. 00000000 => fffffffe (80000000 20000000)
1020    subfmeo. 000f423f => fff0bdbf (80000000 20000000)
1021    subfmeo. ffffffff => ffffffff (80000000 00000000)
1022    subfmeo. 00000000 => ffffffff (80000000 20000000)
1023    subfmeo. 000f423f => fff0bdc0 (80000000 20000000)
1024    subfmeo. ffffffff => 00000000 (20000000 20000000)
1025
1026     subfze. 00000000 => ffffffff (80000000 00000000)
1027     subfze. 000f423f => fff0bdc0 (80000000 00000000)
1028     subfze. ffffffff => 00000000 (20000000 00000000)
1029     subfze. 00000000 => 00000000 (20000000 20000000)
1030     subfze. 000f423f => fff0bdc1 (80000000 00000000)
1031     subfze. ffffffff => 00000001 (40000000 00000000)
1032
1033    subfzeo. 00000000 => ffffffff (80000000 00000000)
1034    subfzeo. 000f423f => fff0bdc0 (80000000 00000000)
1035    subfzeo. ffffffff => 00000000 (20000000 00000000)
1036    subfzeo. 00000000 => 00000000 (20000000 20000000)
1037    subfzeo. 000f423f => fff0bdc1 (80000000 00000000)
1038    subfzeo. ffffffff => 00000001 (40000000 00000000)
1039
1040PPC integer logical insns with one arg:
1041      cntlzw 00000000 => 00000020 (00000000 00000000)
1042      cntlzw 000f423f => 0000000c (00000000 00000000)
1043      cntlzw ffffffff => 00000000 (00000000 00000000)
1044
1045       extsb 00000000 => 00000000 (00000000 00000000)
1046       extsb 000f423f => 0000003f (00000000 00000000)
1047       extsb ffffffff => ffffffff (00000000 00000000)
1048
1049       extsh 00000000 => 00000000 (00000000 00000000)
1050       extsh 000f423f => 0000423f (00000000 00000000)
1051       extsh ffffffff => ffffffff (00000000 00000000)
1052
1053         neg 00000000 => 00000000 (00000000 00000000)
1054         neg 000f423f => fff0bdc1 (00000000 00000000)
1055         neg ffffffff => 00000001 (00000000 00000000)
1056
1057        nego 00000000 => 00000000 (00000000 00000000)
1058        nego 000f423f => fff0bdc1 (00000000 00000000)
1059        nego ffffffff => 00000001 (00000000 00000000)
1060
1061PPC integer logical insns with one arg with flags update:
1062     cntlzw. 00000000 => 00000020 (40000000 00000000)
1063     cntlzw. 000f423f => 0000000c (40000000 00000000)
1064     cntlzw. ffffffff => 00000000 (20000000 00000000)
1065
1066      extsb. 00000000 => 00000000 (20000000 00000000)
1067      extsb. 000f423f => 0000003f (40000000 00000000)
1068      extsb. ffffffff => ffffffff (80000000 00000000)
1069
1070      extsh. 00000000 => 00000000 (20000000 00000000)
1071      extsh. 000f423f => 0000423f (40000000 00000000)
1072      extsh. ffffffff => ffffffff (80000000 00000000)
1073
1074        neg. 00000000 => 00000000 (20000000 00000000)
1075        neg. 000f423f => fff0bdc1 (80000000 00000000)
1076        neg. ffffffff => 00000001 (40000000 00000000)
1077
1078       nego. 00000000 => 00000000 (20000000 00000000)
1079       nego. 000f423f => fff0bdc1 (80000000 00000000)
1080       nego. ffffffff => 00000001 (40000000 00000000)
1081
1082PPC logical insns with special forms:
1083      rlwimi 00000000,  0,  0,  0 => 00000000 (00000000 00000000)
1084      rlwimi 00000000,  0,  0, 31 => 00000000 (00000000 00000000)
1085      rlwimi 00000000,  0, 31,  0 => 00000000 (00000000 00000000)
1086      rlwimi 00000000,  0, 31, 31 => 00000000 (00000000 00000000)
1087      rlwimi 00000000, 31,  0,  0 => 00000000 (00000000 00000000)
1088      rlwimi 00000000, 31,  0, 31 => 00000000 (00000000 00000000)
1089      rlwimi 00000000, 31, 31,  0 => 00000000 (00000000 00000000)
1090      rlwimi 00000000, 31, 31, 31 => 00000000 (00000000 00000000)
1091      rlwimi 000f423f,  0,  0,  0 => 00000000 (00000000 00000000)
1092      rlwimi 000f423f,  0,  0, 31 => 000f423f (00000000 00000000)
1093      rlwimi 000f423f,  0, 31,  0 => 000f423f (00000000 00000000)
1094      rlwimi 000f423f,  0, 31, 31 => 000f423f (00000000 00000000)
1095      rlwimi 000f423f, 31,  0,  0 => 800f423f (00000000 00000000)
1096      rlwimi 000f423f, 31,  0, 31 => 8007a11f (00000000 00000000)
1097      rlwimi 000f423f, 31, 31,  0 => 8007a11f (00000000 00000000)
1098      rlwimi 000f423f, 31, 31, 31 => 8007a11f (00000000 00000000)
1099      rlwimi ffffffff,  0,  0,  0 => 8007a11f (00000000 00000000)
1100      rlwimi ffffffff,  0,  0, 31 => ffffffff (00000000 00000000)
1101      rlwimi ffffffff,  0, 31,  0 => ffffffff (00000000 00000000)
1102      rlwimi ffffffff,  0, 31, 31 => ffffffff (00000000 00000000)
1103      rlwimi ffffffff, 31,  0,  0 => ffffffff (00000000 00000000)
1104      rlwimi ffffffff, 31,  0, 31 => ffffffff (00000000 00000000)
1105      rlwimi ffffffff, 31, 31,  0 => ffffffff (00000000 00000000)
1106      rlwimi ffffffff, 31, 31, 31 => ffffffff (00000000 00000000)
1107
1108      rlwinm 00000000,  0,  0,  0 => 00000000 (00000000 00000000)
1109      rlwinm 00000000,  0,  0, 31 => 00000000 (00000000 00000000)
1110      rlwinm 00000000,  0, 31,  0 => 00000000 (00000000 00000000)
1111      rlwinm 00000000,  0, 31, 31 => 00000000 (00000000 00000000)
1112      rlwinm 00000000, 31,  0,  0 => 00000000 (00000000 00000000)
1113      rlwinm 00000000, 31,  0, 31 => 00000000 (00000000 00000000)
1114      rlwinm 00000000, 31, 31,  0 => 00000000 (00000000 00000000)
1115      rlwinm 00000000, 31, 31, 31 => 00000000 (00000000 00000000)
1116      rlwinm 000f423f,  0,  0,  0 => 00000000 (00000000 00000000)
1117      rlwinm 000f423f,  0,  0, 31 => 000f423f (00000000 00000000)
1118      rlwinm 000f423f,  0, 31,  0 => 00000001 (00000000 00000000)
1119      rlwinm 000f423f,  0, 31, 31 => 00000001 (00000000 00000000)
1120      rlwinm 000f423f, 31,  0,  0 => 80000000 (00000000 00000000)
1121      rlwinm 000f423f, 31,  0, 31 => 8007a11f (00000000 00000000)
1122      rlwinm 000f423f, 31, 31,  0 => 80000001 (00000000 00000000)
1123      rlwinm 000f423f, 31, 31, 31 => 00000001 (00000000 00000000)
1124      rlwinm ffffffff,  0,  0,  0 => 80000000 (00000000 00000000)
1125      rlwinm ffffffff,  0,  0, 31 => ffffffff (00000000 00000000)
1126      rlwinm ffffffff,  0, 31,  0 => 80000001 (00000000 00000000)
1127      rlwinm ffffffff,  0, 31, 31 => 00000001 (00000000 00000000)
1128      rlwinm ffffffff, 31,  0,  0 => 80000000 (00000000 00000000)
1129      rlwinm ffffffff, 31,  0, 31 => ffffffff (00000000 00000000)
1130      rlwinm ffffffff, 31, 31,  0 => 80000001 (00000000 00000000)
1131      rlwinm ffffffff, 31, 31, 31 => 00000001 (00000000 00000000)
1132
1133       rlwnm 00000000, 00000000,  0,  0 => 00000000 (00000000 00000000)
1134       rlwnm 00000000, 00000000,  0, 31 => 00000000 (00000000 00000000)
1135       rlwnm 00000000, 00000000, 31,  0 => 00000000 (00000000 00000000)
1136       rlwnm 00000000, 00000000, 31, 31 => 00000000 (00000000 00000000)
1137       rlwnm 00000000, 000f423f,  0,  0 => 00000000 (00000000 00000000)
1138       rlwnm 00000000, 000f423f,  0, 31 => 00000000 (00000000 00000000)
1139       rlwnm 00000000, 000f423f, 31,  0 => 00000000 (00000000 00000000)
1140       rlwnm 00000000, 000f423f, 31, 31 => 00000000 (00000000 00000000)
1141       rlwnm 00000000, ffffffff,  0,  0 => 00000000 (00000000 00000000)
1142       rlwnm 00000000, ffffffff,  0, 31 => 00000000 (00000000 00000000)
1143       rlwnm 00000000, ffffffff, 31,  0 => 00000000 (00000000 00000000)
1144       rlwnm 00000000, ffffffff, 31, 31 => 00000000 (00000000 00000000)
1145       rlwnm 000f423f, 00000000,  0,  0 => 00000000 (00000000 00000000)
1146       rlwnm 000f423f, 00000000,  0, 31 => 000f423f (00000000 00000000)
1147       rlwnm 000f423f, 00000000, 31,  0 => 00000001 (00000000 00000000)
1148       rlwnm 000f423f, 00000000, 31, 31 => 00000001 (00000000 00000000)
1149       rlwnm 000f423f, 000f423f,  0,  0 => 80000000 (00000000 00000000)
1150       rlwnm 000f423f, 000f423f,  0, 31 => 8007a11f (00000000 00000000)
1151       rlwnm 000f423f, 000f423f, 31,  0 => 80000001 (00000000 00000000)
1152       rlwnm 000f423f, 000f423f, 31, 31 => 00000001 (00000000 00000000)
1153       rlwnm 000f423f, ffffffff,  0,  0 => 80000000 (00000000 00000000)
1154       rlwnm 000f423f, ffffffff,  0, 31 => 8007a11f (00000000 00000000)
1155       rlwnm 000f423f, ffffffff, 31,  0 => 80000001 (00000000 00000000)
1156       rlwnm 000f423f, ffffffff, 31, 31 => 00000001 (00000000 00000000)
1157       rlwnm ffffffff, 00000000,  0,  0 => 80000000 (00000000 00000000)
1158       rlwnm ffffffff, 00000000,  0, 31 => ffffffff (00000000 00000000)
1159       rlwnm ffffffff, 00000000, 31,  0 => 80000001 (00000000 00000000)
1160       rlwnm ffffffff, 00000000, 31, 31 => 00000001 (00000000 00000000)
1161       rlwnm ffffffff, 000f423f,  0,  0 => 80000000 (00000000 00000000)
1162       rlwnm ffffffff, 000f423f,  0, 31 => ffffffff (00000000 00000000)
1163       rlwnm ffffffff, 000f423f, 31,  0 => 80000001 (00000000 00000000)
1164       rlwnm ffffffff, 000f423f, 31, 31 => 00000001 (00000000 00000000)
1165       rlwnm ffffffff, ffffffff,  0,  0 => 80000000 (00000000 00000000)
1166       rlwnm ffffffff, ffffffff,  0, 31 => ffffffff (00000000 00000000)
1167       rlwnm ffffffff, ffffffff, 31,  0 => 80000001 (00000000 00000000)
1168       rlwnm ffffffff, ffffffff, 31, 31 => 00000001 (00000000 00000000)
1169
1170       srawi 00000000,  0 => 00000000 (00000000 00000000)
1171       srawi 00000000, 31 => 00000000 (00000000 00000000)
1172       srawi 000f423f,  0 => 000f423f (00000000 00000000)
1173       srawi 000f423f, 31 => 00000000 (00000000 00000000)
1174       srawi ffffffff,  0 => ffffffff (00000000 00000000)
1175       srawi ffffffff, 31 => ffffffff (00000000 20000000)
1176
1177        mfcr (00000000) => 00000000 (00000000 00000000)
1178        mfcr (000f423f) => 000f423f (000f423f 00000000)
1179        mfcr (ffffffff) => ffffffff (ffffffff 00000000)
1180
1181       mfspr 1 (00000000) -> mtxer -> mfxer => 00000000
1182       mfspr 1 (000f423f) -> mtxer -> mfxer => 0000003f
1183       mfspr 1 (ffffffff) -> mtxer -> mfxer => e000007f
1184       mfspr 8 (00000000) ->  mtlr ->  mflr => 00000000
1185       mfspr 8 (000f423f) ->  mtlr ->  mflr => 000f423f
1186       mfspr 8 (ffffffff) ->  mtlr ->  mflr => ffffffff
1187       mfspr 9 (00000000) -> mtctr -> mfctr => 00000000
1188       mfspr 9 (000f423f) -> mtctr -> mfctr => 000f423f
1189       mfspr 9 (ffffffff) -> mtctr -> mfctr => ffffffff
1190
1191
1192PPC logical insns with special forms with flags update:
1193     rlwimi. 00000000,  0,  0,  0 => 00000000 (20000000 00000000)
1194     rlwimi. 00000000,  0,  0, 31 => 00000000 (20000000 00000000)
1195     rlwimi. 00000000,  0, 31,  0 => 00000000 (20000000 00000000)
1196     rlwimi. 00000000,  0, 31, 31 => 00000000 (20000000 00000000)
1197     rlwimi. 00000000, 31,  0,  0 => 00000000 (20000000 00000000)
1198     rlwimi. 00000000, 31,  0, 31 => 00000000 (20000000 00000000)
1199     rlwimi. 00000000, 31, 31,  0 => 00000000 (20000000 00000000)
1200     rlwimi. 00000000, 31, 31, 31 => 00000000 (20000000 00000000)
1201     rlwimi. 000f423f,  0,  0,  0 => 00000000 (20000000 00000000)
1202     rlwimi. 000f423f,  0,  0, 31 => 000f423f (40000000 00000000)
1203     rlwimi. 000f423f,  0, 31,  0 => 000f423f (40000000 00000000)
1204     rlwimi. 000f423f,  0, 31, 31 => 000f423f (40000000 00000000)
1205     rlwimi. 000f423f, 31,  0,  0 => 800f423f (80000000 00000000)
1206     rlwimi. 000f423f, 31,  0, 31 => 8007a11f (80000000 00000000)
1207     rlwimi. 000f423f, 31, 31,  0 => 8007a11f (80000000 00000000)
1208     rlwimi. 000f423f, 31, 31, 31 => 8007a11f (80000000 00000000)
1209     rlwimi. ffffffff,  0,  0,  0 => 8007a11f (80000000 00000000)
1210     rlwimi. ffffffff,  0,  0, 31 => ffffffff (80000000 00000000)
1211     rlwimi. ffffffff,  0, 31,  0 => ffffffff (80000000 00000000)
1212     rlwimi. ffffffff,  0, 31, 31 => ffffffff (80000000 00000000)
1213     rlwimi. ffffffff, 31,  0,  0 => ffffffff (80000000 00000000)
1214     rlwimi. ffffffff, 31,  0, 31 => ffffffff (80000000 00000000)
1215     rlwimi. ffffffff, 31, 31,  0 => ffffffff (80000000 00000000)
1216     rlwimi. ffffffff, 31, 31, 31 => ffffffff (80000000 00000000)
1217
1218     rlwinm. 00000000,  0,  0,  0 => 00000000 (20000000 00000000)
1219     rlwinm. 00000000,  0,  0, 31 => 00000000 (20000000 00000000)
1220     rlwinm. 00000000,  0, 31,  0 => 00000000 (20000000 00000000)
1221     rlwinm. 00000000,  0, 31, 31 => 00000000 (20000000 00000000)
1222     rlwinm. 00000000, 31,  0,  0 => 00000000 (20000000 00000000)
1223     rlwinm. 00000000, 31,  0, 31 => 00000000 (20000000 00000000)
1224     rlwinm. 00000000, 31, 31,  0 => 00000000 (20000000 00000000)
1225     rlwinm. 00000000, 31, 31, 31 => 00000000 (20000000 00000000)
1226     rlwinm. 000f423f,  0,  0,  0 => 00000000 (20000000 00000000)
1227     rlwinm. 000f423f,  0,  0, 31 => 000f423f (40000000 00000000)
1228     rlwinm. 000f423f,  0, 31,  0 => 00000001 (40000000 00000000)
1229     rlwinm. 000f423f,  0, 31, 31 => 00000001 (40000000 00000000)
1230     rlwinm. 000f423f, 31,  0,  0 => 80000000 (80000000 00000000)
1231     rlwinm. 000f423f, 31,  0, 31 => 8007a11f (80000000 00000000)
1232     rlwinm. 000f423f, 31, 31,  0 => 80000001 (80000000 00000000)
1233     rlwinm. 000f423f, 31, 31, 31 => 00000001 (40000000 00000000)
1234     rlwinm. ffffffff,  0,  0,  0 => 80000000 (80000000 00000000)
1235     rlwinm. ffffffff,  0,  0, 31 => ffffffff (80000000 00000000)
1236     rlwinm. ffffffff,  0, 31,  0 => 80000001 (80000000 00000000)
1237     rlwinm. ffffffff,  0, 31, 31 => 00000001 (40000000 00000000)
1238     rlwinm. ffffffff, 31,  0,  0 => 80000000 (80000000 00000000)
1239     rlwinm. ffffffff, 31,  0, 31 => ffffffff (80000000 00000000)
1240     rlwinm. ffffffff, 31, 31,  0 => 80000001 (80000000 00000000)
1241     rlwinm. ffffffff, 31, 31, 31 => 00000001 (40000000 00000000)
1242
1243      rlwnm. 00000000, 00000000,  0,  0 => 00000000 (20000000 00000000)
1244      rlwnm. 00000000, 00000000,  0, 31 => 00000000 (20000000 00000000)
1245      rlwnm. 00000000, 00000000, 31,  0 => 00000000 (20000000 00000000)
1246      rlwnm. 00000000, 00000000, 31, 31 => 00000000 (20000000 00000000)
1247      rlwnm. 00000000, 000f423f,  0,  0 => 00000000 (20000000 00000000)
1248      rlwnm. 00000000, 000f423f,  0, 31 => 00000000 (20000000 00000000)
1249      rlwnm. 00000000, 000f423f, 31,  0 => 00000000 (20000000 00000000)
1250      rlwnm. 00000000, 000f423f, 31, 31 => 00000000 (20000000 00000000)
1251      rlwnm. 00000000, ffffffff,  0,  0 => 00000000 (20000000 00000000)
1252      rlwnm. 00000000, ffffffff,  0, 31 => 00000000 (20000000 00000000)
1253      rlwnm. 00000000, ffffffff, 31,  0 => 00000000 (20000000 00000000)
1254      rlwnm. 00000000, ffffffff, 31, 31 => 00000000 (20000000 00000000)
1255      rlwnm. 000f423f, 00000000,  0,  0 => 00000000 (20000000 00000000)
1256      rlwnm. 000f423f, 00000000,  0, 31 => 000f423f (40000000 00000000)
1257      rlwnm. 000f423f, 00000000, 31,  0 => 00000001 (40000000 00000000)
1258      rlwnm. 000f423f, 00000000, 31, 31 => 00000001 (40000000 00000000)
1259      rlwnm. 000f423f, 000f423f,  0,  0 => 80000000 (80000000 00000000)
1260      rlwnm. 000f423f, 000f423f,  0, 31 => 8007a11f (80000000 00000000)
1261      rlwnm. 000f423f, 000f423f, 31,  0 => 80000001 (80000000 00000000)
1262      rlwnm. 000f423f, 000f423f, 31, 31 => 00000001 (40000000 00000000)
1263      rlwnm. 000f423f, ffffffff,  0,  0 => 80000000 (80000000 00000000)
1264      rlwnm. 000f423f, ffffffff,  0, 31 => 8007a11f (80000000 00000000)
1265      rlwnm. 000f423f, ffffffff, 31,  0 => 80000001 (80000000 00000000)
1266      rlwnm. 000f423f, ffffffff, 31, 31 => 00000001 (40000000 00000000)
1267      rlwnm. ffffffff, 00000000,  0,  0 => 80000000 (80000000 00000000)
1268      rlwnm. ffffffff, 00000000,  0, 31 => ffffffff (80000000 00000000)
1269      rlwnm. ffffffff, 00000000, 31,  0 => 80000001 (80000000 00000000)
1270      rlwnm. ffffffff, 00000000, 31, 31 => 00000001 (40000000 00000000)
1271      rlwnm. ffffffff, 000f423f,  0,  0 => 80000000 (80000000 00000000)
1272      rlwnm. ffffffff, 000f423f,  0, 31 => ffffffff (80000000 00000000)
1273      rlwnm. ffffffff, 000f423f, 31,  0 => 80000001 (80000000 00000000)
1274      rlwnm. ffffffff, 000f423f, 31, 31 => 00000001 (40000000 00000000)
1275      rlwnm. ffffffff, ffffffff,  0,  0 => 80000000 (80000000 00000000)
1276      rlwnm. ffffffff, ffffffff,  0, 31 => ffffffff (80000000 00000000)
1277      rlwnm. ffffffff, ffffffff, 31,  0 => 80000001 (80000000 00000000)
1278      rlwnm. ffffffff, ffffffff, 31, 31 => 00000001 (40000000 00000000)
1279
1280      srawi. 00000000,  0 => 00000000 (20000000 00000000)
1281      srawi. 00000000, 31 => 00000000 (20000000 00000000)
1282      srawi. 000f423f,  0 => 000f423f (40000000 00000000)
1283      srawi. 000f423f, 31 => 00000000 (20000000 00000000)
1284      srawi. ffffffff,  0 => ffffffff (80000000 00000000)
1285      srawi. ffffffff, 31 => ffffffff (80000000 20000000)
1286
1287        mcrf 0, 0 (00000000) => (00000000 00000000)
1288        mcrf 0, 7 (00000000) => (00000000 00000000)
1289        mcrf 7, 0 (00000000) => (00000000 00000000)
1290        mcrf 7, 7 (00000000) => (00000000 00000000)
1291        mcrf 0, 0 (000f423f) => (000f423f 00000000)
1292        mcrf 0, 7 (000f423f) => (f00f423f 00000000)
1293        mcrf 7, 0 (000f423f) => (000f4230 00000000)
1294        mcrf 7, 7 (000f423f) => (000f423f 00000000)
1295        mcrf 0, 0 (ffffffff) => (ffffffff 00000000)
1296        mcrf 0, 7 (ffffffff) => (ffffffff 00000000)
1297        mcrf 7, 0 (ffffffff) => (ffffffff 00000000)
1298        mcrf 7, 7 (ffffffff) => (ffffffff 00000000)
1299
1300       mcrxr 0 (00000000) => (00000000 00000000)
1301       mcrxr 1 (00000000) => (00000000 00000000)
1302       mcrxr 2 (00000000) => (00000000 00000000)
1303       mcrxr 3 (00000000) => (00000000 00000000)
1304       mcrxr 4 (00000000) => (00000000 00000000)
1305       mcrxr 5 (00000000) => (00000000 00000000)
1306       mcrxr 6 (00000000) => (00000000 00000000)
1307       mcrxr 7 (00000000) => (00000000 00000000)
1308       mcrxr 0 (10000000) => (00000000 00000000)
1309       mcrxr 1 (10000000) => (00000000 00000000)
1310       mcrxr 2 (10000000) => (00000000 00000000)
1311       mcrxr 3 (10000000) => (00000000 00000000)
1312       mcrxr 4 (10000000) => (00000000 00000000)
1313       mcrxr 5 (10000000) => (00000000 00000000)
1314       mcrxr 6 (10000000) => (00000000 00000000)
1315       mcrxr 7 (10000000) => (00000000 00000000)
1316       mcrxr 0 (20000000) => (20000000 00000000)
1317       mcrxr 1 (20000000) => (02000000 00000000)
1318       mcrxr 2 (20000000) => (00200000 00000000)
1319       mcrxr 3 (20000000) => (00020000 00000000)
1320       mcrxr 4 (20000000) => (00002000 00000000)
1321       mcrxr 5 (20000000) => (00000200 00000000)
1322       mcrxr 6 (20000000) => (00000020 00000000)
1323       mcrxr 7 (20000000) => (00000002 00000000)
1324       mcrxr 0 (30000000) => (20000000 00000000)
1325       mcrxr 1 (30000000) => (02000000 00000000)
1326       mcrxr 2 (30000000) => (00200000 00000000)
1327       mcrxr 3 (30000000) => (00020000 00000000)
1328       mcrxr 4 (30000000) => (00002000 00000000)
1329       mcrxr 5 (30000000) => (00000200 00000000)
1330       mcrxr 6 (30000000) => (00000020 00000000)
1331       mcrxr 7 (30000000) => (00000002 00000000)
1332       mcrxr 0 (40000000) => (40000000 00000000)
1333       mcrxr 1 (40000000) => (04000000 00000000)
1334       mcrxr 2 (40000000) => (00400000 00000000)
1335       mcrxr 3 (40000000) => (00040000 00000000)
1336       mcrxr 4 (40000000) => (00004000 00000000)
1337       mcrxr 5 (40000000) => (00000400 00000000)
1338       mcrxr 6 (40000000) => (00000040 00000000)
1339       mcrxr 7 (40000000) => (00000004 00000000)
1340       mcrxr 0 (50000000) => (40000000 00000000)
1341       mcrxr 1 (50000000) => (04000000 00000000)
1342       mcrxr 2 (50000000) => (00400000 00000000)
1343       mcrxr 3 (50000000) => (00040000 00000000)
1344       mcrxr 4 (50000000) => (00004000 00000000)
1345       mcrxr 5 (50000000) => (00000400 00000000)
1346       mcrxr 6 (50000000) => (00000040 00000000)
1347       mcrxr 7 (50000000) => (00000004 00000000)
1348       mcrxr 0 (60000000) => (60000000 00000000)
1349       mcrxr 1 (60000000) => (06000000 00000000)
1350       mcrxr 2 (60000000) => (00600000 00000000)
1351       mcrxr 3 (60000000) => (00060000 00000000)
1352       mcrxr 4 (60000000) => (00006000 00000000)
1353       mcrxr 5 (60000000) => (00000600 00000000)
1354       mcrxr 6 (60000000) => (00000060 00000000)
1355       mcrxr 7 (60000000) => (00000006 00000000)
1356       mcrxr 0 (70000000) => (60000000 00000000)
1357       mcrxr 1 (70000000) => (06000000 00000000)
1358       mcrxr 2 (70000000) => (00600000 00000000)
1359       mcrxr 3 (70000000) => (00060000 00000000)
1360       mcrxr 4 (70000000) => (00006000 00000000)
1361       mcrxr 5 (70000000) => (00000600 00000000)
1362       mcrxr 6 (70000000) => (00000060 00000000)
1363       mcrxr 7 (70000000) => (00000006 00000000)
1364       mcrxr 0 (80000000) => (80000000 00000000)
1365       mcrxr 1 (80000000) => (08000000 00000000)
1366       mcrxr 2 (80000000) => (00800000 00000000)
1367       mcrxr 3 (80000000) => (00080000 00000000)
1368       mcrxr 4 (80000000) => (00008000 00000000)
1369       mcrxr 5 (80000000) => (00000800 00000000)
1370       mcrxr 6 (80000000) => (00000080 00000000)
1371       mcrxr 7 (80000000) => (00000008 00000000)
1372       mcrxr 0 (90000000) => (80000000 00000000)
1373       mcrxr 1 (90000000) => (08000000 00000000)
1374       mcrxr 2 (90000000) => (00800000 00000000)
1375       mcrxr 3 (90000000) => (00080000 00000000)
1376       mcrxr 4 (90000000) => (00008000 00000000)
1377       mcrxr 5 (90000000) => (00000800 00000000)
1378       mcrxr 6 (90000000) => (00000080 00000000)
1379       mcrxr 7 (90000000) => (00000008 00000000)
1380       mcrxr 0 (a0000000) => (a0000000 00000000)
1381       mcrxr 1 (a0000000) => (0a000000 00000000)
1382       mcrxr 2 (a0000000) => (00a00000 00000000)
1383       mcrxr 3 (a0000000) => (000a0000 00000000)
1384       mcrxr 4 (a0000000) => (0000a000 00000000)
1385       mcrxr 5 (a0000000) => (00000a00 00000000)
1386       mcrxr 6 (a0000000) => (000000a0 00000000)
1387       mcrxr 7 (a0000000) => (0000000a 00000000)
1388       mcrxr 0 (b0000000) => (a0000000 00000000)
1389       mcrxr 1 (b0000000) => (0a000000 00000000)
1390       mcrxr 2 (b0000000) => (00a00000 00000000)
1391       mcrxr 3 (b0000000) => (000a0000 00000000)
1392       mcrxr 4 (b0000000) => (0000a000 00000000)
1393       mcrxr 5 (b0000000) => (00000a00 00000000)
1394       mcrxr 6 (b0000000) => (000000a0 00000000)
1395       mcrxr 7 (b0000000) => (0000000a 00000000)
1396       mcrxr 0 (c0000000) => (c0000000 00000000)
1397       mcrxr 1 (c0000000) => (0c000000 00000000)
1398       mcrxr 2 (c0000000) => (00c00000 00000000)
1399       mcrxr 3 (c0000000) => (000c0000 00000000)
1400       mcrxr 4 (c0000000) => (0000c000 00000000)
1401       mcrxr 5 (c0000000) => (00000c00 00000000)
1402       mcrxr 6 (c0000000) => (000000c0 00000000)
1403       mcrxr 7 (c0000000) => (0000000c 00000000)
1404       mcrxr 0 (d0000000) => (c0000000 00000000)
1405       mcrxr 1 (d0000000) => (0c000000 00000000)
1406       mcrxr 2 (d0000000) => (00c00000 00000000)
1407       mcrxr 3 (d0000000) => (000c0000 00000000)
1408       mcrxr 4 (d0000000) => (0000c000 00000000)
1409       mcrxr 5 (d0000000) => (00000c00 00000000)
1410       mcrxr 6 (d0000000) => (000000c0 00000000)
1411       mcrxr 7 (d0000000) => (0000000c 00000000)
1412       mcrxr 0 (e0000000) => (e0000000 00000000)
1413       mcrxr 1 (e0000000) => (0e000000 00000000)
1414       mcrxr 2 (e0000000) => (00e00000 00000000)
1415       mcrxr 3 (e0000000) => (000e0000 00000000)
1416       mcrxr 4 (e0000000) => (0000e000 00000000)
1417       mcrxr 5 (e0000000) => (00000e00 00000000)
1418       mcrxr 6 (e0000000) => (000000e0 00000000)
1419       mcrxr 7 (e0000000) => (0000000e 00000000)
1420       mcrxr 0 (f0000000) => (e0000000 00000000)
1421       mcrxr 1 (f0000000) => (0e000000 00000000)
1422       mcrxr 2 (f0000000) => (00e00000 00000000)
1423       mcrxr 3 (f0000000) => (000e0000 00000000)
1424       mcrxr 4 (f0000000) => (0000e000 00000000)
1425       mcrxr 5 (f0000000) => (00000e00 00000000)
1426       mcrxr 6 (f0000000) => (000000e0 00000000)
1427       mcrxr 7 (f0000000) => (0000000e 00000000)
1428
1429       mtcrf   0, 00000000 => (00000000 00000000)
1430       mtcrf  99, 00000000 => (00000000 00000000)
1431       mtcrf 198, 00000000 => (00000000 00000000)
1432       mtcrf   0, 000f423f => (00000000 00000000)
1433       mtcrf  99, 000f423f => (0000003f 00000000)
1434       mtcrf 198, 000f423f => (00000230 00000000)
1435       mtcrf   0, ffffffff => (00000000 00000000)
1436       mtcrf  99, ffffffff => (0ff000ff 00000000)
1437       mtcrf 198, ffffffff => (ff000ff0 00000000)
1438
1439PPC integer load insns
1440    with one register + one 16 bits immediate args with flags update:
1441         lbz  0, (00000000) => 00000000,  0 (00000000 00000000)
1442         lbz  4, (000f423f) => 00000000,  0 (00000000 00000000)
1443         lbz  8, (ffffffff) => 000000ff,  0 (00000000 00000000)
1444         lbz -8, (00000000) => 00000000,  0 (00000000 00000000)
1445         lbz -4, (000f423f) => 00000000,  0 (00000000 00000000)
1446         lbz  0, (ffffffff) => 000000ff,  0 (00000000 00000000)
1447
1448        lbzu  0, (00000000) => 00000000,  0 (00000000 00000000)
1449        lbzu  4, (000f423f) => 00000000,  4 (00000000 00000000)
1450        lbzu  8, (ffffffff) => 000000ff,  8 (00000000 00000000)
1451        lbzu -8, (00000000) => 00000000, -8 (00000000 00000000)
1452        lbzu -4, (000f423f) => 00000000, -4 (00000000 00000000)
1453        lbzu  0, (ffffffff) => 000000ff,  0 (00000000 00000000)
1454
1455         lha  0, (00000000) => 00000000,  0 (00000000 00000000)
1456         lha  4, (000f423f) => 0000000f,  0 (00000000 00000000)
1457         lha  8, (ffffffff) => ffffffff,  0 (00000000 00000000)
1458         lha -8, (00000000) => 00000000,  0 (00000000 00000000)
1459         lha -4, (000f423f) => 0000000f,  0 (00000000 00000000)
1460         lha  0, (ffffffff) => ffffffff,  0 (00000000 00000000)
1461
1462        lhau  0, (00000000) => 00000000,  0 (00000000 00000000)
1463        lhau  4, (000f423f) => 0000000f,  4 (00000000 00000000)
1464        lhau  8, (ffffffff) => ffffffff,  8 (00000000 00000000)
1465        lhau -8, (00000000) => 00000000, -8 (00000000 00000000)
1466        lhau -4, (000f423f) => 0000000f, -4 (00000000 00000000)
1467        lhau  0, (ffffffff) => ffffffff,  0 (00000000 00000000)
1468
1469         lhz  0, (00000000) => 00000000,  0 (00000000 00000000)
1470         lhz  4, (000f423f) => 0000000f,  0 (00000000 00000000)
1471         lhz  8, (ffffffff) => 0000ffff,  0 (00000000 00000000)
1472         lhz -8, (00000000) => 00000000,  0 (00000000 00000000)
1473         lhz -4, (000f423f) => 0000000f,  0 (00000000 00000000)
1474         lhz  0, (ffffffff) => 0000ffff,  0 (00000000 00000000)
1475
1476        lhzu  0, (00000000) => 00000000,  0 (00000000 00000000)
1477        lhzu  4, (000f423f) => 0000000f,  4 (00000000 00000000)
1478        lhzu  8, (ffffffff) => 0000ffff,  8 (00000000 00000000)
1479        lhzu -8, (00000000) => 00000000, -8 (00000000 00000000)
1480        lhzu -4, (000f423f) => 0000000f, -4 (00000000 00000000)
1481        lhzu  0, (ffffffff) => 0000ffff,  0 (00000000 00000000)
1482
1483         lwz  0, (00000000) => 00000000,  0 (00000000 00000000)
1484         lwz  4, (000f423f) => 000f423f,  0 (00000000 00000000)
1485         lwz  8, (ffffffff) => ffffffff,  0 (00000000 00000000)
1486         lwz -8, (00000000) => 00000000,  0 (00000000 00000000)
1487         lwz -4, (000f423f) => 000f423f,  0 (00000000 00000000)
1488         lwz  0, (ffffffff) => ffffffff,  0 (00000000 00000000)
1489
1490        lwzu  0, (00000000) => 00000000,  0 (00000000 00000000)
1491        lwzu  4, (000f423f) => 000f423f,  4 (00000000 00000000)
1492        lwzu  8, (ffffffff) => ffffffff,  8 (00000000 00000000)
1493        lwzu -8, (00000000) => 00000000, -8 (00000000 00000000)
1494        lwzu -4, (000f423f) => 000f423f, -4 (00000000 00000000)
1495        lwzu  0, (ffffffff) => ffffffff,  0 (00000000 00000000)
1496
1497PPC integer load insns with two register args:
1498        lbzx 0 (00000000) => 00000000, 0 (00000000 00000000)
1499        lbzx 4 (000f423f) => 00000000, 0 (00000000 00000000)
1500        lbzx 8 (ffffffff) => 000000ff, 0 (00000000 00000000)
1501
1502       lbzux 0 (00000000) => 00000000, 0 (00000000 00000000)
1503       lbzux 4 (000f423f) => 00000000, 4 (00000000 00000000)
1504       lbzux 8 (ffffffff) => 000000ff, 8 (00000000 00000000)
1505
1506        lhax 0 (00000000) => 00000000, 0 (00000000 00000000)
1507        lhax 4 (000f423f) => 0000000f, 0 (00000000 00000000)
1508        lhax 8 (ffffffff) => ffffffff, 0 (00000000 00000000)
1509
1510       lhaux 0 (00000000) => 00000000, 0 (00000000 00000000)
1511       lhaux 4 (000f423f) => 0000000f, 4 (00000000 00000000)
1512       lhaux 8 (ffffffff) => ffffffff, 8 (00000000 00000000)
1513
1514        lhzx 0 (00000000) => 00000000, 0 (00000000 00000000)
1515        lhzx 4 (000f423f) => 0000000f, 0 (00000000 00000000)
1516        lhzx 8 (ffffffff) => 0000ffff, 0 (00000000 00000000)
1517
1518       lhzux 0 (00000000) => 00000000, 0 (00000000 00000000)
1519       lhzux 4 (000f423f) => 0000000f, 4 (00000000 00000000)
1520       lhzux 8 (ffffffff) => 0000ffff, 8 (00000000 00000000)
1521
1522        lwzx 0 (00000000) => 00000000, 0 (00000000 00000000)
1523        lwzx 4 (000f423f) => 000f423f, 0 (00000000 00000000)
1524        lwzx 8 (ffffffff) => ffffffff, 0 (00000000 00000000)
1525
1526       lwzux 0 (00000000) => 00000000, 0 (00000000 00000000)
1527       lwzux 4 (000f423f) => 000f423f, 4 (00000000 00000000)
1528       lwzux 8 (ffffffff) => ffffffff, 8 (00000000 00000000)
1529
1530PPC integer store insns
1531    with one register + one 16 bits immediate args with flags update:
1532         stb 00000000,  0 => 00000000,  0 (00000000 00000000)
1533         stb 000f423f,  4 => 3f000000,  0 (00000000 00000000)
1534         stb ffffffff,  8 => ff000000,  0 (00000000 00000000)
1535         stb 00000000, -8 => 00000000,  0 (00000000 00000000)
1536         stb 000f423f, -4 => 3f000000,  0 (00000000 00000000)
1537         stb ffffffff,  0 => ff000000,  0 (00000000 00000000)
1538
1539        stbu 00000000,  0 => 00000000,  0 (00000000 00000000)
1540        stbu 000f423f,  4 => 3f000000,  4 (00000000 00000000)
1541        stbu ffffffff,  8 => ff000000,  8 (00000000 00000000)
1542        stbu 00000000, -8 => 00000000, -8 (00000000 00000000)
1543        stbu 000f423f, -4 => 3f000000, -4 (00000000 00000000)
1544        stbu ffffffff,  0 => ff000000,  0 (00000000 00000000)
1545
1546         sth 00000000,  0 => 00000000,  0 (00000000 00000000)
1547         sth 000f423f,  4 => 423f0000,  0 (00000000 00000000)
1548         sth ffffffff,  8 => ffff0000,  0 (00000000 00000000)
1549         sth 00000000, -8 => 00000000,  0 (00000000 00000000)
1550         sth 000f423f, -4 => 423f0000,  0 (00000000 00000000)
1551         sth ffffffff,  0 => ffff0000,  0 (00000000 00000000)
1552
1553        sthu 00000000,  0 => 00000000,  0 (00000000 00000000)
1554        sthu 000f423f,  4 => 423f0000,  4 (00000000 00000000)
1555        sthu ffffffff,  8 => ffff0000,  8 (00000000 00000000)
1556        sthu 00000000, -8 => 00000000, -8 (00000000 00000000)
1557        sthu 000f423f, -4 => 423f0000, -4 (00000000 00000000)
1558        sthu ffffffff,  0 => ffff0000,  0 (00000000 00000000)
1559
1560         stw 00000000,  0 => 00000000,  0 (00000000 00000000)
1561         stw 000f423f,  4 => 000f423f,  0 (00000000 00000000)
1562         stw ffffffff,  8 => ffffffff,  0 (00000000 00000000)
1563         stw 00000000, -8 => 00000000,  0 (00000000 00000000)
1564         stw 000f423f, -4 => 000f423f,  0 (00000000 00000000)
1565         stw ffffffff,  0 => ffffffff,  0 (00000000 00000000)
1566
1567        stwu 00000000,  0 => 00000000,  0 (00000000 00000000)
1568        stwu 000f423f,  4 => 000f423f,  4 (00000000 00000000)
1569        stwu ffffffff,  8 => ffffffff,  8 (00000000 00000000)
1570        stwu 00000000, -8 => 00000000, -8 (00000000 00000000)
1571        stwu 000f423f, -4 => 000f423f, -4 (00000000 00000000)
1572        stwu ffffffff,  0 => ffffffff,  0 (00000000 00000000)
1573
1574PPC integer store insns with three register args:
1575        stbx 00000000, 0 => 00000000, 0 (00000000 00000000)
1576        stbx 000f423f, 4 => 3f000000, 0 (00000000 00000000)
1577        stbx ffffffff, 8 => ff000000, 0 (00000000 00000000)
1578
1579       stbux 00000000, 0 => 00000000, 0 (00000000 00000000)
1580       stbux 000f423f, 4 => 3f000000, 4 (00000000 00000000)
1581       stbux ffffffff, 8 => ff000000, 8 (00000000 00000000)
1582
1583        sthx 00000000, 0 => 00000000, 0 (00000000 00000000)
1584        sthx 000f423f, 4 => 423f0000, 0 (00000000 00000000)
1585        sthx ffffffff, 8 => ffff0000, 0 (00000000 00000000)
1586
1587       sthux 00000000, 0 => 00000000, 0 (00000000 00000000)
1588       sthux 000f423f, 4 => 423f0000, 4 (00000000 00000000)
1589       sthux ffffffff, 8 => ffff0000, 8 (00000000 00000000)
1590
1591        stwx 00000000, 0 => 00000000, 0 (00000000 00000000)
1592        stwx 000f423f, 4 => 000f423f, 0 (00000000 00000000)
1593        stwx ffffffff, 8 => ffffffff, 0 (00000000 00000000)
1594
1595       stwux 00000000, 0 => 00000000, 0 (00000000 00000000)
1596       stwux 000f423f, 4 => 000f423f, 4 (00000000 00000000)
1597       stwux ffffffff, 8 => ffffffff, 8 (00000000 00000000)
1598
1599PPC integer population count with one register args, no flags:
1600        popcntb 00000000 => 00000000 (00000000 00000000)
1601        popcntb 000f423f => 00040206 (00000000 00000000)
1602        popcntb ffffffff => 08080808 (00000000 00000000)
1603
1604All done. Tested 155 different instructions
1605