tmp_arm_r0.cc Source File

Back to the index.

tmp_arm_r0.cc
Go to the documentation of this file.
1 /*
2  * DO NOT EDIT! AUTOMATICALLY GENERATED!
3  */
4 
5 #include <stdio.h>
6 #include <stdlib.h>
7 #include "cpu.h"
8 #include "misc.h"
9 
10 
11 uint32_t arm_r_r0_t0_c0(struct cpu *cpu, struct arm_instr_call *ic) {
12  return cpu->cd.arm.r[0];
13 }
14 uint32_t arm_r_r1_t0_c0(struct cpu *cpu, struct arm_instr_call *ic) {
15  return cpu->cd.arm.r[1];
16 }
17 uint32_t arm_r_r2_t0_c0(struct cpu *cpu, struct arm_instr_call *ic) {
18  return cpu->cd.arm.r[2];
19 }
20 uint32_t arm_r_r3_t0_c0(struct cpu *cpu, struct arm_instr_call *ic) {
21  return cpu->cd.arm.r[3];
22 }
23 uint32_t arm_r_r4_t0_c0(struct cpu *cpu, struct arm_instr_call *ic) {
24  return cpu->cd.arm.r[4];
25 }
26 uint32_t arm_r_r5_t0_c0(struct cpu *cpu, struct arm_instr_call *ic) {
27  return cpu->cd.arm.r[5];
28 }
29 uint32_t arm_r_r6_t0_c0(struct cpu *cpu, struct arm_instr_call *ic) {
30  return cpu->cd.arm.r[6];
31 }
32 uint32_t arm_r_r7_t0_c0(struct cpu *cpu, struct arm_instr_call *ic) {
33  return cpu->cd.arm.r[7];
34 }
35 uint32_t arm_r_r8_t0_c0(struct cpu *cpu, struct arm_instr_call *ic) {
36  return cpu->cd.arm.r[8];
37 }
38 uint32_t arm_r_r9_t0_c0(struct cpu *cpu, struct arm_instr_call *ic) {
39  return cpu->cd.arm.r[9];
40 }
41 uint32_t arm_r_r10_t0_c0(struct cpu *cpu, struct arm_instr_call *ic) {
42  return cpu->cd.arm.r[10];
43 }
44 uint32_t arm_r_r11_t0_c0(struct cpu *cpu, struct arm_instr_call *ic) {
45  return cpu->cd.arm.r[11];
46 }
47 uint32_t arm_r_r12_t0_c0(struct cpu *cpu, struct arm_instr_call *ic) {
48  return cpu->cd.arm.r[12];
49 }
50 uint32_t arm_r_r13_t0_c0(struct cpu *cpu, struct arm_instr_call *ic) {
51  return cpu->cd.arm.r[13];
52 }
53 uint32_t arm_r_r14_t0_c0(struct cpu *cpu, struct arm_instr_call *ic) {
54  return cpu->cd.arm.r[14];
55 }
56 uint32_t arm_r_r15_t0_c0(struct cpu *cpu, struct arm_instr_call *ic) {
57  uint32_t tmp, low_pc = ((size_t)ic - (size_t)
58  cpu->cd.arm.cur_ic_page)/sizeof(struct arm_instr_call);
59  tmp = cpu->pc & ~((ARM_IC_ENTRIES_PER_PAGE-1) <<
61  tmp += (low_pc << ARM_INSTR_ALIGNMENT_SHIFT) + 8;
62  return tmp;
63 }
64 uint32_t arm_r_r0_t1_c0(struct cpu *cpu, struct arm_instr_call *ic) {
65 { uint32_t y = cpu->cd.arm.r[0] & 255;
66  uint32_t x =cpu->cd.arm.r[0];
67 if (y > 31) return 0; else x <<= y;
68 return x; }
69 }
70 uint32_t arm_r_r1_t1_c0(struct cpu *cpu, struct arm_instr_call *ic) {
71 { uint32_t y = cpu->cd.arm.r[0] & 255;
72  uint32_t x =cpu->cd.arm.r[1];
73 if (y > 31) return 0; else x <<= y;
74 return x; }
75 }
76 uint32_t arm_r_r2_t1_c0(struct cpu *cpu, struct arm_instr_call *ic) {
77 { uint32_t y = cpu->cd.arm.r[0] & 255;
78  uint32_t x =cpu->cd.arm.r[2];
79 if (y > 31) return 0; else x <<= y;
80 return x; }
81 }
82 uint32_t arm_r_r3_t1_c0(struct cpu *cpu, struct arm_instr_call *ic) {
83 { uint32_t y = cpu->cd.arm.r[0] & 255;
84  uint32_t x =cpu->cd.arm.r[3];
85 if (y > 31) return 0; else x <<= y;
86 return x; }
87 }
88 uint32_t arm_r_r4_t1_c0(struct cpu *cpu, struct arm_instr_call *ic) {
89 { uint32_t y = cpu->cd.arm.r[0] & 255;
90  uint32_t x =cpu->cd.arm.r[4];
91 if (y > 31) return 0; else x <<= y;
92 return x; }
93 }
94 uint32_t arm_r_r5_t1_c0(struct cpu *cpu, struct arm_instr_call *ic) {
95 { uint32_t y = cpu->cd.arm.r[0] & 255;
96  uint32_t x =cpu->cd.arm.r[5];
97 if (y > 31) return 0; else x <<= y;
98 return x; }
99 }
100 uint32_t arm_r_r6_t1_c0(struct cpu *cpu, struct arm_instr_call *ic) {
101 { uint32_t y = cpu->cd.arm.r[0] & 255;
102  uint32_t x =cpu->cd.arm.r[6];
103 if (y > 31) return 0; else x <<= y;
104 return x; }
105 }
106 uint32_t arm_r_r7_t1_c0(struct cpu *cpu, struct arm_instr_call *ic) {
107 { uint32_t y = cpu->cd.arm.r[0] & 255;
108  uint32_t x =cpu->cd.arm.r[7];
109 if (y > 31) return 0; else x <<= y;
110 return x; }
111 }
112 uint32_t arm_r_r8_t1_c0(struct cpu *cpu, struct arm_instr_call *ic) {
113 { uint32_t y = cpu->cd.arm.r[0] & 255;
114  uint32_t x =cpu->cd.arm.r[8];
115 if (y > 31) return 0; else x <<= y;
116 return x; }
117 }
118 uint32_t arm_r_r9_t1_c0(struct cpu *cpu, struct arm_instr_call *ic) {
119 { uint32_t y = cpu->cd.arm.r[0] & 255;
120  uint32_t x =cpu->cd.arm.r[9];
121 if (y > 31) return 0; else x <<= y;
122 return x; }
123 }
124 uint32_t arm_r_r10_t1_c0(struct cpu *cpu, struct arm_instr_call *ic) {
125 { uint32_t y = cpu->cd.arm.r[0] & 255;
126  uint32_t x =cpu->cd.arm.r[10];
127 if (y > 31) return 0; else x <<= y;
128 return x; }
129 }
130 uint32_t arm_r_r11_t1_c0(struct cpu *cpu, struct arm_instr_call *ic) {
131 { uint32_t y = cpu->cd.arm.r[0] & 255;
132  uint32_t x =cpu->cd.arm.r[11];
133 if (y > 31) return 0; else x <<= y;
134 return x; }
135 }
136 uint32_t arm_r_r12_t1_c0(struct cpu *cpu, struct arm_instr_call *ic) {
137 { uint32_t y = cpu->cd.arm.r[0] & 255;
138  uint32_t x =cpu->cd.arm.r[12];
139 if (y > 31) return 0; else x <<= y;
140 return x; }
141 }
142 uint32_t arm_r_r13_t1_c0(struct cpu *cpu, struct arm_instr_call *ic) {
143 { uint32_t y = cpu->cd.arm.r[0] & 255;
144  uint32_t x =cpu->cd.arm.r[13];
145 if (y > 31) return 0; else x <<= y;
146 return x; }
147 }
148 uint32_t arm_r_r14_t1_c0(struct cpu *cpu, struct arm_instr_call *ic) {
149 { uint32_t y = cpu->cd.arm.r[0] & 255;
150  uint32_t x =cpu->cd.arm.r[14];
151 if (y > 31) return 0; else x <<= y;
152 return x; }
153 }
154 uint32_t arm_r_r15_t1_c0(struct cpu *cpu, struct arm_instr_call *ic) {
155  uint32_t tmp, low_pc = ((size_t)ic - (size_t)
156  cpu->cd.arm.cur_ic_page)/sizeof(struct arm_instr_call);
157  tmp = cpu->pc & ~((ARM_IC_ENTRIES_PER_PAGE-1) <<
159  tmp += (low_pc << ARM_INSTR_ALIGNMENT_SHIFT) + 8;
160 { uint32_t y = cpu->cd.arm.r[0] & 255;
161  uint32_t x =tmp;
162 if (y > 31) return 0; else x <<= y;
163 return x; }
164 }
165 uint32_t arm_r_r0_t2_c0(struct cpu *cpu, struct arm_instr_call *ic) {
166  return 0;
167 }
168 uint32_t arm_r_r1_t2_c0(struct cpu *cpu, struct arm_instr_call *ic) {
169  return 0;
170 }
171 uint32_t arm_r_r2_t2_c0(struct cpu *cpu, struct arm_instr_call *ic) {
172  return 0;
173 }
174 uint32_t arm_r_r3_t2_c0(struct cpu *cpu, struct arm_instr_call *ic) {
175  return 0;
176 }
177 uint32_t arm_r_r4_t2_c0(struct cpu *cpu, struct arm_instr_call *ic) {
178  return 0;
179 }
180 uint32_t arm_r_r5_t2_c0(struct cpu *cpu, struct arm_instr_call *ic) {
181  return 0;
182 }
183 uint32_t arm_r_r6_t2_c0(struct cpu *cpu, struct arm_instr_call *ic) {
184  return 0;
185 }
186 uint32_t arm_r_r7_t2_c0(struct cpu *cpu, struct arm_instr_call *ic) {
187  return 0;
188 }
189 uint32_t arm_r_r8_t2_c0(struct cpu *cpu, struct arm_instr_call *ic) {
190  return 0;
191 }
192 uint32_t arm_r_r9_t2_c0(struct cpu *cpu, struct arm_instr_call *ic) {
193  return 0;
194 }
195 uint32_t arm_r_r10_t2_c0(struct cpu *cpu, struct arm_instr_call *ic) {
196  return 0;
197 }
198 uint32_t arm_r_r11_t2_c0(struct cpu *cpu, struct arm_instr_call *ic) {
199  return 0;
200 }
201 uint32_t arm_r_r12_t2_c0(struct cpu *cpu, struct arm_instr_call *ic) {
202  return 0;
203 }
204 uint32_t arm_r_r13_t2_c0(struct cpu *cpu, struct arm_instr_call *ic) {
205  return 0;
206 }
207 uint32_t arm_r_r14_t2_c0(struct cpu *cpu, struct arm_instr_call *ic) {
208  return 0;
209 }
210 uint32_t arm_r_r15_t2_c0(struct cpu *cpu, struct arm_instr_call *ic) {
211  uint32_t tmp, low_pc = ((size_t)ic - (size_t)
212  cpu->cd.arm.cur_ic_page)/sizeof(struct arm_instr_call);
213  tmp = cpu->pc & ~((ARM_IC_ENTRIES_PER_PAGE-1) <<
215  tmp += (low_pc << ARM_INSTR_ALIGNMENT_SHIFT) + 8;
216  return 0;
217 }
218 uint32_t arm_r_r0_t3_c0(struct cpu *cpu, struct arm_instr_call *ic) {
219 { uint32_t y=cpu->cd.arm.r[0]&255;
220 uint32_t x=cpu->cd.arm.r[0]; if (y>=32) return 0;
221 return x >> y; } }
222 uint32_t arm_r_r1_t3_c0(struct cpu *cpu, struct arm_instr_call *ic) {
223 { uint32_t y=cpu->cd.arm.r[0]&255;
224 uint32_t x=cpu->cd.arm.r[1]; if (y>=32) return 0;
225 return x >> y; } }
226 uint32_t arm_r_r2_t3_c0(struct cpu *cpu, struct arm_instr_call *ic) {
227 { uint32_t y=cpu->cd.arm.r[0]&255;
228 uint32_t x=cpu->cd.arm.r[2]; if (y>=32) return 0;
229 return x >> y; } }
230 uint32_t arm_r_r3_t3_c0(struct cpu *cpu, struct arm_instr_call *ic) {
231 { uint32_t y=cpu->cd.arm.r[0]&255;
232 uint32_t x=cpu->cd.arm.r[3]; if (y>=32) return 0;
233 return x >> y; } }
234 uint32_t arm_r_r4_t3_c0(struct cpu *cpu, struct arm_instr_call *ic) {
235 { uint32_t y=cpu->cd.arm.r[0]&255;
236 uint32_t x=cpu->cd.arm.r[4]; if (y>=32) return 0;
237 return x >> y; } }
238 uint32_t arm_r_r5_t3_c0(struct cpu *cpu, struct arm_instr_call *ic) {
239 { uint32_t y=cpu->cd.arm.r[0]&255;
240 uint32_t x=cpu->cd.arm.r[5]; if (y>=32) return 0;
241 return x >> y; } }
242 uint32_t arm_r_r6_t3_c0(struct cpu *cpu, struct arm_instr_call *ic) {
243 { uint32_t y=cpu->cd.arm.r[0]&255;
244 uint32_t x=cpu->cd.arm.r[6]; if (y>=32) return 0;
245 return x >> y; } }
246 uint32_t arm_r_r7_t3_c0(struct cpu *cpu, struct arm_instr_call *ic) {
247 { uint32_t y=cpu->cd.arm.r[0]&255;
248 uint32_t x=cpu->cd.arm.r[7]; if (y>=32) return 0;
249 return x >> y; } }
250 uint32_t arm_r_r8_t3_c0(struct cpu *cpu, struct arm_instr_call *ic) {
251 { uint32_t y=cpu->cd.arm.r[0]&255;
252 uint32_t x=cpu->cd.arm.r[8]; if (y>=32) return 0;
253 return x >> y; } }
254 uint32_t arm_r_r9_t3_c0(struct cpu *cpu, struct arm_instr_call *ic) {
255 { uint32_t y=cpu->cd.arm.r[0]&255;
256 uint32_t x=cpu->cd.arm.r[9]; if (y>=32) return 0;
257 return x >> y; } }
258 uint32_t arm_r_r10_t3_c0(struct cpu *cpu, struct arm_instr_call *ic) {
259 { uint32_t y=cpu->cd.arm.r[0]&255;
260 uint32_t x=cpu->cd.arm.r[10]; if (y>=32) return 0;
261 return x >> y; } }
262 uint32_t arm_r_r11_t3_c0(struct cpu *cpu, struct arm_instr_call *ic) {
263 { uint32_t y=cpu->cd.arm.r[0]&255;
264 uint32_t x=cpu->cd.arm.r[11]; if (y>=32) return 0;
265 return x >> y; } }
266 uint32_t arm_r_r12_t3_c0(struct cpu *cpu, struct arm_instr_call *ic) {
267 { uint32_t y=cpu->cd.arm.r[0]&255;
268 uint32_t x=cpu->cd.arm.r[12]; if (y>=32) return 0;
269 return x >> y; } }
270 uint32_t arm_r_r13_t3_c0(struct cpu *cpu, struct arm_instr_call *ic) {
271 { uint32_t y=cpu->cd.arm.r[0]&255;
272 uint32_t x=cpu->cd.arm.r[13]; if (y>=32) return 0;
273 return x >> y; } }
274 uint32_t arm_r_r14_t3_c0(struct cpu *cpu, struct arm_instr_call *ic) {
275 { uint32_t y=cpu->cd.arm.r[0]&255;
276 uint32_t x=cpu->cd.arm.r[14]; if (y>=32) return 0;
277 return x >> y; } }
278 uint32_t arm_r_r15_t3_c0(struct cpu *cpu, struct arm_instr_call *ic) {
279  uint32_t tmp, low_pc = ((size_t)ic - (size_t)
280  cpu->cd.arm.cur_ic_page)/sizeof(struct arm_instr_call);
281  tmp = cpu->pc & ~((ARM_IC_ENTRIES_PER_PAGE-1) <<
283  tmp += (low_pc << ARM_INSTR_ALIGNMENT_SHIFT) + 8;
284 { uint32_t y=cpu->cd.arm.r[0]&255;
285 uint32_t x=tmp; if (y>=32) return 0;
286 return x >> y; } }
287 uint32_t arm_r_r0_t4_c0(struct cpu *cpu, struct arm_instr_call *ic) {
288  return cpu->cd.arm.r[0] & 0x80000000? 0xffffffff : 0;
289 }
290 uint32_t arm_r_r1_t4_c0(struct cpu *cpu, struct arm_instr_call *ic) {
291  return cpu->cd.arm.r[1] & 0x80000000? 0xffffffff : 0;
292 }
293 uint32_t arm_r_r2_t4_c0(struct cpu *cpu, struct arm_instr_call *ic) {
294  return cpu->cd.arm.r[2] & 0x80000000? 0xffffffff : 0;
295 }
296 uint32_t arm_r_r3_t4_c0(struct cpu *cpu, struct arm_instr_call *ic) {
297  return cpu->cd.arm.r[3] & 0x80000000? 0xffffffff : 0;
298 }
299 uint32_t arm_r_r4_t4_c0(struct cpu *cpu, struct arm_instr_call *ic) {
300  return cpu->cd.arm.r[4] & 0x80000000? 0xffffffff : 0;
301 }
302 uint32_t arm_r_r5_t4_c0(struct cpu *cpu, struct arm_instr_call *ic) {
303  return cpu->cd.arm.r[5] & 0x80000000? 0xffffffff : 0;
304 }
305 uint32_t arm_r_r6_t4_c0(struct cpu *cpu, struct arm_instr_call *ic) {
306  return cpu->cd.arm.r[6] & 0x80000000? 0xffffffff : 0;
307 }
308 uint32_t arm_r_r7_t4_c0(struct cpu *cpu, struct arm_instr_call *ic) {
309  return cpu->cd.arm.r[7] & 0x80000000? 0xffffffff : 0;
310 }
311 uint32_t arm_r_r8_t4_c0(struct cpu *cpu, struct arm_instr_call *ic) {
312  return cpu->cd.arm.r[8] & 0x80000000? 0xffffffff : 0;
313 }
314 uint32_t arm_r_r9_t4_c0(struct cpu *cpu, struct arm_instr_call *ic) {
315  return cpu->cd.arm.r[9] & 0x80000000? 0xffffffff : 0;
316 }
317 uint32_t arm_r_r10_t4_c0(struct cpu *cpu, struct arm_instr_call *ic) {
318  return cpu->cd.arm.r[10] & 0x80000000? 0xffffffff : 0;
319 }
320 uint32_t arm_r_r11_t4_c0(struct cpu *cpu, struct arm_instr_call *ic) {
321  return cpu->cd.arm.r[11] & 0x80000000? 0xffffffff : 0;
322 }
323 uint32_t arm_r_r12_t4_c0(struct cpu *cpu, struct arm_instr_call *ic) {
324  return cpu->cd.arm.r[12] & 0x80000000? 0xffffffff : 0;
325 }
326 uint32_t arm_r_r13_t4_c0(struct cpu *cpu, struct arm_instr_call *ic) {
327  return cpu->cd.arm.r[13] & 0x80000000? 0xffffffff : 0;
328 }
329 uint32_t arm_r_r14_t4_c0(struct cpu *cpu, struct arm_instr_call *ic) {
330  return cpu->cd.arm.r[14] & 0x80000000? 0xffffffff : 0;
331 }
332 uint32_t arm_r_r15_t4_c0(struct cpu *cpu, struct arm_instr_call *ic) {
333  uint32_t tmp, low_pc = ((size_t)ic - (size_t)
334  cpu->cd.arm.cur_ic_page)/sizeof(struct arm_instr_call);
335  tmp = cpu->pc & ~((ARM_IC_ENTRIES_PER_PAGE-1) <<
337  tmp += (low_pc << ARM_INSTR_ALIGNMENT_SHIFT) + 8;
338  return tmp & 0x80000000? 0xffffffff : 0;
339 }
340 uint32_t arm_r_r0_t5_c0(struct cpu *cpu, struct arm_instr_call *ic) {
341 { int32_t y=cpu->cd.arm.r[0]&255;
342 int32_t x=cpu->cd.arm.r[0]; if (y>=31) return (x<0)?0xffffffff:0;
343 return (int32_t)x >> y; } }
344 uint32_t arm_r_r1_t5_c0(struct cpu *cpu, struct arm_instr_call *ic) {
345 { int32_t y=cpu->cd.arm.r[0]&255;
346 int32_t x=cpu->cd.arm.r[1]; if (y>=31) return (x<0)?0xffffffff:0;
347 return (int32_t)x >> y; } }
348 uint32_t arm_r_r2_t5_c0(struct cpu *cpu, struct arm_instr_call *ic) {
349 { int32_t y=cpu->cd.arm.r[0]&255;
350 int32_t x=cpu->cd.arm.r[2]; if (y>=31) return (x<0)?0xffffffff:0;
351 return (int32_t)x >> y; } }
352 uint32_t arm_r_r3_t5_c0(struct cpu *cpu, struct arm_instr_call *ic) {
353 { int32_t y=cpu->cd.arm.r[0]&255;
354 int32_t x=cpu->cd.arm.r[3]; if (y>=31) return (x<0)?0xffffffff:0;
355 return (int32_t)x >> y; } }
356 uint32_t arm_r_r4_t5_c0(struct cpu *cpu, struct arm_instr_call *ic) {
357 { int32_t y=cpu->cd.arm.r[0]&255;
358 int32_t x=cpu->cd.arm.r[4]; if (y>=31) return (x<0)?0xffffffff:0;
359 return (int32_t)x >> y; } }
360 uint32_t arm_r_r5_t5_c0(struct cpu *cpu, struct arm_instr_call *ic) {
361 { int32_t y=cpu->cd.arm.r[0]&255;
362 int32_t x=cpu->cd.arm.r[5]; if (y>=31) return (x<0)?0xffffffff:0;
363 return (int32_t)x >> y; } }
364 uint32_t arm_r_r6_t5_c0(struct cpu *cpu, struct arm_instr_call *ic) {
365 { int32_t y=cpu->cd.arm.r[0]&255;
366 int32_t x=cpu->cd.arm.r[6]; if (y>=31) return (x<0)?0xffffffff:0;
367 return (int32_t)x >> y; } }
368 uint32_t arm_r_r7_t5_c0(struct cpu *cpu, struct arm_instr_call *ic) {
369 { int32_t y=cpu->cd.arm.r[0]&255;
370 int32_t x=cpu->cd.arm.r[7]; if (y>=31) return (x<0)?0xffffffff:0;
371 return (int32_t)x >> y; } }
372 uint32_t arm_r_r8_t5_c0(struct cpu *cpu, struct arm_instr_call *ic) {
373 { int32_t y=cpu->cd.arm.r[0]&255;
374 int32_t x=cpu->cd.arm.r[8]; if (y>=31) return (x<0)?0xffffffff:0;
375 return (int32_t)x >> y; } }
376 uint32_t arm_r_r9_t5_c0(struct cpu *cpu, struct arm_instr_call *ic) {
377 { int32_t y=cpu->cd.arm.r[0]&255;
378 int32_t x=cpu->cd.arm.r[9]; if (y>=31) return (x<0)?0xffffffff:0;
379 return (int32_t)x >> y; } }
380 uint32_t arm_r_r10_t5_c0(struct cpu *cpu, struct arm_instr_call *ic) {
381 { int32_t y=cpu->cd.arm.r[0]&255;
382 int32_t x=cpu->cd.arm.r[10]; if (y>=31) return (x<0)?0xffffffff:0;
383 return (int32_t)x >> y; } }
384 uint32_t arm_r_r11_t5_c0(struct cpu *cpu, struct arm_instr_call *ic) {
385 { int32_t y=cpu->cd.arm.r[0]&255;
386 int32_t x=cpu->cd.arm.r[11]; if (y>=31) return (x<0)?0xffffffff:0;
387 return (int32_t)x >> y; } }
388 uint32_t arm_r_r12_t5_c0(struct cpu *cpu, struct arm_instr_call *ic) {
389 { int32_t y=cpu->cd.arm.r[0]&255;
390 int32_t x=cpu->cd.arm.r[12]; if (y>=31) return (x<0)?0xffffffff:0;
391 return (int32_t)x >> y; } }
392 uint32_t arm_r_r13_t5_c0(struct cpu *cpu, struct arm_instr_call *ic) {
393 { int32_t y=cpu->cd.arm.r[0]&255;
394 int32_t x=cpu->cd.arm.r[13]; if (y>=31) return (x<0)?0xffffffff:0;
395 return (int32_t)x >> y; } }
396 uint32_t arm_r_r14_t5_c0(struct cpu *cpu, struct arm_instr_call *ic) {
397 { int32_t y=cpu->cd.arm.r[0]&255;
398 int32_t x=cpu->cd.arm.r[14]; if (y>=31) return (x<0)?0xffffffff:0;
399 return (int32_t)x >> y; } }
400 uint32_t arm_r_r15_t5_c0(struct cpu *cpu, struct arm_instr_call *ic) {
401  uint32_t tmp, low_pc = ((size_t)ic - (size_t)
402  cpu->cd.arm.cur_ic_page)/sizeof(struct arm_instr_call);
403  tmp = cpu->pc & ~((ARM_IC_ENTRIES_PER_PAGE-1) <<
405  tmp += (low_pc << ARM_INSTR_ALIGNMENT_SHIFT) + 8;
406 { int32_t y=cpu->cd.arm.r[0]&255;
407 int32_t x=tmp; if (y>=31) return (x<0)?0xffffffff:0;
408 return (int32_t)x >> y; } }
409 uint32_t arm_r_r0_t6_c0(struct cpu *cpu, struct arm_instr_call *ic) {
410 { uint64_t x=cpu->cd.arm.r[0]; if (cpu->cd.arm.flags & ARM_F_C) x |= 0x100000000ULL;return x >> 1; }
411 }
412 uint32_t arm_r_r1_t6_c0(struct cpu *cpu, struct arm_instr_call *ic) {
413 { uint64_t x=cpu->cd.arm.r[1]; if (cpu->cd.arm.flags & ARM_F_C) x |= 0x100000000ULL;return x >> 1; }
414 }
415 uint32_t arm_r_r2_t6_c0(struct cpu *cpu, struct arm_instr_call *ic) {
416 { uint64_t x=cpu->cd.arm.r[2]; if (cpu->cd.arm.flags & ARM_F_C) x |= 0x100000000ULL;return x >> 1; }
417 }
418 uint32_t arm_r_r3_t6_c0(struct cpu *cpu, struct arm_instr_call *ic) {
419 { uint64_t x=cpu->cd.arm.r[3]; if (cpu->cd.arm.flags & ARM_F_C) x |= 0x100000000ULL;return x >> 1; }
420 }
421 uint32_t arm_r_r4_t6_c0(struct cpu *cpu, struct arm_instr_call *ic) {
422 { uint64_t x=cpu->cd.arm.r[4]; if (cpu->cd.arm.flags & ARM_F_C) x |= 0x100000000ULL;return x >> 1; }
423 }
424 uint32_t arm_r_r5_t6_c0(struct cpu *cpu, struct arm_instr_call *ic) {
425 { uint64_t x=cpu->cd.arm.r[5]; if (cpu->cd.arm.flags & ARM_F_C) x |= 0x100000000ULL;return x >> 1; }
426 }
427 uint32_t arm_r_r6_t6_c0(struct cpu *cpu, struct arm_instr_call *ic) {
428 { uint64_t x=cpu->cd.arm.r[6]; if (cpu->cd.arm.flags & ARM_F_C) x |= 0x100000000ULL;return x >> 1; }
429 }
430 uint32_t arm_r_r7_t6_c0(struct cpu *cpu, struct arm_instr_call *ic) {
431 { uint64_t x=cpu->cd.arm.r[7]; if (cpu->cd.arm.flags & ARM_F_C) x |= 0x100000000ULL;return x >> 1; }
432 }
433 uint32_t arm_r_r8_t6_c0(struct cpu *cpu, struct arm_instr_call *ic) {
434 { uint64_t x=cpu->cd.arm.r[8]; if (cpu->cd.arm.flags & ARM_F_C) x |= 0x100000000ULL;return x >> 1; }
435 }
436 uint32_t arm_r_r9_t6_c0(struct cpu *cpu, struct arm_instr_call *ic) {
437 { uint64_t x=cpu->cd.arm.r[9]; if (cpu->cd.arm.flags & ARM_F_C) x |= 0x100000000ULL;return x >> 1; }
438 }
439 uint32_t arm_r_r10_t6_c0(struct cpu *cpu, struct arm_instr_call *ic) {
440 { uint64_t x=cpu->cd.arm.r[10]; if (cpu->cd.arm.flags & ARM_F_C) x |= 0x100000000ULL;return x >> 1; }
441 }
442 uint32_t arm_r_r11_t6_c0(struct cpu *cpu, struct arm_instr_call *ic) {
443 { uint64_t x=cpu->cd.arm.r[11]; if (cpu->cd.arm.flags & ARM_F_C) x |= 0x100000000ULL;return x >> 1; }
444 }
445 uint32_t arm_r_r12_t6_c0(struct cpu *cpu, struct arm_instr_call *ic) {
446 { uint64_t x=cpu->cd.arm.r[12]; if (cpu->cd.arm.flags & ARM_F_C) x |= 0x100000000ULL;return x >> 1; }
447 }
448 uint32_t arm_r_r13_t6_c0(struct cpu *cpu, struct arm_instr_call *ic) {
449 { uint64_t x=cpu->cd.arm.r[13]; if (cpu->cd.arm.flags & ARM_F_C) x |= 0x100000000ULL;return x >> 1; }
450 }
451 uint32_t arm_r_r14_t6_c0(struct cpu *cpu, struct arm_instr_call *ic) {
452 { uint64_t x=cpu->cd.arm.r[14]; if (cpu->cd.arm.flags & ARM_F_C) x |= 0x100000000ULL;return x >> 1; }
453 }
454 uint32_t arm_r_r15_t6_c0(struct cpu *cpu, struct arm_instr_call *ic) {
455  uint32_t tmp, low_pc = ((size_t)ic - (size_t)
456  cpu->cd.arm.cur_ic_page)/sizeof(struct arm_instr_call);
457  tmp = cpu->pc & ~((ARM_IC_ENTRIES_PER_PAGE-1) <<
459  tmp += (low_pc << ARM_INSTR_ALIGNMENT_SHIFT) + 8;
460 { uint64_t x=tmp; if (cpu->cd.arm.flags & ARM_F_C) x |= 0x100000000ULL;return x >> 1; }
461 }
462 uint32_t arm_r_r0_t7_c0(struct cpu *cpu, struct arm_instr_call *ic) {
463 { int y=cpu->cd.arm.r[0]&31;
464 uint64_t x=cpu->cd.arm.r[0]; x |= (x << 32); return (x >> y); } }
465 uint32_t arm_r_r1_t7_c0(struct cpu *cpu, struct arm_instr_call *ic) {
466 { int y=cpu->cd.arm.r[0]&31;
467 uint64_t x=cpu->cd.arm.r[1]; x |= (x << 32); return (x >> y); } }
468 uint32_t arm_r_r2_t7_c0(struct cpu *cpu, struct arm_instr_call *ic) {
469 { int y=cpu->cd.arm.r[0]&31;
470 uint64_t x=cpu->cd.arm.r[2]; x |= (x << 32); return (x >> y); } }
471 uint32_t arm_r_r3_t7_c0(struct cpu *cpu, struct arm_instr_call *ic) {
472 { int y=cpu->cd.arm.r[0]&31;
473 uint64_t x=cpu->cd.arm.r[3]; x |= (x << 32); return (x >> y); } }
474 uint32_t arm_r_r4_t7_c0(struct cpu *cpu, struct arm_instr_call *ic) {
475 { int y=cpu->cd.arm.r[0]&31;
476 uint64_t x=cpu->cd.arm.r[4]; x |= (x << 32); return (x >> y); } }
477 uint32_t arm_r_r5_t7_c0(struct cpu *cpu, struct arm_instr_call *ic) {
478 { int y=cpu->cd.arm.r[0]&31;
479 uint64_t x=cpu->cd.arm.r[5]; x |= (x << 32); return (x >> y); } }
480 uint32_t arm_r_r6_t7_c0(struct cpu *cpu, struct arm_instr_call *ic) {
481 { int y=cpu->cd.arm.r[0]&31;
482 uint64_t x=cpu->cd.arm.r[6]; x |= (x << 32); return (x >> y); } }
483 uint32_t arm_r_r7_t7_c0(struct cpu *cpu, struct arm_instr_call *ic) {
484 { int y=cpu->cd.arm.r[0]&31;
485 uint64_t x=cpu->cd.arm.r[7]; x |= (x << 32); return (x >> y); } }
486 uint32_t arm_r_r8_t7_c0(struct cpu *cpu, struct arm_instr_call *ic) {
487 { int y=cpu->cd.arm.r[0]&31;
488 uint64_t x=cpu->cd.arm.r[8]; x |= (x << 32); return (x >> y); } }
489 uint32_t arm_r_r9_t7_c0(struct cpu *cpu, struct arm_instr_call *ic) {
490 { int y=cpu->cd.arm.r[0]&31;
491 uint64_t x=cpu->cd.arm.r[9]; x |= (x << 32); return (x >> y); } }
492 uint32_t arm_r_r10_t7_c0(struct cpu *cpu, struct arm_instr_call *ic) {
493 { int y=cpu->cd.arm.r[0]&31;
494 uint64_t x=cpu->cd.arm.r[10]; x |= (x << 32); return (x >> y); } }
495 uint32_t arm_r_r11_t7_c0(struct cpu *cpu, struct arm_instr_call *ic) {
496 { int y=cpu->cd.arm.r[0]&31;
497 uint64_t x=cpu->cd.arm.r[11]; x |= (x << 32); return (x >> y); } }
498 uint32_t arm_r_r12_t7_c0(struct cpu *cpu, struct arm_instr_call *ic) {
499 { int y=cpu->cd.arm.r[0]&31;
500 uint64_t x=cpu->cd.arm.r[12]; x |= (x << 32); return (x >> y); } }
501 uint32_t arm_r_r13_t7_c0(struct cpu *cpu, struct arm_instr_call *ic) {
502 { int y=cpu->cd.arm.r[0]&31;
503 uint64_t x=cpu->cd.arm.r[13]; x |= (x << 32); return (x >> y); } }
504 uint32_t arm_r_r14_t7_c0(struct cpu *cpu, struct arm_instr_call *ic) {
505 { int y=cpu->cd.arm.r[0]&31;
506 uint64_t x=cpu->cd.arm.r[14]; x |= (x << 32); return (x >> y); } }
507 uint32_t arm_r_r15_t7_c0(struct cpu *cpu, struct arm_instr_call *ic) {
508  uint32_t tmp, low_pc = ((size_t)ic - (size_t)
509  cpu->cd.arm.cur_ic_page)/sizeof(struct arm_instr_call);
510  tmp = cpu->pc & ~((ARM_IC_ENTRIES_PER_PAGE-1) <<
512  tmp += (low_pc << ARM_INSTR_ALIGNMENT_SHIFT) + 8;
513 { int y=cpu->cd.arm.r[0]&31;
514 uint64_t x=tmp; x |= (x << 32); return (x >> y); } }
515 uint32_t arm_r_r0_t0_c1(struct cpu *cpu, struct arm_instr_call *ic) {
516  return cpu->cd.arm.r[0] << 1;
517 }
518 uint32_t arm_r_r1_t0_c1(struct cpu *cpu, struct arm_instr_call *ic) {
519  return cpu->cd.arm.r[1] << 1;
520 }
521 uint32_t arm_r_r2_t0_c1(struct cpu *cpu, struct arm_instr_call *ic) {
522  return cpu->cd.arm.r[2] << 1;
523 }
524 uint32_t arm_r_r3_t0_c1(struct cpu *cpu, struct arm_instr_call *ic) {
525  return cpu->cd.arm.r[3] << 1;
526 }
527 uint32_t arm_r_r4_t0_c1(struct cpu *cpu, struct arm_instr_call *ic) {
528  return cpu->cd.arm.r[4] << 1;
529 }
530 uint32_t arm_r_r5_t0_c1(struct cpu *cpu, struct arm_instr_call *ic) {
531  return cpu->cd.arm.r[5] << 1;
532 }
533 uint32_t arm_r_r6_t0_c1(struct cpu *cpu, struct arm_instr_call *ic) {
534  return cpu->cd.arm.r[6] << 1;
535 }
536 uint32_t arm_r_r7_t0_c1(struct cpu *cpu, struct arm_instr_call *ic) {
537  return cpu->cd.arm.r[7] << 1;
538 }
539 uint32_t arm_r_r8_t0_c1(struct cpu *cpu, struct arm_instr_call *ic) {
540  return cpu->cd.arm.r[8] << 1;
541 }
542 uint32_t arm_r_r9_t0_c1(struct cpu *cpu, struct arm_instr_call *ic) {
543  return cpu->cd.arm.r[9] << 1;
544 }
545 uint32_t arm_r_r10_t0_c1(struct cpu *cpu, struct arm_instr_call *ic) {
546  return cpu->cd.arm.r[10] << 1;
547 }
548 uint32_t arm_r_r11_t0_c1(struct cpu *cpu, struct arm_instr_call *ic) {
549  return cpu->cd.arm.r[11] << 1;
550 }
551 uint32_t arm_r_r12_t0_c1(struct cpu *cpu, struct arm_instr_call *ic) {
552  return cpu->cd.arm.r[12] << 1;
553 }
554 uint32_t arm_r_r13_t0_c1(struct cpu *cpu, struct arm_instr_call *ic) {
555  return cpu->cd.arm.r[13] << 1;
556 }
557 uint32_t arm_r_r14_t0_c1(struct cpu *cpu, struct arm_instr_call *ic) {
558  return cpu->cd.arm.r[14] << 1;
559 }
560 uint32_t arm_r_r15_t0_c1(struct cpu *cpu, struct arm_instr_call *ic) {
561  uint32_t tmp, low_pc = ((size_t)ic - (size_t)
562  cpu->cd.arm.cur_ic_page)/sizeof(struct arm_instr_call);
563  tmp = cpu->pc & ~((ARM_IC_ENTRIES_PER_PAGE-1) <<
565  tmp += (low_pc << ARM_INSTR_ALIGNMENT_SHIFT) + 8;
566  return tmp << 1;
567 }
568 uint32_t arm_r_r0_t1_c1(struct cpu *cpu, struct arm_instr_call *ic) {
569 { uint32_t y = cpu->cd.arm.r[0] & 255;
570  uint32_t x =cpu->cd.arm.r[0];
571 if (y > 31) return 0; else x <<= y;
572 return x; }
573 }
574 uint32_t arm_r_r1_t1_c1(struct cpu *cpu, struct arm_instr_call *ic) {
575 { uint32_t y = cpu->cd.arm.r[0] & 255;
576  uint32_t x =cpu->cd.arm.r[1];
577 if (y > 31) return 0; else x <<= y;
578 return x; }
579 }
580 uint32_t arm_r_r2_t1_c1(struct cpu *cpu, struct arm_instr_call *ic) {
581 { uint32_t y = cpu->cd.arm.r[0] & 255;
582  uint32_t x =cpu->cd.arm.r[2];
583 if (y > 31) return 0; else x <<= y;
584 return x; }
585 }
586 uint32_t arm_r_r3_t1_c1(struct cpu *cpu, struct arm_instr_call *ic) {
587 { uint32_t y = cpu->cd.arm.r[0] & 255;
588  uint32_t x =cpu->cd.arm.r[3];
589 if (y > 31) return 0; else x <<= y;
590 return x; }
591 }
592 uint32_t arm_r_r4_t1_c1(struct cpu *cpu, struct arm_instr_call *ic) {
593 { uint32_t y = cpu->cd.arm.r[0] & 255;
594  uint32_t x =cpu->cd.arm.r[4];
595 if (y > 31) return 0; else x <<= y;
596 return x; }
597 }
598 uint32_t arm_r_r5_t1_c1(struct cpu *cpu, struct arm_instr_call *ic) {
599 { uint32_t y = cpu->cd.arm.r[0] & 255;
600  uint32_t x =cpu->cd.arm.r[5];
601 if (y > 31) return 0; else x <<= y;
602 return x; }
603 }
604 uint32_t arm_r_r6_t1_c1(struct cpu *cpu, struct arm_instr_call *ic) {
605 { uint32_t y = cpu->cd.arm.r[0] & 255;
606  uint32_t x =cpu->cd.arm.r[6];
607 if (y > 31) return 0; else x <<= y;
608 return x; }
609 }
610 uint32_t arm_r_r7_t1_c1(struct cpu *cpu, struct arm_instr_call *ic) {
611 { uint32_t y = cpu->cd.arm.r[0] & 255;
612  uint32_t x =cpu->cd.arm.r[7];
613 if (y > 31) return 0; else x <<= y;
614 return x; }
615 }
616 uint32_t arm_r_r8_t1_c1(struct cpu *cpu, struct arm_instr_call *ic) {
617 { uint32_t y = cpu->cd.arm.r[0] & 255;
618  uint32_t x =cpu->cd.arm.r[8];
619 if (y > 31) return 0; else x <<= y;
620 return x; }
621 }
622 uint32_t arm_r_r9_t1_c1(struct cpu *cpu, struct arm_instr_call *ic) {
623 { uint32_t y = cpu->cd.arm.r[0] & 255;
624  uint32_t x =cpu->cd.arm.r[9];
625 if (y > 31) return 0; else x <<= y;
626 return x; }
627 }
628 uint32_t arm_r_r10_t1_c1(struct cpu *cpu, struct arm_instr_call *ic) {
629 { uint32_t y = cpu->cd.arm.r[0] & 255;
630  uint32_t x =cpu->cd.arm.r[10];
631 if (y > 31) return 0; else x <<= y;
632 return x; }
633 }
634 uint32_t arm_r_r11_t1_c1(struct cpu *cpu, struct arm_instr_call *ic) {
635 { uint32_t y = cpu->cd.arm.r[0] & 255;
636  uint32_t x =cpu->cd.arm.r[11];
637 if (y > 31) return 0; else x <<= y;
638 return x; }
639 }
640 uint32_t arm_r_r12_t1_c1(struct cpu *cpu, struct arm_instr_call *ic) {
641 { uint32_t y = cpu->cd.arm.r[0] & 255;
642  uint32_t x =cpu->cd.arm.r[12];
643 if (y > 31) return 0; else x <<= y;
644 return x; }
645 }
646 uint32_t arm_r_r13_t1_c1(struct cpu *cpu, struct arm_instr_call *ic) {
647 { uint32_t y = cpu->cd.arm.r[0] & 255;
648  uint32_t x =cpu->cd.arm.r[13];
649 if (y > 31) return 0; else x <<= y;
650 return x; }
651 }
652 uint32_t arm_r_r14_t1_c1(struct cpu *cpu, struct arm_instr_call *ic) {
653 { uint32_t y = cpu->cd.arm.r[0] & 255;
654  uint32_t x =cpu->cd.arm.r[14];
655 if (y > 31) return 0; else x <<= y;
656 return x; }
657 }
658 uint32_t arm_r_r15_t1_c1(struct cpu *cpu, struct arm_instr_call *ic) {
659  uint32_t tmp, low_pc = ((size_t)ic - (size_t)
660  cpu->cd.arm.cur_ic_page)/sizeof(struct arm_instr_call);
661  tmp = cpu->pc & ~((ARM_IC_ENTRIES_PER_PAGE-1) <<
663  tmp += (low_pc << ARM_INSTR_ALIGNMENT_SHIFT) + 8;
664 { uint32_t y = cpu->cd.arm.r[0] & 255;
665  uint32_t x =tmp;
666 if (y > 31) return 0; else x <<= y;
667 return x; }
668 }
669 uint32_t arm_r_r0_t2_c1(struct cpu *cpu, struct arm_instr_call *ic) {
670  return cpu->cd.arm.r[0] >> 1;
671 }
672 uint32_t arm_r_r1_t2_c1(struct cpu *cpu, struct arm_instr_call *ic) {
673  return cpu->cd.arm.r[1] >> 1;
674 }
675 uint32_t arm_r_r2_t2_c1(struct cpu *cpu, struct arm_instr_call *ic) {
676  return cpu->cd.arm.r[2] >> 1;
677 }
678 uint32_t arm_r_r3_t2_c1(struct cpu *cpu, struct arm_instr_call *ic) {
679  return cpu->cd.arm.r[3] >> 1;
680 }
681 uint32_t arm_r_r4_t2_c1(struct cpu *cpu, struct arm_instr_call *ic) {
682  return cpu->cd.arm.r[4] >> 1;
683 }
684 uint32_t arm_r_r5_t2_c1(struct cpu *cpu, struct arm_instr_call *ic) {
685  return cpu->cd.arm.r[5] >> 1;
686 }
687 uint32_t arm_r_r6_t2_c1(struct cpu *cpu, struct arm_instr_call *ic) {
688  return cpu->cd.arm.r[6] >> 1;
689 }
690 uint32_t arm_r_r7_t2_c1(struct cpu *cpu, struct arm_instr_call *ic) {
691  return cpu->cd.arm.r[7] >> 1;
692 }
693 uint32_t arm_r_r8_t2_c1(struct cpu *cpu, struct arm_instr_call *ic) {
694  return cpu->cd.arm.r[8] >> 1;
695 }
696 uint32_t arm_r_r9_t2_c1(struct cpu *cpu, struct arm_instr_call *ic) {
697  return cpu->cd.arm.r[9] >> 1;
698 }
699 uint32_t arm_r_r10_t2_c1(struct cpu *cpu, struct arm_instr_call *ic) {
700  return cpu->cd.arm.r[10] >> 1;
701 }
702 uint32_t arm_r_r11_t2_c1(struct cpu *cpu, struct arm_instr_call *ic) {
703  return cpu->cd.arm.r[11] >> 1;
704 }
705 uint32_t arm_r_r12_t2_c1(struct cpu *cpu, struct arm_instr_call *ic) {
706  return cpu->cd.arm.r[12] >> 1;
707 }
708 uint32_t arm_r_r13_t2_c1(struct cpu *cpu, struct arm_instr_call *ic) {
709  return cpu->cd.arm.r[13] >> 1;
710 }
711 uint32_t arm_r_r14_t2_c1(struct cpu *cpu, struct arm_instr_call *ic) {
712  return cpu->cd.arm.r[14] >> 1;
713 }
714 uint32_t arm_r_r15_t2_c1(struct cpu *cpu, struct arm_instr_call *ic) {
715  uint32_t tmp, low_pc = ((size_t)ic - (size_t)
716  cpu->cd.arm.cur_ic_page)/sizeof(struct arm_instr_call);
717  tmp = cpu->pc & ~((ARM_IC_ENTRIES_PER_PAGE-1) <<
719  tmp += (low_pc << ARM_INSTR_ALIGNMENT_SHIFT) + 8;
720  return tmp >> 1;
721 }
722 uint32_t arm_r_r0_t3_c1(struct cpu *cpu, struct arm_instr_call *ic) {
723 { uint32_t y=cpu->cd.arm.r[0]&255;
724 uint32_t x=cpu->cd.arm.r[0]; if (y>=32) return 0;
725 return x >> y; } }
726 uint32_t arm_r_r1_t3_c1(struct cpu *cpu, struct arm_instr_call *ic) {
727 { uint32_t y=cpu->cd.arm.r[0]&255;
728 uint32_t x=cpu->cd.arm.r[1]; if (y>=32) return 0;
729 return x >> y; } }
730 uint32_t arm_r_r2_t3_c1(struct cpu *cpu, struct arm_instr_call *ic) {
731 { uint32_t y=cpu->cd.arm.r[0]&255;
732 uint32_t x=cpu->cd.arm.r[2]; if (y>=32) return 0;
733 return x >> y; } }
734 uint32_t arm_r_r3_t3_c1(struct cpu *cpu, struct arm_instr_call *ic) {
735 { uint32_t y=cpu->cd.arm.r[0]&255;
736 uint32_t x=cpu->cd.arm.r[3]; if (y>=32) return 0;
737 return x >> y; } }
738 uint32_t arm_r_r4_t3_c1(struct cpu *cpu, struct arm_instr_call *ic) {
739 { uint32_t y=cpu->cd.arm.r[0]&255;
740 uint32_t x=cpu->cd.arm.r[4]; if (y>=32) return 0;
741 return x >> y; } }
742 uint32_t arm_r_r5_t3_c1(struct cpu *cpu, struct arm_instr_call *ic) {
743 { uint32_t y=cpu->cd.arm.r[0]&255;
744 uint32_t x=cpu->cd.arm.r[5]; if (y>=32) return 0;
745 return x >> y; } }
746 uint32_t arm_r_r6_t3_c1(struct cpu *cpu, struct arm_instr_call *ic) {
747 { uint32_t y=cpu->cd.arm.r[0]&255;
748 uint32_t x=cpu->cd.arm.r[6]; if (y>=32) return 0;
749 return x >> y; } }
750 uint32_t arm_r_r7_t3_c1(struct cpu *cpu, struct arm_instr_call *ic) {
751 { uint32_t y=cpu->cd.arm.r[0]&255;
752 uint32_t x=cpu->cd.arm.r[7]; if (y>=32) return 0;
753 return x >> y; } }
754 uint32_t arm_r_r8_t3_c1(struct cpu *cpu, struct arm_instr_call *ic) {
755 { uint32_t y=cpu->cd.arm.r[0]&255;
756 uint32_t x=cpu->cd.arm.r[8]; if (y>=32) return 0;
757 return x >> y; } }
758 uint32_t arm_r_r9_t3_c1(struct cpu *cpu, struct arm_instr_call *ic) {
759 { uint32_t y=cpu->cd.arm.r[0]&255;
760 uint32_t x=cpu->cd.arm.r[9]; if (y>=32) return 0;
761 return x >> y; } }
762 uint32_t arm_r_r10_t3_c1(struct cpu *cpu, struct arm_instr_call *ic) {
763 { uint32_t y=cpu->cd.arm.r[0]&255;
764 uint32_t x=cpu->cd.arm.r[10]; if (y>=32) return 0;
765 return x >> y; } }
766 uint32_t arm_r_r11_t3_c1(struct cpu *cpu, struct arm_instr_call *ic) {
767 { uint32_t y=cpu->cd.arm.r[0]&255;
768 uint32_t x=cpu->cd.arm.r[11]; if (y>=32) return 0;
769 return x >> y; } }
770 uint32_t arm_r_r12_t3_c1(struct cpu *cpu, struct arm_instr_call *ic) {
771 { uint32_t y=cpu->cd.arm.r[0]&255;
772 uint32_t x=cpu->cd.arm.r[12]; if (y>=32) return 0;
773 return x >> y; } }
774 uint32_t arm_r_r13_t3_c1(struct cpu *cpu, struct arm_instr_call *ic) {
775 { uint32_t y=cpu->cd.arm.r[0]&255;
776 uint32_t x=cpu->cd.arm.r[13]; if (y>=32) return 0;
777 return x >> y; } }
778 uint32_t arm_r_r14_t3_c1(struct cpu *cpu, struct arm_instr_call *ic) {
779 { uint32_t y=cpu->cd.arm.r[0]&255;
780 uint32_t x=cpu->cd.arm.r[14]; if (y>=32) return 0;
781 return x >> y; } }
782 uint32_t arm_r_r15_t3_c1(struct cpu *cpu, struct arm_instr_call *ic) {
783  uint32_t tmp, low_pc = ((size_t)ic - (size_t)
784  cpu->cd.arm.cur_ic_page)/sizeof(struct arm_instr_call);
785  tmp = cpu->pc & ~((ARM_IC_ENTRIES_PER_PAGE-1) <<
787  tmp += (low_pc << ARM_INSTR_ALIGNMENT_SHIFT) + 8;
788 { uint32_t y=cpu->cd.arm.r[0]&255;
789 uint32_t x=tmp; if (y>=32) return 0;
790 return x >> y; } }
791 uint32_t arm_r_r0_t4_c1(struct cpu *cpu, struct arm_instr_call *ic) {
792 return (int32_t)cpu->cd.arm.r[0] >> 1;
793 }
794 uint32_t arm_r_r1_t4_c1(struct cpu *cpu, struct arm_instr_call *ic) {
795 return (int32_t)cpu->cd.arm.r[1] >> 1;
796 }
797 uint32_t arm_r_r2_t4_c1(struct cpu *cpu, struct arm_instr_call *ic) {
798 return (int32_t)cpu->cd.arm.r[2] >> 1;
799 }
800 uint32_t arm_r_r3_t4_c1(struct cpu *cpu, struct arm_instr_call *ic) {
801 return (int32_t)cpu->cd.arm.r[3] >> 1;
802 }
803 uint32_t arm_r_r4_t4_c1(struct cpu *cpu, struct arm_instr_call *ic) {
804 return (int32_t)cpu->cd.arm.r[4] >> 1;
805 }
806 uint32_t arm_r_r5_t4_c1(struct cpu *cpu, struct arm_instr_call *ic) {
807 return (int32_t)cpu->cd.arm.r[5] >> 1;
808 }
809 uint32_t arm_r_r6_t4_c1(struct cpu *cpu, struct arm_instr_call *ic) {
810 return (int32_t)cpu->cd.arm.r[6] >> 1;
811 }
812 uint32_t arm_r_r7_t4_c1(struct cpu *cpu, struct arm_instr_call *ic) {
813 return (int32_t)cpu->cd.arm.r[7] >> 1;
814 }
815 uint32_t arm_r_r8_t4_c1(struct cpu *cpu, struct arm_instr_call *ic) {
816 return (int32_t)cpu->cd.arm.r[8] >> 1;
817 }
818 uint32_t arm_r_r9_t4_c1(struct cpu *cpu, struct arm_instr_call *ic) {
819 return (int32_t)cpu->cd.arm.r[9] >> 1;
820 }
821 uint32_t arm_r_r10_t4_c1(struct cpu *cpu, struct arm_instr_call *ic) {
822 return (int32_t)cpu->cd.arm.r[10] >> 1;
823 }
824 uint32_t arm_r_r11_t4_c1(struct cpu *cpu, struct arm_instr_call *ic) {
825 return (int32_t)cpu->cd.arm.r[11] >> 1;
826 }
827 uint32_t arm_r_r12_t4_c1(struct cpu *cpu, struct arm_instr_call *ic) {
828 return (int32_t)cpu->cd.arm.r[12] >> 1;
829 }
830 uint32_t arm_r_r13_t4_c1(struct cpu *cpu, struct arm_instr_call *ic) {
831 return (int32_t)cpu->cd.arm.r[13] >> 1;
832 }
833 uint32_t arm_r_r14_t4_c1(struct cpu *cpu, struct arm_instr_call *ic) {
834 return (int32_t)cpu->cd.arm.r[14] >> 1;
835 }
836 uint32_t arm_r_r15_t4_c1(struct cpu *cpu, struct arm_instr_call *ic) {
837  uint32_t tmp, low_pc = ((size_t)ic - (size_t)
838  cpu->cd.arm.cur_ic_page)/sizeof(struct arm_instr_call);
839  tmp = cpu->pc & ~((ARM_IC_ENTRIES_PER_PAGE-1) <<
841  tmp += (low_pc << ARM_INSTR_ALIGNMENT_SHIFT) + 8;
842 return (int32_t)tmp >> 1;
843 }
844 uint32_t arm_r_r0_t5_c1(struct cpu *cpu, struct arm_instr_call *ic) {
845 { int32_t y=cpu->cd.arm.r[0]&255;
846 int32_t x=cpu->cd.arm.r[0]; if (y>=31) return (x<0)?0xffffffff:0;
847 return (int32_t)x >> y; } }
848 uint32_t arm_r_r1_t5_c1(struct cpu *cpu, struct arm_instr_call *ic) {
849 { int32_t y=cpu->cd.arm.r[0]&255;
850 int32_t x=cpu->cd.arm.r[1]; if (y>=31) return (x<0)?0xffffffff:0;
851 return (int32_t)x >> y; } }
852 uint32_t arm_r_r2_t5_c1(struct cpu *cpu, struct arm_instr_call *ic) {
853 { int32_t y=cpu->cd.arm.r[0]&255;
854 int32_t x=cpu->cd.arm.r[2]; if (y>=31) return (x<0)?0xffffffff:0;
855 return (int32_t)x >> y; } }
856 uint32_t arm_r_r3_t5_c1(struct cpu *cpu, struct arm_instr_call *ic) {
857 { int32_t y=cpu->cd.arm.r[0]&255;
858 int32_t x=cpu->cd.arm.r[3]; if (y>=31) return (x<0)?0xffffffff:0;
859 return (int32_t)x >> y; } }
860 uint32_t arm_r_r4_t5_c1(struct cpu *cpu, struct arm_instr_call *ic) {
861 { int32_t y=cpu->cd.arm.r[0]&255;
862 int32_t x=cpu->cd.arm.r[4]; if (y>=31) return (x<0)?0xffffffff:0;
863 return (int32_t)x >> y; } }
864 uint32_t arm_r_r5_t5_c1(struct cpu *cpu, struct arm_instr_call *ic) {
865 { int32_t y=cpu->cd.arm.r[0]&255;
866 int32_t x=cpu->cd.arm.r[5]; if (y>=31) return (x<0)?0xffffffff:0;
867 return (int32_t)x >> y; } }
868 uint32_t arm_r_r6_t5_c1(struct cpu *cpu, struct arm_instr_call *ic) {
869 { int32_t y=cpu->cd.arm.r[0]&255;
870 int32_t x=cpu->cd.arm.r[6]; if (y>=31) return (x<0)?0xffffffff:0;
871 return (int32_t)x >> y; } }
872 uint32_t arm_r_r7_t5_c1(struct cpu *cpu, struct arm_instr_call *ic) {
873 { int32_t y=cpu->cd.arm.r[0]&255;
874 int32_t x=cpu->cd.arm.r[7]; if (y>=31) return (x<0)?0xffffffff:0;
875 return (int32_t)x >> y; } }
876 uint32_t arm_r_r8_t5_c1(struct cpu *cpu, struct arm_instr_call *ic) {
877 { int32_t y=cpu->cd.arm.r[0]&255;
878 int32_t x=cpu->cd.arm.r[8]; if (y>=31) return (x<0)?0xffffffff:0;
879 return (int32_t)x >> y; } }
880 uint32_t arm_r_r9_t5_c1(struct cpu *cpu, struct arm_instr_call *ic) {
881 { int32_t y=cpu->cd.arm.r[0]&255;
882 int32_t x=cpu->cd.arm.r[9]; if (y>=31) return (x<0)?0xffffffff:0;
883 return (int32_t)x >> y; } }
884 uint32_t arm_r_r10_t5_c1(struct cpu *cpu, struct arm_instr_call *ic) {
885 { int32_t y=cpu->cd.arm.r[0]&255;
886 int32_t x=cpu->cd.arm.r[10]; if (y>=31) return (x<0)?0xffffffff:0;
887 return (int32_t)x >> y; } }
888 uint32_t arm_r_r11_t5_c1(struct cpu *cpu, struct arm_instr_call *ic) {
889 { int32_t y=cpu->cd.arm.r[0]&255;
890 int32_t x=cpu->cd.arm.r[11]; if (y>=31) return (x<0)?0xffffffff:0;
891 return (int32_t)x >> y; } }
892 uint32_t arm_r_r12_t5_c1(struct cpu *cpu, struct arm_instr_call *ic) {
893 { int32_t y=cpu->cd.arm.r[0]&255;
894 int32_t x=cpu->cd.arm.r[12]; if (y>=31) return (x<0)?0xffffffff:0;
895 return (int32_t)x >> y; } }
896 uint32_t arm_r_r13_t5_c1(struct cpu *cpu, struct arm_instr_call *ic) {
897 { int32_t y=cpu->cd.arm.r[0]&255;
898 int32_t x=cpu->cd.arm.r[13]; if (y>=31) return (x<0)?0xffffffff:0;
899 return (int32_t)x >> y; } }
900 uint32_t arm_r_r14_t5_c1(struct cpu *cpu, struct arm_instr_call *ic) {
901 { int32_t y=cpu->cd.arm.r[0]&255;
902 int32_t x=cpu->cd.arm.r[14]; if (y>=31) return (x<0)?0xffffffff:0;
903 return (int32_t)x >> y; } }
904 uint32_t arm_r_r15_t5_c1(struct cpu *cpu, struct arm_instr_call *ic) {
905  uint32_t tmp, low_pc = ((size_t)ic - (size_t)
906  cpu->cd.arm.cur_ic_page)/sizeof(struct arm_instr_call);
907  tmp = cpu->pc & ~((ARM_IC_ENTRIES_PER_PAGE-1) <<
909  tmp += (low_pc << ARM_INSTR_ALIGNMENT_SHIFT) + 8;
910 { int32_t y=cpu->cd.arm.r[0]&255;
911 int32_t x=tmp; if (y>=31) return (x<0)?0xffffffff:0;
912 return (int32_t)x >> y; } }
913 uint32_t arm_r_r0_t6_c1(struct cpu *cpu, struct arm_instr_call *ic) {
914 { uint64_t x=cpu->cd.arm.r[0]; x |= (x << 32); return x >> 1; }
915 }
916 uint32_t arm_r_r1_t6_c1(struct cpu *cpu, struct arm_instr_call *ic) {
917 { uint64_t x=cpu->cd.arm.r[1]; x |= (x << 32); return x >> 1; }
918 }
919 uint32_t arm_r_r2_t6_c1(struct cpu *cpu, struct arm_instr_call *ic) {
920 { uint64_t x=cpu->cd.arm.r[2]; x |= (x << 32); return x >> 1; }
921 }
922 uint32_t arm_r_r3_t6_c1(struct cpu *cpu, struct arm_instr_call *ic) {
923 { uint64_t x=cpu->cd.arm.r[3]; x |= (x << 32); return x >> 1; }
924 }
925 uint32_t arm_r_r4_t6_c1(struct cpu *cpu, struct arm_instr_call *ic) {
926 { uint64_t x=cpu->cd.arm.r[4]; x |= (x << 32); return x >> 1; }
927 }
928 uint32_t arm_r_r5_t6_c1(struct cpu *cpu, struct arm_instr_call *ic) {
929 { uint64_t x=cpu->cd.arm.r[5]; x |= (x << 32); return x >> 1; }
930 }
931 uint32_t arm_r_r6_t6_c1(struct cpu *cpu, struct arm_instr_call *ic) {
932 { uint64_t x=cpu->cd.arm.r[6]; x |= (x << 32); return x >> 1; }
933 }
934 uint32_t arm_r_r7_t6_c1(struct cpu *cpu, struct arm_instr_call *ic) {
935 { uint64_t x=cpu->cd.arm.r[7]; x |= (x << 32); return x >> 1; }
936 }
937 uint32_t arm_r_r8_t6_c1(struct cpu *cpu, struct arm_instr_call *ic) {
938 { uint64_t x=cpu->cd.arm.r[8]; x |= (x << 32); return x >> 1; }
939 }
940 uint32_t arm_r_r9_t6_c1(struct cpu *cpu, struct arm_instr_call *ic) {
941 { uint64_t x=cpu->cd.arm.r[9]; x |= (x << 32); return x >> 1; }
942 }
943 uint32_t arm_r_r10_t6_c1(struct cpu *cpu, struct arm_instr_call *ic) {
944 { uint64_t x=cpu->cd.arm.r[10]; x |= (x << 32); return x >> 1; }
945 }
946 uint32_t arm_r_r11_t6_c1(struct cpu *cpu, struct arm_instr_call *ic) {
947 { uint64_t x=cpu->cd.arm.r[11]; x |= (x << 32); return x >> 1; }
948 }
949 uint32_t arm_r_r12_t6_c1(struct cpu *cpu, struct arm_instr_call *ic) {
950 { uint64_t x=cpu->cd.arm.r[12]; x |= (x << 32); return x >> 1; }
951 }
952 uint32_t arm_r_r13_t6_c1(struct cpu *cpu, struct arm_instr_call *ic) {
953 { uint64_t x=cpu->cd.arm.r[13]; x |= (x << 32); return x >> 1; }
954 }
955 uint32_t arm_r_r14_t6_c1(struct cpu *cpu, struct arm_instr_call *ic) {
956 { uint64_t x=cpu->cd.arm.r[14]; x |= (x << 32); return x >> 1; }
957 }
958 uint32_t arm_r_r15_t6_c1(struct cpu *cpu, struct arm_instr_call *ic) {
959  uint32_t tmp, low_pc = ((size_t)ic - (size_t)
960  cpu->cd.arm.cur_ic_page)/sizeof(struct arm_instr_call);
961  tmp = cpu->pc & ~((ARM_IC_ENTRIES_PER_PAGE-1) <<
963  tmp += (low_pc << ARM_INSTR_ALIGNMENT_SHIFT) + 8;
964 { uint64_t x=tmp; x |= (x << 32); return x >> 1; }
965 }
966 uint32_t arm_r_r0_t7_c1(struct cpu *cpu, struct arm_instr_call *ic) {
967 { int y=cpu->cd.arm.r[0]&31;
968 uint64_t x=cpu->cd.arm.r[0]; x |= (x << 32); return (x >> y); } }
969 uint32_t arm_r_r1_t7_c1(struct cpu *cpu, struct arm_instr_call *ic) {
970 { int y=cpu->cd.arm.r[0]&31;
971 uint64_t x=cpu->cd.arm.r[1]; x |= (x << 32); return (x >> y); } }
972 uint32_t arm_r_r2_t7_c1(struct cpu *cpu, struct arm_instr_call *ic) {
973 { int y=cpu->cd.arm.r[0]&31;
974 uint64_t x=cpu->cd.arm.r[2]; x |= (x << 32); return (x >> y); } }
975 uint32_t arm_r_r3_t7_c1(struct cpu *cpu, struct arm_instr_call *ic) {
976 { int y=cpu->cd.arm.r[0]&31;
977 uint64_t x=cpu->cd.arm.r[3]; x |= (x << 32); return (x >> y); } }
978 uint32_t arm_r_r4_t7_c1(struct cpu *cpu, struct arm_instr_call *ic) {
979 { int y=cpu->cd.arm.r[0]&31;
980 uint64_t x=cpu->cd.arm.r[4]; x |= (x << 32); return (x >> y); } }
981 uint32_t arm_r_r5_t7_c1(struct cpu *cpu, struct arm_instr_call *ic) {
982 { int y=cpu->cd.arm.r[0]&31;
983 uint64_t x=cpu->cd.arm.r[5]; x |= (x << 32); return (x >> y); } }
984 uint32_t arm_r_r6_t7_c1(struct cpu *cpu, struct arm_instr_call *ic) {
985 { int y=cpu->cd.arm.r[0]&31;
986 uint64_t x=cpu->cd.arm.r[6]; x |= (x << 32); return (x >> y); } }
987 uint32_t arm_r_r7_t7_c1(struct cpu *cpu, struct arm_instr_call *ic) {
988 { int y=cpu->cd.arm.r[0]&31;
989 uint64_t x=cpu->cd.arm.r[7]; x |= (x << 32); return (x >> y); } }
990 uint32_t arm_r_r8_t7_c1(struct cpu *cpu, struct arm_instr_call *ic) {
991 { int y=cpu->cd.arm.r[0]&31;
992 uint64_t x=cpu->cd.arm.r[8]; x |= (x << 32); return (x >> y); } }
993 uint32_t arm_r_r9_t7_c1(struct cpu *cpu, struct arm_instr_call *ic) {
994 { int y=cpu->cd.arm.r[0]&31;
995 uint64_t x=cpu->cd.arm.r[9]; x |= (x << 32); return (x >> y); } }
996 uint32_t arm_r_r10_t7_c1(struct cpu *cpu, struct arm_instr_call *ic) {
997 { int y=cpu->cd.arm.r[0]&31;
998 uint64_t x=cpu->cd.arm.r[10]; x |= (x << 32); return (x >> y); } }
999 uint32_t arm_r_r11_t7_c1(struct cpu *cpu, struct arm_instr_call *ic) {
1000 { int y=cpu->cd.arm.r[0]&31;
1001 uint64_t x=cpu->cd.arm.r[11]; x |= (x << 32); return (x >> y); } }
1002 uint32_t arm_r_r12_t7_c1(struct cpu *cpu, struct arm_instr_call *ic) {
1003 { int y=cpu->cd.arm.r[0]&31;
1004 uint64_t x=cpu->cd.arm.r[12]; x |= (x << 32); return (x >> y); } }
1005 uint32_t arm_r_r13_t7_c1(struct cpu *cpu, struct arm_instr_call *ic) {
1006 { int y=cpu->cd.arm.r[0]&31;
1007 uint64_t x=cpu->cd.arm.r[13]; x |= (x << 32); return (x >> y); } }
1008 uint32_t arm_r_r14_t7_c1(struct cpu *cpu, struct arm_instr_call *ic) {
1009 { int y=cpu->cd.arm.r[0]&31;
1010 uint64_t x=cpu->cd.arm.r[14]; x |= (x << 32); return (x >> y); } }
1011 uint32_t arm_r_r15_t7_c1(struct cpu *cpu, struct arm_instr_call *ic) {
1012  uint32_t tmp, low_pc = ((size_t)ic - (size_t)
1013  cpu->cd.arm.cur_ic_page)/sizeof(struct arm_instr_call);
1014  tmp = cpu->pc & ~((ARM_IC_ENTRIES_PER_PAGE-1) <<
1016  tmp += (low_pc << ARM_INSTR_ALIGNMENT_SHIFT) + 8;
1017 { int y=cpu->cd.arm.r[0]&31;
1018 uint64_t x=tmp; x |= (x << 32); return (x >> y); } }
1019 uint32_t arm_rs_r0_t0_c0(struct cpu *cpu, struct arm_instr_call *ic) {
1020 { uint32_t x = cpu->cd.arm.r[0];
1021  return x; }
1022 }
1023 uint32_t arm_rs_r1_t0_c0(struct cpu *cpu, struct arm_instr_call *ic) {
1024 { uint32_t x = cpu->cd.arm.r[1];
1025  return x; }
1026 }
1027 uint32_t arm_rs_r2_t0_c0(struct cpu *cpu, struct arm_instr_call *ic) {
1028 { uint32_t x = cpu->cd.arm.r[2];
1029  return x; }
1030 }
1031 uint32_t arm_rs_r3_t0_c0(struct cpu *cpu, struct arm_instr_call *ic) {
1032 { uint32_t x = cpu->cd.arm.r[3];
1033  return x; }
1034 }
1035 uint32_t arm_rs_r4_t0_c0(struct cpu *cpu, struct arm_instr_call *ic) {
1036 { uint32_t x = cpu->cd.arm.r[4];
1037  return x; }
1038 }
1039 uint32_t arm_rs_r5_t0_c0(struct cpu *cpu, struct arm_instr_call *ic) {
1040 { uint32_t x = cpu->cd.arm.r[5];
1041  return x; }
1042 }
1043 uint32_t arm_rs_r6_t0_c0(struct cpu *cpu, struct arm_instr_call *ic) {
1044 { uint32_t x = cpu->cd.arm.r[6];
1045  return x; }
1046 }
1047 uint32_t arm_rs_r7_t0_c0(struct cpu *cpu, struct arm_instr_call *ic) {
1048 { uint32_t x = cpu->cd.arm.r[7];
1049  return x; }
1050 }
1051 uint32_t arm_rs_r8_t0_c0(struct cpu *cpu, struct arm_instr_call *ic) {
1052 { uint32_t x = cpu->cd.arm.r[8];
1053  return x; }
1054 }
1055 uint32_t arm_rs_r9_t0_c0(struct cpu *cpu, struct arm_instr_call *ic) {
1056 { uint32_t x = cpu->cd.arm.r[9];
1057  return x; }
1058 }
1059 uint32_t arm_rs_r10_t0_c0(struct cpu *cpu, struct arm_instr_call *ic) {
1060 { uint32_t x = cpu->cd.arm.r[10];
1061  return x; }
1062 }
1063 uint32_t arm_rs_r11_t0_c0(struct cpu *cpu, struct arm_instr_call *ic) {
1064 { uint32_t x = cpu->cd.arm.r[11];
1065  return x; }
1066 }
1067 uint32_t arm_rs_r12_t0_c0(struct cpu *cpu, struct arm_instr_call *ic) {
1068 { uint32_t x = cpu->cd.arm.r[12];
1069  return x; }
1070 }
1071 uint32_t arm_rs_r13_t0_c0(struct cpu *cpu, struct arm_instr_call *ic) {
1072 { uint32_t x = cpu->cd.arm.r[13];
1073  return x; }
1074 }
1075 uint32_t arm_rs_r14_t0_c0(struct cpu *cpu, struct arm_instr_call *ic) {
1076 { uint32_t x = cpu->cd.arm.r[14];
1077  return x; }
1078 }
1079 uint32_t arm_rs_r15_t0_c0(struct cpu *cpu, struct arm_instr_call *ic) {
1080  uint32_t tmp, low_pc = ((size_t)ic - (size_t)
1081  cpu->cd.arm.cur_ic_page)/sizeof(struct arm_instr_call);
1082  tmp = cpu->pc & ~((ARM_IC_ENTRIES_PER_PAGE-1) <<
1084  tmp += (low_pc << ARM_INSTR_ALIGNMENT_SHIFT) + 8;
1085 { uint32_t x = tmp;
1086  return x; }
1087 }
1088 uint32_t arm_rs_r0_t1_c0(struct cpu *cpu, struct arm_instr_call *ic) {
1089 { uint32_t x = cpu->cd.arm.r[0];
1090  uint32_t y = cpu->cd.arm.r[0] & 255;
1091  if (y != 0) {
1092  cpu->cd.arm.flags &= ~ARM_F_C;
1093  if (y >= 32) return 0;
1094  x <<= (y - 1);
1095  if (x & 0x80000000)
1096  cpu->cd.arm.flags |= ARM_F_C;
1097  x <<= 1;
1098  }
1099  return x; }
1100 }
1101 uint32_t arm_rs_r1_t1_c0(struct cpu *cpu, struct arm_instr_call *ic) {
1102 { uint32_t x = cpu->cd.arm.r[1];
1103  uint32_t y = cpu->cd.arm.r[0] & 255;
1104  if (y != 0) {
1105  cpu->cd.arm.flags &= ~ARM_F_C;
1106  if (y >= 32) return 0;
1107  x <<= (y - 1);
1108  if (x & 0x80000000)
1109  cpu->cd.arm.flags |= ARM_F_C;
1110  x <<= 1;
1111  }
1112  return x; }
1113 }
1114 uint32_t arm_rs_r2_t1_c0(struct cpu *cpu, struct arm_instr_call *ic) {
1115 { uint32_t x = cpu->cd.arm.r[2];
1116  uint32_t y = cpu->cd.arm.r[0] & 255;
1117  if (y != 0) {
1118  cpu->cd.arm.flags &= ~ARM_F_C;
1119  if (y >= 32) return 0;
1120  x <<= (y - 1);
1121  if (x & 0x80000000)
1122  cpu->cd.arm.flags |= ARM_F_C;
1123  x <<= 1;
1124  }
1125  return x; }
1126 }
1127 uint32_t arm_rs_r3_t1_c0(struct cpu *cpu, struct arm_instr_call *ic) {
1128 { uint32_t x = cpu->cd.arm.r[3];
1129  uint32_t y = cpu->cd.arm.r[0] & 255;
1130  if (y != 0) {
1131  cpu->cd.arm.flags &= ~ARM_F_C;
1132  if (y >= 32) return 0;
1133  x <<= (y - 1);
1134  if (x & 0x80000000)
1135  cpu->cd.arm.flags |= ARM_F_C;
1136  x <<= 1;
1137  }
1138  return x; }
1139 }
1140 uint32_t arm_rs_r4_t1_c0(struct cpu *cpu, struct arm_instr_call *ic) {
1141 { uint32_t x = cpu->cd.arm.r[4];
1142  uint32_t y = cpu->cd.arm.r[0] & 255;
1143  if (y != 0) {
1144  cpu->cd.arm.flags &= ~ARM_F_C;
1145  if (y >= 32) return 0;
1146  x <<= (y - 1);
1147  if (x & 0x80000000)
1148  cpu->cd.arm.flags |= ARM_F_C;
1149  x <<= 1;
1150  }
1151  return x; }
1152 }
1153 uint32_t arm_rs_r5_t1_c0(struct cpu *cpu, struct arm_instr_call *ic) {
1154 { uint32_t x = cpu->cd.arm.r[5];
1155  uint32_t y = cpu->cd.arm.r[0] & 255;
1156  if (y != 0) {
1157  cpu->cd.arm.flags &= ~ARM_F_C;
1158  if (y >= 32) return 0;
1159  x <<= (y - 1);
1160  if (x & 0x80000000)
1161  cpu->cd.arm.flags |= ARM_F_C;
1162  x <<= 1;
1163  }
1164  return x; }
1165 }
1166 uint32_t arm_rs_r6_t1_c0(struct cpu *cpu, struct arm_instr_call *ic) {
1167 { uint32_t x = cpu->cd.arm.r[6];
1168  uint32_t y = cpu->cd.arm.r[0] & 255;
1169  if (y != 0) {
1170  cpu->cd.arm.flags &= ~ARM_F_C;
1171  if (y >= 32) return 0;
1172  x <<= (y - 1);
1173  if (x & 0x80000000)
1174  cpu->cd.arm.flags |= ARM_F_C;
1175  x <<= 1;
1176  }
1177  return x; }
1178 }
1179 uint32_t arm_rs_r7_t1_c0(struct cpu *cpu, struct arm_instr_call *ic) {
1180 { uint32_t x = cpu->cd.arm.r[7];
1181  uint32_t y = cpu->cd.arm.r[0] & 255;
1182  if (y != 0) {
1183  cpu->cd.arm.flags &= ~ARM_F_C;
1184  if (y >= 32) return 0;
1185  x <<= (y - 1);
1186  if (x & 0x80000000)
1187  cpu->cd.arm.flags |= ARM_F_C;
1188  x <<= 1;
1189  }
1190  return x; }
1191 }
1192 uint32_t arm_rs_r8_t1_c0(struct cpu *cpu, struct arm_instr_call *ic) {
1193 { uint32_t x = cpu->cd.arm.r[8];
1194  uint32_t y = cpu->cd.arm.r[0] & 255;
1195  if (y != 0) {
1196  cpu->cd.arm.flags &= ~ARM_F_C;
1197  if (y >= 32) return 0;
1198  x <<= (y - 1);
1199  if (x & 0x80000000)
1200  cpu->cd.arm.flags |= ARM_F_C;
1201  x <<= 1;
1202  }
1203  return x; }
1204 }
1205 uint32_t arm_rs_r9_t1_c0(struct cpu *cpu, struct arm_instr_call *ic) {
1206 { uint32_t x = cpu->cd.arm.r[9];
1207  uint32_t y = cpu->cd.arm.r[0] & 255;
1208  if (y != 0) {
1209  cpu->cd.arm.flags &= ~ARM_F_C;
1210  if (y >= 32) return 0;
1211  x <<= (y - 1);
1212  if (x & 0x80000000)
1213  cpu->cd.arm.flags |= ARM_F_C;
1214  x <<= 1;
1215  }
1216  return x; }
1217 }
1218 uint32_t arm_rs_r10_t1_c0(struct cpu *cpu, struct arm_instr_call *ic) {
1219 { uint32_t x = cpu->cd.arm.r[10];
1220  uint32_t y = cpu->cd.arm.r[0] & 255;
1221  if (y != 0) {
1222  cpu->cd.arm.flags &= ~ARM_F_C;
1223  if (y >= 32) return 0;
1224  x <<= (y - 1);
1225  if (x & 0x80000000)
1226  cpu->cd.arm.flags |= ARM_F_C;
1227  x <<= 1;
1228  }
1229  return x; }
1230 }
1231 uint32_t arm_rs_r11_t1_c0(struct cpu *cpu, struct arm_instr_call *ic) {
1232 { uint32_t x = cpu->cd.arm.r[11];
1233  uint32_t y = cpu->cd.arm.r[0] & 255;
1234  if (y != 0) {
1235  cpu->cd.arm.flags &= ~ARM_F_C;
1236  if (y >= 32) return 0;
1237  x <<= (y - 1);
1238  if (x & 0x80000000)
1239  cpu->cd.arm.flags |= ARM_F_C;
1240  x <<= 1;
1241  }
1242  return x; }
1243 }
1244 uint32_t arm_rs_r12_t1_c0(struct cpu *cpu, struct arm_instr_call *ic) {
1245 { uint32_t x = cpu->cd.arm.r[12];
1246  uint32_t y = cpu->cd.arm.r[0] & 255;
1247  if (y != 0) {
1248  cpu->cd.arm.flags &= ~ARM_F_C;
1249  if (y >= 32) return 0;
1250  x <<= (y - 1);
1251  if (x & 0x80000000)
1252  cpu->cd.arm.flags |= ARM_F_C;
1253  x <<= 1;
1254  }
1255  return x; }
1256 }
1257 uint32_t arm_rs_r13_t1_c0(struct cpu *cpu, struct arm_instr_call *ic) {
1258 { uint32_t x = cpu->cd.arm.r[13];
1259  uint32_t y = cpu->cd.arm.r[0] & 255;
1260  if (y != 0) {
1261  cpu->cd.arm.flags &= ~ARM_F_C;
1262  if (y >= 32) return 0;
1263  x <<= (y - 1);
1264  if (x & 0x80000000)
1265  cpu->cd.arm.flags |= ARM_F_C;
1266  x <<= 1;
1267  }
1268  return x; }
1269 }
1270 uint32_t arm_rs_r14_t1_c0(struct cpu *cpu, struct arm_instr_call *ic) {
1271 { uint32_t x = cpu->cd.arm.r[14];
1272  uint32_t y = cpu->cd.arm.r[0] & 255;
1273  if (y != 0) {
1274  cpu->cd.arm.flags &= ~ARM_F_C;
1275  if (y >= 32) return 0;
1276  x <<= (y - 1);
1277  if (x & 0x80000000)
1278  cpu->cd.arm.flags |= ARM_F_C;
1279  x <<= 1;
1280  }
1281  return x; }
1282 }
1283 uint32_t arm_rs_r15_t1_c0(struct cpu *cpu, struct arm_instr_call *ic) {
1284  uint32_t tmp, low_pc = ((size_t)ic - (size_t)
1285  cpu->cd.arm.cur_ic_page)/sizeof(struct arm_instr_call);
1286  tmp = cpu->pc & ~((ARM_IC_ENTRIES_PER_PAGE-1) <<
1288  tmp += (low_pc << ARM_INSTR_ALIGNMENT_SHIFT) + 8;
1289 { uint32_t x = tmp;
1290  uint32_t y = cpu->cd.arm.r[0] & 255;
1291  if (y != 0) {
1292  cpu->cd.arm.flags &= ~ARM_F_C;
1293  if (y >= 32) return 0;
1294  x <<= (y - 1);
1295  if (x & 0x80000000)
1296  cpu->cd.arm.flags |= ARM_F_C;
1297  x <<= 1;
1298  }
1299  return x; }
1300 }
1301 uint32_t arm_rs_r0_t2_c0(struct cpu *cpu, struct arm_instr_call *ic) {
1302 { uint32_t x = cpu->cd.arm.r[0];
1303 cpu->cd.arm.flags &= ~ARM_F_C;
1304 if (x & 0x80000000)
1305  cpu->cd.arm.flags |= ARM_F_C;
1306 x = 0;
1307  return x; }
1308 }
1309 uint32_t arm_rs_r1_t2_c0(struct cpu *cpu, struct arm_instr_call *ic) {
1310 { uint32_t x = cpu->cd.arm.r[1];
1311 cpu->cd.arm.flags &= ~ARM_F_C;
1312 if (x & 0x80000000)
1313  cpu->cd.arm.flags |= ARM_F_C;
1314 x = 0;
1315  return x; }
1316 }
1317 uint32_t arm_rs_r2_t2_c0(struct cpu *cpu, struct arm_instr_call *ic) {
1318 { uint32_t x = cpu->cd.arm.r[2];
1319 cpu->cd.arm.flags &= ~ARM_F_C;
1320 if (x & 0x80000000)
1321  cpu->cd.arm.flags |= ARM_F_C;
1322 x = 0;
1323  return x; }
1324 }
1325 uint32_t arm_rs_r3_t2_c0(struct cpu *cpu, struct arm_instr_call *ic) {
1326 { uint32_t x = cpu->cd.arm.r[3];
1327 cpu->cd.arm.flags &= ~ARM_F_C;
1328 if (x & 0x80000000)
1329  cpu->cd.arm.flags |= ARM_F_C;
1330 x = 0;
1331  return x; }
1332 }
1333 uint32_t arm_rs_r4_t2_c0(struct cpu *cpu, struct arm_instr_call *ic) {
1334 { uint32_t x = cpu->cd.arm.r[4];
1335 cpu->cd.arm.flags &= ~ARM_F_C;
1336 if (x & 0x80000000)
1337  cpu->cd.arm.flags |= ARM_F_C;
1338 x = 0;
1339  return x; }
1340 }
1341 uint32_t arm_rs_r5_t2_c0(struct cpu *cpu, struct arm_instr_call *ic) {
1342 { uint32_t x = cpu->cd.arm.r[5];
1343 cpu->cd.arm.flags &= ~ARM_F_C;
1344 if (x & 0x80000000)
1345  cpu->cd.arm.flags |= ARM_F_C;
1346 x = 0;
1347  return x; }
1348 }
1349 uint32_t arm_rs_r6_t2_c0(struct cpu *cpu, struct arm_instr_call *ic) {
1350 { uint32_t x = cpu->cd.arm.r[6];
1351 cpu->cd.arm.flags &= ~ARM_F_C;
1352 if (x & 0x80000000)
1353  cpu->cd.arm.flags |= ARM_F_C;
1354 x = 0;
1355  return x; }
1356 }
1357 uint32_t arm_rs_r7_t2_c0(struct cpu *cpu, struct arm_instr_call *ic) {
1358 { uint32_t x = cpu->cd.arm.r[7];
1359 cpu->cd.arm.flags &= ~ARM_F_C;
1360 if (x & 0x80000000)
1361  cpu->cd.arm.flags |= ARM_F_C;
1362 x = 0;
1363  return x; }
1364 }
1365 uint32_t arm_rs_r8_t2_c0(struct cpu *cpu, struct arm_instr_call *ic) {
1366 { uint32_t x = cpu->cd.arm.r[8];
1367 cpu->cd.arm.flags &= ~ARM_F_C;
1368 if (x & 0x80000000)
1369  cpu->cd.arm.flags |= ARM_F_C;
1370 x = 0;
1371  return x; }
1372 }
1373 uint32_t arm_rs_r9_t2_c0(struct cpu *cpu, struct arm_instr_call *ic) {
1374 { uint32_t x = cpu->cd.arm.r[9];
1375 cpu->cd.arm.flags &= ~ARM_F_C;
1376 if (x & 0x80000000)
1377  cpu->cd.arm.flags |= ARM_F_C;
1378 x = 0;
1379  return x; }
1380 }
1381 uint32_t arm_rs_r10_t2_c0(struct cpu *cpu, struct arm_instr_call *ic) {
1382 { uint32_t x = cpu->cd.arm.r[10];
1383 cpu->cd.arm.flags &= ~ARM_F_C;
1384 if (x & 0x80000000)
1385  cpu->cd.arm.flags |= ARM_F_C;
1386 x = 0;
1387  return x; }
1388 }
1389 uint32_t arm_rs_r11_t2_c0(struct cpu *cpu, struct arm_instr_call *ic) {
1390 { uint32_t x = cpu->cd.arm.r[11];
1391 cpu->cd.arm.flags &= ~ARM_F_C;
1392 if (x & 0x80000000)
1393  cpu->cd.arm.flags |= ARM_F_C;
1394 x = 0;
1395  return x; }
1396 }
1397 uint32_t arm_rs_r12_t2_c0(struct cpu *cpu, struct arm_instr_call *ic) {
1398 { uint32_t x = cpu->cd.arm.r[12];
1399 cpu->cd.arm.flags &= ~ARM_F_C;
1400 if (x & 0x80000000)
1401  cpu->cd.arm.flags |= ARM_F_C;
1402 x = 0;
1403  return x; }
1404 }
1405 uint32_t arm_rs_r13_t2_c0(struct cpu *cpu, struct arm_instr_call *ic) {
1406 { uint32_t x = cpu->cd.arm.r[13];
1407 cpu->cd.arm.flags &= ~ARM_F_C;
1408 if (x & 0x80000000)
1409  cpu->cd.arm.flags |= ARM_F_C;
1410 x = 0;
1411  return x; }
1412 }
1413 uint32_t arm_rs_r14_t2_c0(struct cpu *cpu, struct arm_instr_call *ic) {
1414 { uint32_t x = cpu->cd.arm.r[14];
1415 cpu->cd.arm.flags &= ~ARM_F_C;
1416 if (x & 0x80000000)
1417  cpu->cd.arm.flags |= ARM_F_C;
1418 x = 0;
1419  return x; }
1420 }
1421 uint32_t arm_rs_r15_t2_c0(struct cpu *cpu, struct arm_instr_call *ic) {
1422  uint32_t tmp, low_pc = ((size_t)ic - (size_t)
1423  cpu->cd.arm.cur_ic_page)/sizeof(struct arm_instr_call);
1424  tmp = cpu->pc & ~((ARM_IC_ENTRIES_PER_PAGE-1) <<
1426  tmp += (low_pc << ARM_INSTR_ALIGNMENT_SHIFT) + 8;
1427 { uint32_t x = tmp;
1428 cpu->cd.arm.flags &= ~ARM_F_C;
1429 if (x & 0x80000000)
1430  cpu->cd.arm.flags |= ARM_F_C;
1431 x = 0;
1432  return x; }
1433 }
1434 uint32_t arm_rs_r0_t3_c0(struct cpu *cpu, struct arm_instr_call *ic) {
1435 { uint32_t x = cpu->cd.arm.r[0],y=cpu->cd.arm.r[0]&255;
1436 if(y==0) return x;
1437 cpu->cd.arm.flags &= ~ARM_F_C;
1438 if(y>31) y=32;
1439 y--; x >>= y;
1440 if (x & 1) cpu->cd.arm.flags |= ARM_F_C;
1441  return x >> 1; }
1442 }
1443 uint32_t arm_rs_r1_t3_c0(struct cpu *cpu, struct arm_instr_call *ic) {
1444 { uint32_t x = cpu->cd.arm.r[1],y=cpu->cd.arm.r[0]&255;
1445 if(y==0) return x;
1446 cpu->cd.arm.flags &= ~ARM_F_C;
1447 if(y>31) y=32;
1448 y--; x >>= y;
1449 if (x & 1) cpu->cd.arm.flags |= ARM_F_C;
1450  return x >> 1; }
1451 }
1452 uint32_t arm_rs_r2_t3_c0(struct cpu *cpu, struct arm_instr_call *ic) {
1453 { uint32_t x = cpu->cd.arm.r[2],y=cpu->cd.arm.r[0]&255;
1454 if(y==0) return x;
1455 cpu->cd.arm.flags &= ~ARM_F_C;
1456 if(y>31) y=32;
1457 y--; x >>= y;
1458 if (x & 1) cpu->cd.arm.flags |= ARM_F_C;
1459  return x >> 1; }
1460 }
1461 uint32_t arm_rs_r3_t3_c0(struct cpu *cpu, struct arm_instr_call *ic) {
1462 { uint32_t x = cpu->cd.arm.r[3],y=cpu->cd.arm.r[0]&255;
1463 if(y==0) return x;
1464 cpu->cd.arm.flags &= ~ARM_F_C;
1465 if(y>31) y=32;
1466 y--; x >>= y;
1467 if (x & 1) cpu->cd.arm.flags |= ARM_F_C;
1468  return x >> 1; }
1469 }
1470 uint32_t arm_rs_r4_t3_c0(struct cpu *cpu, struct arm_instr_call *ic) {
1471 { uint32_t x = cpu->cd.arm.r[4],y=cpu->cd.arm.r[0]&255;
1472 if(y==0) return x;
1473 cpu->cd.arm.flags &= ~ARM_F_C;
1474 if(y>31) y=32;
1475 y--; x >>= y;
1476 if (x & 1) cpu->cd.arm.flags |= ARM_F_C;
1477  return x >> 1; }
1478 }
1479 uint32_t arm_rs_r5_t3_c0(struct cpu *cpu, struct arm_instr_call *ic) {
1480 { uint32_t x = cpu->cd.arm.r[5],y=cpu->cd.arm.r[0]&255;
1481 if(y==0) return x;
1482 cpu->cd.arm.flags &= ~ARM_F_C;
1483 if(y>31) y=32;
1484 y--; x >>= y;
1485 if (x & 1) cpu->cd.arm.flags |= ARM_F_C;
1486  return x >> 1; }
1487 }
1488 uint32_t arm_rs_r6_t3_c0(struct cpu *cpu, struct arm_instr_call *ic) {
1489 { uint32_t x = cpu->cd.arm.r[6],y=cpu->cd.arm.r[0]&255;
1490 if(y==0) return x;
1491 cpu->cd.arm.flags &= ~ARM_F_C;
1492 if(y>31) y=32;
1493 y--; x >>= y;
1494 if (x & 1) cpu->cd.arm.flags |= ARM_F_C;
1495  return x >> 1; }
1496 }
1497 uint32_t arm_rs_r7_t3_c0(struct cpu *cpu, struct arm_instr_call *ic) {
1498 { uint32_t x = cpu->cd.arm.r[7],y=cpu->cd.arm.r[0]&255;
1499 if(y==0) return x;
1500 cpu->cd.arm.flags &= ~ARM_F_C;
1501 if(y>31) y=32;
1502 y--; x >>= y;
1503 if (x & 1) cpu->cd.arm.flags |= ARM_F_C;
1504  return x >> 1; }
1505 }
1506 uint32_t arm_rs_r8_t3_c0(struct cpu *cpu, struct arm_instr_call *ic) {
1507 { uint32_t x = cpu->cd.arm.r[8],y=cpu->cd.arm.r[0]&255;
1508 if(y==0) return x;
1509 cpu->cd.arm.flags &= ~ARM_F_C;
1510 if(y>31) y=32;
1511 y--; x >>= y;
1512 if (x & 1) cpu->cd.arm.flags |= ARM_F_C;
1513  return x >> 1; }
1514 }
1515 uint32_t arm_rs_r9_t3_c0(struct cpu *cpu, struct arm_instr_call *ic) {
1516 { uint32_t x = cpu->cd.arm.r[9],y=cpu->cd.arm.r[0]&255;
1517 if(y==0) return x;
1518 cpu->cd.arm.flags &= ~ARM_F_C;
1519 if(y>31) y=32;
1520 y--; x >>= y;
1521 if (x & 1) cpu->cd.arm.flags |= ARM_F_C;
1522  return x >> 1; }
1523 }
1524 uint32_t arm_rs_r10_t3_c0(struct cpu *cpu, struct arm_instr_call *ic) {
1525 { uint32_t x = cpu->cd.arm.r[10],y=cpu->cd.arm.r[0]&255;
1526 if(y==0) return x;
1527 cpu->cd.arm.flags &= ~ARM_F_C;
1528 if(y>31) y=32;
1529 y--; x >>= y;
1530 if (x & 1) cpu->cd.arm.flags |= ARM_F_C;
1531  return x >> 1; }
1532 }
1533 uint32_t arm_rs_r11_t3_c0(struct cpu *cpu, struct arm_instr_call *ic) {
1534 { uint32_t x = cpu->cd.arm.r[11],y=cpu->cd.arm.r[0]&255;
1535 if(y==0) return x;
1536 cpu->cd.arm.flags &= ~ARM_F_C;
1537 if(y>31) y=32;
1538 y--; x >>= y;
1539 if (x & 1) cpu->cd.arm.flags |= ARM_F_C;
1540  return x >> 1; }
1541 }
1542 uint32_t arm_rs_r12_t3_c0(struct cpu *cpu, struct arm_instr_call *ic) {
1543 { uint32_t x = cpu->cd.arm.r[12],y=cpu->cd.arm.r[0]&255;
1544 if(y==0) return x;
1545 cpu->cd.arm.flags &= ~ARM_F_C;
1546 if(y>31) y=32;
1547 y--; x >>= y;
1548 if (x & 1) cpu->cd.arm.flags |= ARM_F_C;
1549  return x >> 1; }
1550 }
1551 uint32_t arm_rs_r13_t3_c0(struct cpu *cpu, struct arm_instr_call *ic) {
1552 { uint32_t x = cpu->cd.arm.r[13],y=cpu->cd.arm.r[0]&255;
1553 if(y==0) return x;
1554 cpu->cd.arm.flags &= ~ARM_F_C;
1555 if(y>31) y=32;
1556 y--; x >>= y;
1557 if (x & 1) cpu->cd.arm.flags |= ARM_F_C;
1558  return x >> 1; }
1559 }
1560 uint32_t arm_rs_r14_t3_c0(struct cpu *cpu, struct arm_instr_call *ic) {
1561 { uint32_t x = cpu->cd.arm.r[14],y=cpu->cd.arm.r[0]&255;
1562 if(y==0) return x;
1563 cpu->cd.arm.flags &= ~ARM_F_C;
1564 if(y>31) y=32;
1565 y--; x >>= y;
1566 if (x & 1) cpu->cd.arm.flags |= ARM_F_C;
1567  return x >> 1; }
1568 }
1569 uint32_t arm_rs_r15_t3_c0(struct cpu *cpu, struct arm_instr_call *ic) {
1570  uint32_t tmp, low_pc = ((size_t)ic - (size_t)
1571  cpu->cd.arm.cur_ic_page)/sizeof(struct arm_instr_call);
1572  tmp = cpu->pc & ~((ARM_IC_ENTRIES_PER_PAGE-1) <<
1574  tmp += (low_pc << ARM_INSTR_ALIGNMENT_SHIFT) + 8;
1575 { uint32_t x = tmp,y=cpu->cd.arm.r[0]&255;
1576 if(y==0) return x;
1577 cpu->cd.arm.flags &= ~ARM_F_C;
1578 if(y>31) y=32;
1579 y--; x >>= y;
1580 if (x & 1) cpu->cd.arm.flags |= ARM_F_C;
1581  return x >> 1; }
1582 }
1583 uint32_t arm_rs_r0_t4_c0(struct cpu *cpu, struct arm_instr_call *ic) {
1584 { int32_t x = cpu->cd.arm.r[0];
1585 cpu->cd.arm.flags &= ~ARM_F_C;
1586 if (x & 0x80000000)
1587  cpu->cd.arm.flags |= ARM_F_C;
1588 x = (x<0)? 0xffffffff : 0;
1589  return x; }
1590 }
1591 uint32_t arm_rs_r1_t4_c0(struct cpu *cpu, struct arm_instr_call *ic) {
1592 { int32_t x = cpu->cd.arm.r[1];
1593 cpu->cd.arm.flags &= ~ARM_F_C;
1594 if (x & 0x80000000)
1595  cpu->cd.arm.flags |= ARM_F_C;
1596 x = (x<0)? 0xffffffff : 0;
1597  return x; }
1598 }
1599 uint32_t arm_rs_r2_t4_c0(struct cpu *cpu, struct arm_instr_call *ic) {
1600 { int32_t x = cpu->cd.arm.r[2];
1601 cpu->cd.arm.flags &= ~ARM_F_C;
1602 if (x & 0x80000000)
1603  cpu->cd.arm.flags |= ARM_F_C;
1604 x = (x<0)? 0xffffffff : 0;
1605  return x; }
1606 }
1607 uint32_t arm_rs_r3_t4_c0(struct cpu *cpu, struct arm_instr_call *ic) {
1608 { int32_t x = cpu->cd.arm.r[3];
1609 cpu->cd.arm.flags &= ~ARM_F_C;
1610 if (x & 0x80000000)
1611  cpu->cd.arm.flags |= ARM_F_C;
1612 x = (x<0)? 0xffffffff : 0;
1613  return x; }
1614 }
1615 uint32_t arm_rs_r4_t4_c0(struct cpu *cpu, struct arm_instr_call *ic) {
1616 { int32_t x = cpu->cd.arm.r[4];
1617 cpu->cd.arm.flags &= ~ARM_F_C;
1618 if (x & 0x80000000)
1619  cpu->cd.arm.flags |= ARM_F_C;
1620 x = (x<0)? 0xffffffff : 0;
1621  return x; }
1622 }
1623 uint32_t arm_rs_r5_t4_c0(struct cpu *cpu, struct arm_instr_call *ic) {
1624 { int32_t x = cpu->cd.arm.r[5];
1625 cpu->cd.arm.flags &= ~ARM_F_C;
1626 if (x & 0x80000000)
1627  cpu->cd.arm.flags |= ARM_F_C;
1628 x = (x<0)? 0xffffffff : 0;
1629  return x; }
1630 }
1631 uint32_t arm_rs_r6_t4_c0(struct cpu *cpu, struct arm_instr_call *ic) {
1632 { int32_t x = cpu->cd.arm.r[6];
1633 cpu->cd.arm.flags &= ~ARM_F_C;
1634 if (x & 0x80000000)
1635  cpu->cd.arm.flags |= ARM_F_C;
1636 x = (x<0)? 0xffffffff : 0;
1637  return x; }
1638 }
1639 uint32_t arm_rs_r7_t4_c0(struct cpu *cpu, struct arm_instr_call *ic) {
1640 { int32_t x = cpu->cd.arm.r[7];
1641 cpu->cd.arm.flags &= ~ARM_F_C;
1642 if (x & 0x80000000)
1643  cpu->cd.arm.flags |= ARM_F_C;
1644 x = (x<0)? 0xffffffff : 0;
1645  return x; }
1646 }
1647 uint32_t arm_rs_r8_t4_c0(struct cpu *cpu, struct arm_instr_call *ic) {
1648 { int32_t x = cpu->cd.arm.r[8];
1649 cpu->cd.arm.flags &= ~ARM_F_C;
1650 if (x & 0x80000000)
1651  cpu->cd.arm.flags |= ARM_F_C;
1652 x = (x<0)? 0xffffffff : 0;
1653  return x; }
1654 }
1655 uint32_t arm_rs_r9_t4_c0(struct cpu *cpu, struct arm_instr_call *ic) {
1656 { int32_t x = cpu->cd.arm.r[9];
1657 cpu->cd.arm.flags &= ~ARM_F_C;
1658 if (x & 0x80000000)
1659  cpu->cd.arm.flags |= ARM_F_C;
1660 x = (x<0)? 0xffffffff : 0;
1661  return x; }
1662 }
1663 uint32_t arm_rs_r10_t4_c0(struct cpu *cpu, struct arm_instr_call *ic) {
1664 { int32_t x = cpu->cd.arm.r[10];
1665 cpu->cd.arm.flags &= ~ARM_F_C;
1666 if (x & 0x80000000)
1667  cpu->cd.arm.flags |= ARM_F_C;
1668 x = (x<0)? 0xffffffff : 0;
1669  return x; }
1670 }
1671 uint32_t arm_rs_r11_t4_c0(struct cpu *cpu, struct arm_instr_call *ic) {
1672 { int32_t x = cpu->cd.arm.r[11];
1673 cpu->cd.arm.flags &= ~ARM_F_C;
1674 if (x & 0x80000000)
1675  cpu->cd.arm.flags |= ARM_F_C;
1676 x = (x<0)? 0xffffffff : 0;
1677  return x; }
1678 }
1679 uint32_t arm_rs_r12_t4_c0(struct cpu *cpu, struct arm_instr_call *ic) {
1680 { int32_t x = cpu->cd.arm.r[12];
1681 cpu->cd.arm.flags &= ~ARM_F_C;
1682 if (x & 0x80000000)
1683  cpu->cd.arm.flags |= ARM_F_C;
1684 x = (x<0)? 0xffffffff : 0;
1685  return x; }
1686 }
1687 uint32_t arm_rs_r13_t4_c0(struct cpu *cpu, struct arm_instr_call *ic) {
1688 { int32_t x = cpu->cd.arm.r[13];
1689 cpu->cd.arm.flags &= ~ARM_F_C;
1690 if (x & 0x80000000)
1691  cpu->cd.arm.flags |= ARM_F_C;
1692 x = (x<0)? 0xffffffff : 0;
1693  return x; }
1694 }
1695 uint32_t arm_rs_r14_t4_c0(struct cpu *cpu, struct arm_instr_call *ic) {
1696 { int32_t x = cpu->cd.arm.r[14];
1697 cpu->cd.arm.flags &= ~ARM_F_C;
1698 if (x & 0x80000000)
1699  cpu->cd.arm.flags |= ARM_F_C;
1700 x = (x<0)? 0xffffffff : 0;
1701  return x; }
1702 }
1703 uint32_t arm_rs_r15_t4_c0(struct cpu *cpu, struct arm_instr_call *ic) {
1704  uint32_t tmp, low_pc = ((size_t)ic - (size_t)
1705  cpu->cd.arm.cur_ic_page)/sizeof(struct arm_instr_call);
1706  tmp = cpu->pc & ~((ARM_IC_ENTRIES_PER_PAGE-1) <<
1708  tmp += (low_pc << ARM_INSTR_ALIGNMENT_SHIFT) + 8;
1709 { int32_t x = tmp;
1710 cpu->cd.arm.flags &= ~ARM_F_C;
1711 if (x & 0x80000000)
1712  cpu->cd.arm.flags |= ARM_F_C;
1713 x = (x<0)? 0xffffffff : 0;
1714  return x; }
1715 }
1716 uint32_t arm_rs_r0_t5_c0(struct cpu *cpu, struct arm_instr_call *ic) {
1717 { int32_t x = cpu->cd.arm.r[0],y=cpu->cd.arm.r[0]&255;
1718 if(y==0) return x;
1719 cpu->cd.arm.flags &= ~ARM_F_C;
1720 if(y>31) y=31;
1721 y--; x >>= y;
1722 if (x & 1) cpu->cd.arm.flags |= ARM_F_C;
1723  return (int32_t)x >> 1; }
1724 }
1725 uint32_t arm_rs_r1_t5_c0(struct cpu *cpu, struct arm_instr_call *ic) {
1726 { int32_t x = cpu->cd.arm.r[1],y=cpu->cd.arm.r[0]&255;
1727 if(y==0) return x;
1728 cpu->cd.arm.flags &= ~ARM_F_C;
1729 if(y>31) y=31;
1730 y--; x >>= y;
1731 if (x & 1) cpu->cd.arm.flags |= ARM_F_C;
1732  return (int32_t)x >> 1; }
1733 }
1734 uint32_t arm_rs_r2_t5_c0(struct cpu *cpu, struct arm_instr_call *ic) {
1735 { int32_t x = cpu->cd.arm.r[2],y=cpu->cd.arm.r[0]&255;
1736 if(y==0) return x;
1737 cpu->cd.arm.flags &= ~ARM_F_C;
1738 if(y>31) y=31;
1739 y--; x >>= y;
1740 if (x & 1) cpu->cd.arm.flags |= ARM_F_C;
1741  return (int32_t)x >> 1; }
1742 }
1743 uint32_t arm_rs_r3_t5_c0(struct cpu *cpu, struct arm_instr_call *ic) {
1744 { int32_t x = cpu->cd.arm.r[3],y=cpu->cd.arm.r[0]&255;
1745 if(y==0) return x;
1746 cpu->cd.arm.flags &= ~ARM_F_C;
1747 if(y>31) y=31;
1748 y--; x >>= y;
1749 if (x & 1) cpu->cd.arm.flags |= ARM_F_C;
1750  return (int32_t)x >> 1; }
1751 }
1752 uint32_t arm_rs_r4_t5_c0(struct cpu *cpu, struct arm_instr_call *ic) {
1753 { int32_t x = cpu->cd.arm.r[4],y=cpu->cd.arm.r[0]&255;
1754 if(y==0) return x;
1755 cpu->cd.arm.flags &= ~ARM_F_C;
1756 if(y>31) y=31;
1757 y--; x >>= y;
1758 if (x & 1) cpu->cd.arm.flags |= ARM_F_C;
1759  return (int32_t)x >> 1; }
1760 }
1761 uint32_t arm_rs_r5_t5_c0(struct cpu *cpu, struct arm_instr_call *ic) {
1762 { int32_t x = cpu->cd.arm.r[5],y=cpu->cd.arm.r[0]&255;
1763 if(y==0) return x;
1764 cpu->cd.arm.flags &= ~ARM_F_C;
1765 if(y>31) y=31;
1766 y--; x >>= y;
1767 if (x & 1) cpu->cd.arm.flags |= ARM_F_C;
1768  return (int32_t)x >> 1; }
1769 }
1770 uint32_t arm_rs_r6_t5_c0(struct cpu *cpu, struct arm_instr_call *ic) {
1771 { int32_t x = cpu->cd.arm.r[6],y=cpu->cd.arm.r[0]&255;
1772 if(y==0) return x;
1773 cpu->cd.arm.flags &= ~ARM_F_C;
1774 if(y>31) y=31;
1775 y--; x >>= y;
1776 if (x & 1) cpu->cd.arm.flags |= ARM_F_C;
1777  return (int32_t)x >> 1; }
1778 }
1779 uint32_t arm_rs_r7_t5_c0(struct cpu *cpu, struct arm_instr_call *ic) {
1780 { int32_t x = cpu->cd.arm.r[7],y=cpu->cd.arm.r[0]&255;
1781 if(y==0) return x;
1782 cpu->cd.arm.flags &= ~ARM_F_C;
1783 if(y>31) y=31;
1784 y--; x >>= y;
1785 if (x & 1) cpu->cd.arm.flags |= ARM_F_C;
1786  return (int32_t)x >> 1; }
1787 }
1788 uint32_t arm_rs_r8_t5_c0(struct cpu *cpu, struct arm_instr_call *ic) {
1789 { int32_t x = cpu->cd.arm.r[8],y=cpu->cd.arm.r[0]&255;
1790 if(y==0) return x;
1791 cpu->cd.arm.flags &= ~ARM_F_C;
1792 if(y>31) y=31;
1793 y--; x >>= y;
1794 if (x & 1) cpu->cd.arm.flags |= ARM_F_C;
1795  return (int32_t)x >> 1; }
1796 }
1797 uint32_t arm_rs_r9_t5_c0(struct cpu *cpu, struct arm_instr_call *ic) {
1798 { int32_t x = cpu->cd.arm.r[9],y=cpu->cd.arm.r[0]&255;
1799 if(y==0) return x;
1800 cpu->cd.arm.flags &= ~ARM_F_C;
1801 if(y>31) y=31;
1802 y--; x >>= y;
1803 if (x & 1) cpu->cd.arm.flags |= ARM_F_C;
1804  return (int32_t)x >> 1; }
1805 }
1806 uint32_t arm_rs_r10_t5_c0(struct cpu *cpu, struct arm_instr_call *ic) {
1807 { int32_t x = cpu->cd.arm.r[10],y=cpu->cd.arm.r[0]&255;
1808 if(y==0) return x;
1809 cpu->cd.arm.flags &= ~ARM_F_C;
1810 if(y>31) y=31;
1811 y--; x >>= y;
1812 if (x & 1) cpu->cd.arm.flags |= ARM_F_C;
1813  return (int32_t)x >> 1; }
1814 }
1815 uint32_t arm_rs_r11_t5_c0(struct cpu *cpu, struct arm_instr_call *ic) {
1816 { int32_t x = cpu->cd.arm.r[11],y=cpu->cd.arm.r[0]&255;
1817 if(y==0) return x;
1818 cpu->cd.arm.flags &= ~ARM_F_C;
1819 if(y>31) y=31;
1820 y--; x >>= y;
1821 if (x & 1) cpu->cd.arm.flags |= ARM_F_C;
1822  return (int32_t)x >> 1; }
1823 }
1824 uint32_t arm_rs_r12_t5_c0(struct cpu *cpu, struct arm_instr_call *ic) {
1825 { int32_t x = cpu->cd.arm.r[12],y=cpu->cd.arm.r[0]&255;
1826 if(y==0) return x;
1827 cpu->cd.arm.flags &= ~ARM_F_C;
1828 if(y>31) y=31;
1829 y--; x >>= y;
1830 if (x & 1) cpu->cd.arm.flags |= ARM_F_C;
1831  return (int32_t)x >> 1; }
1832 }
1833 uint32_t arm_rs_r13_t5_c0(struct cpu *cpu, struct arm_instr_call *ic) {
1834 { int32_t x = cpu->cd.arm.r[13],y=cpu->cd.arm.r[0]&255;
1835 if(y==0) return x;
1836 cpu->cd.arm.flags &= ~ARM_F_C;
1837 if(y>31) y=31;
1838 y--; x >>= y;
1839 if (x & 1) cpu->cd.arm.flags |= ARM_F_C;
1840  return (int32_t)x >> 1; }
1841 }
1842 uint32_t arm_rs_r14_t5_c0(struct cpu *cpu, struct arm_instr_call *ic) {
1843 { int32_t x = cpu->cd.arm.r[14],y=cpu->cd.arm.r[0]&255;
1844 if(y==0) return x;
1845 cpu->cd.arm.flags &= ~ARM_F_C;
1846 if(y>31) y=31;
1847 y--; x >>= y;
1848 if (x & 1) cpu->cd.arm.flags |= ARM_F_C;
1849  return (int32_t)x >> 1; }
1850 }
1851 uint32_t arm_rs_r15_t5_c0(struct cpu *cpu, struct arm_instr_call *ic) {
1852  uint32_t tmp, low_pc = ((size_t)ic - (size_t)
1853  cpu->cd.arm.cur_ic_page)/sizeof(struct arm_instr_call);
1854  tmp = cpu->pc & ~((ARM_IC_ENTRIES_PER_PAGE-1) <<
1856  tmp += (low_pc << ARM_INSTR_ALIGNMENT_SHIFT) + 8;
1857 { int32_t x = tmp,y=cpu->cd.arm.r[0]&255;
1858 if(y==0) return x;
1859 cpu->cd.arm.flags &= ~ARM_F_C;
1860 if(y>31) y=31;
1861 y--; x >>= y;
1862 if (x & 1) cpu->cd.arm.flags |= ARM_F_C;
1863  return (int32_t)x >> 1; }
1864 }
1865 uint32_t arm_rs_r0_t6_c0(struct cpu *cpu, struct arm_instr_call *ic) {
1866 { uint64_t x=cpu->cd.arm.r[0]; if (cpu->cd.arm.flags & ARM_F_C) x |= 0x100000000ULL;cpu->cd.arm.flags &= ~ARM_F_C;if(x&1) cpu->cd.arm.flags |= ARM_F_C;return x >> 1; }
1867 }
1868 uint32_t arm_rs_r1_t6_c0(struct cpu *cpu, struct arm_instr_call *ic) {
1869 { uint64_t x=cpu->cd.arm.r[1]; if (cpu->cd.arm.flags & ARM_F_C) x |= 0x100000000ULL;cpu->cd.arm.flags &= ~ARM_F_C;if(x&1) cpu->cd.arm.flags |= ARM_F_C;return x >> 1; }
1870 }
1871 uint32_t arm_rs_r2_t6_c0(struct cpu *cpu, struct arm_instr_call *ic) {
1872 { uint64_t x=cpu->cd.arm.r[2]; if (cpu->cd.arm.flags & ARM_F_C) x |= 0x100000000ULL;cpu->cd.arm.flags &= ~ARM_F_C;if(x&1) cpu->cd.arm.flags |= ARM_F_C;return x >> 1; }
1873 }
1874 uint32_t arm_rs_r3_t6_c0(struct cpu *cpu, struct arm_instr_call *ic) {
1875 { uint64_t x=cpu->cd.arm.r[3]; if (cpu->cd.arm.flags & ARM_F_C) x |= 0x100000000ULL;cpu->cd.arm.flags &= ~ARM_F_C;if(x&1) cpu->cd.arm.flags |= ARM_F_C;return x >> 1; }
1876 }
1877 uint32_t arm_rs_r4_t6_c0(struct cpu *cpu, struct arm_instr_call *ic) {
1878 { uint64_t x=cpu->cd.arm.r[4]; if (cpu->cd.arm.flags & ARM_F_C) x |= 0x100000000ULL;cpu->cd.arm.flags &= ~ARM_F_C;if(x&1) cpu->cd.arm.flags |= ARM_F_C;return x >> 1; }
1879 }
1880 uint32_t arm_rs_r5_t6_c0(struct cpu *cpu, struct arm_instr_call *ic) {
1881 { uint64_t x=cpu->cd.arm.r[5]; if (cpu->cd.arm.flags & ARM_F_C) x |= 0x100000000ULL;cpu->cd.arm.flags &= ~ARM_F_C;if(x&1) cpu->cd.arm.flags |= ARM_F_C;return x >> 1; }
1882 }
1883 uint32_t arm_rs_r6_t6_c0(struct cpu *cpu, struct arm_instr_call *ic) {
1884 { uint64_t x=cpu->cd.arm.r[6]; if (cpu->cd.arm.flags & ARM_F_C) x |= 0x100000000ULL;cpu->cd.arm.flags &= ~ARM_F_C;if(x&1) cpu->cd.arm.flags |= ARM_F_C;return x >> 1; }
1885 }
1886 uint32_t arm_rs_r7_t6_c0(struct cpu *cpu, struct arm_instr_call *ic) {
1887 { uint64_t x=cpu->cd.arm.r[7]; if (cpu->cd.arm.flags & ARM_F_C) x |= 0x100000000ULL;cpu->cd.arm.flags &= ~ARM_F_C;if(x&1) cpu->cd.arm.flags |= ARM_F_C;return x >> 1; }
1888 }
1889 uint32_t arm_rs_r8_t6_c0(struct cpu *cpu, struct arm_instr_call *ic) {
1890 { uint64_t x=cpu->cd.arm.r[8]; if (cpu->cd.arm.flags & ARM_F_C) x |= 0x100000000ULL;cpu->cd.arm.flags &= ~ARM_F_C;if(x&1) cpu->cd.arm.flags |= ARM_F_C;return x >> 1; }
1891 }
1892 uint32_t arm_rs_r9_t6_c0(struct cpu *cpu, struct arm_instr_call *ic) {
1893 { uint64_t x=cpu->cd.arm.r[9]; if (cpu->cd.arm.flags & ARM_F_C) x |= 0x100000000ULL;cpu->cd.arm.flags &= ~ARM_F_C;if(x&1) cpu->cd.arm.flags |= ARM_F_C;return x >> 1; }
1894 }
1895 uint32_t arm_rs_r10_t6_c0(struct cpu *cpu, struct arm_instr_call *ic) {
1896 { uint64_t x=cpu->cd.arm.r[10]; if (cpu->cd.arm.flags & ARM_F_C) x |= 0x100000000ULL;cpu->cd.arm.flags &= ~ARM_F_C;if(x&1) cpu->cd.arm.flags |= ARM_F_C;return x >> 1; }
1897 }
1898 uint32_t arm_rs_r11_t6_c0(struct cpu *cpu, struct arm_instr_call *ic) {
1899 { uint64_t x=cpu->cd.arm.r[11]; if (cpu->cd.arm.flags & ARM_F_C) x |= 0x100000000ULL;cpu->cd.arm.flags &= ~ARM_F_C;if(x&1) cpu->cd.arm.flags |= ARM_F_C;return x >> 1; }
1900 }
1901 uint32_t arm_rs_r12_t6_c0(struct cpu *cpu, struct arm_instr_call *ic) {
1902 { uint64_t x=cpu->cd.arm.r[12]; if (cpu->cd.arm.flags & ARM_F_C) x |= 0x100000000ULL;cpu->cd.arm.flags &= ~ARM_F_C;if(x&1) cpu->cd.arm.flags |= ARM_F_C;return x >> 1; }
1903 }
1904 uint32_t arm_rs_r13_t6_c0(struct cpu *cpu, struct arm_instr_call *ic) {
1905 { uint64_t x=cpu->cd.arm.r[13]; if (cpu->cd.arm.flags & ARM_F_C) x |= 0x100000000ULL;cpu->cd.arm.flags &= ~ARM_F_C;if(x&1) cpu->cd.arm.flags |= ARM_F_C;return x >> 1; }
1906 }
1907 uint32_t arm_rs_r14_t6_c0(struct cpu *cpu, struct arm_instr_call *ic) {
1908 { uint64_t x=cpu->cd.arm.r[14]; if (cpu->cd.arm.flags & ARM_F_C) x |= 0x100000000ULL;cpu->cd.arm.flags &= ~ARM_F_C;if(x&1) cpu->cd.arm.flags |= ARM_F_C;return x >> 1; }
1909 }
1910 uint32_t arm_rs_r15_t6_c0(struct cpu *cpu, struct arm_instr_call *ic) {
1911  uint32_t tmp, low_pc = ((size_t)ic - (size_t)
1912  cpu->cd.arm.cur_ic_page)/sizeof(struct arm_instr_call);
1913  tmp = cpu->pc & ~((ARM_IC_ENTRIES_PER_PAGE-1) <<
1915  tmp += (low_pc << ARM_INSTR_ALIGNMENT_SHIFT) + 8;
1916 { uint64_t x=tmp; if (cpu->cd.arm.flags & ARM_F_C) x |= 0x100000000ULL;cpu->cd.arm.flags &= ~ARM_F_C;if(x&1) cpu->cd.arm.flags |= ARM_F_C;return x >> 1; }
1917 }
1918 uint32_t arm_rs_r0_t7_c0(struct cpu *cpu, struct arm_instr_call *ic) {
1919 { uint64_t x = cpu->cd.arm.r[0]; int y=cpu->cd.arm.r[0]&255;
1920 if(y==0) return x;
1921 y --; y &= 31; x >>= y;
1922 cpu->cd.arm.flags &= ~ARM_F_C;
1923 if (x & 1) cpu->cd.arm.flags |= ARM_F_C;
1924  return x >> 1; }
1925 }
1926 uint32_t arm_rs_r1_t7_c0(struct cpu *cpu, struct arm_instr_call *ic) {
1927 { uint64_t x = cpu->cd.arm.r[1]; int y=cpu->cd.arm.r[0]&255;
1928 if(y==0) return x;
1929 y --; y &= 31; x >>= y;
1930 cpu->cd.arm.flags &= ~ARM_F_C;
1931 if (x & 1) cpu->cd.arm.flags |= ARM_F_C;
1932  return x >> 1; }
1933 }
1934 uint32_t arm_rs_r2_t7_c0(struct cpu *cpu, struct arm_instr_call *ic) {
1935 { uint64_t x = cpu->cd.arm.r[2]; int y=cpu->cd.arm.r[0]&255;
1936 if(y==0) return x;
1937 y --; y &= 31; x >>= y;
1938 cpu->cd.arm.flags &= ~ARM_F_C;
1939 if (x & 1) cpu->cd.arm.flags |= ARM_F_C;
1940  return x >> 1; }
1941 }
1942 uint32_t arm_rs_r3_t7_c0(struct cpu *cpu, struct arm_instr_call *ic) {
1943 { uint64_t x = cpu->cd.arm.r[3]; int y=cpu->cd.arm.r[0]&255;
1944 if(y==0) return x;
1945 y --; y &= 31; x >>= y;
1946 cpu->cd.arm.flags &= ~ARM_F_C;
1947 if (x & 1) cpu->cd.arm.flags |= ARM_F_C;
1948  return x >> 1; }
1949 }
1950 uint32_t arm_rs_r4_t7_c0(struct cpu *cpu, struct arm_instr_call *ic) {
1951 { uint64_t x = cpu->cd.arm.r[4]; int y=cpu->cd.arm.r[0]&255;
1952 if(y==0) return x;
1953 y --; y &= 31; x >>= y;
1954 cpu->cd.arm.flags &= ~ARM_F_C;
1955 if (x & 1) cpu->cd.arm.flags |= ARM_F_C;
1956  return x >> 1; }
1957 }
1958 uint32_t arm_rs_r5_t7_c0(struct cpu *cpu, struct arm_instr_call *ic) {
1959 { uint64_t x = cpu->cd.arm.r[5]; int y=cpu->cd.arm.r[0]&255;
1960 if(y==0) return x;
1961 y --; y &= 31; x >>= y;
1962 cpu->cd.arm.flags &= ~ARM_F_C;
1963 if (x & 1) cpu->cd.arm.flags |= ARM_F_C;
1964  return x >> 1; }
1965 }
1966 uint32_t arm_rs_r6_t7_c0(struct cpu *cpu, struct arm_instr_call *ic) {
1967 { uint64_t x = cpu->cd.arm.r[6]; int y=cpu->cd.arm.r[0]&255;
1968 if(y==0) return x;
1969 y --; y &= 31; x >>= y;
1970 cpu->cd.arm.flags &= ~ARM_F_C;
1971 if (x & 1) cpu->cd.arm.flags |= ARM_F_C;
1972  return x >> 1; }
1973 }
1974 uint32_t arm_rs_r7_t7_c0(struct cpu *cpu, struct arm_instr_call *ic) {
1975 { uint64_t x = cpu->cd.arm.r[7]; int y=cpu->cd.arm.r[0]&255;
1976 if(y==0) return x;
1977 y --; y &= 31; x >>= y;
1978 cpu->cd.arm.flags &= ~ARM_F_C;
1979 if (x & 1) cpu->cd.arm.flags |= ARM_F_C;
1980  return x >> 1; }
1981 }
1982 uint32_t arm_rs_r8_t7_c0(struct cpu *cpu, struct arm_instr_call *ic) {
1983 { uint64_t x = cpu->cd.arm.r[8]; int y=cpu->cd.arm.r[0]&255;
1984 if(y==0) return x;
1985 y --; y &= 31; x >>= y;
1986 cpu->cd.arm.flags &= ~ARM_F_C;
1987 if (x & 1) cpu->cd.arm.flags |= ARM_F_C;
1988  return x >> 1; }
1989 }
1990 uint32_t arm_rs_r9_t7_c0(struct cpu *cpu, struct arm_instr_call *ic) {
1991 { uint64_t x = cpu->cd.arm.r[9]; int y=cpu->cd.arm.r[0]&255;
1992 if(y==0) return x;
1993 y --; y &= 31; x >>= y;
1994 cpu->cd.arm.flags &= ~ARM_F_C;
1995 if (x & 1) cpu->cd.arm.flags |= ARM_F_C;
1996  return x >> 1; }
1997 }
1998 uint32_t arm_rs_r10_t7_c0(struct cpu *cpu, struct arm_instr_call *ic) {
1999 { uint64_t x = cpu->cd.arm.r[10]; int y=cpu->cd.arm.r[0]&255;
2000 if(y==0) return x;
2001 y --; y &= 31; x >>= y;
2002 cpu->cd.arm.flags &= ~ARM_F_C;
2003 if (x & 1) cpu->cd.arm.flags |= ARM_F_C;
2004  return x >> 1; }
2005 }
2006 uint32_t arm_rs_r11_t7_c0(struct cpu *cpu, struct arm_instr_call *ic) {
2007 { uint64_t x = cpu->cd.arm.r[11]; int y=cpu->cd.arm.r[0]&255;
2008 if(y==0) return x;
2009 y --; y &= 31; x >>= y;
2010 cpu->cd.arm.flags &= ~ARM_F_C;
2011 if (x & 1) cpu->cd.arm.flags |= ARM_F_C;
2012  return x >> 1; }
2013 }
2014 uint32_t arm_rs_r12_t7_c0(struct cpu *cpu, struct arm_instr_call *ic) {
2015 { uint64_t x = cpu->cd.arm.r[12]; int y=cpu->cd.arm.r[0]&255;
2016 if(y==0) return x;
2017 y --; y &= 31; x >>= y;
2018 cpu->cd.arm.flags &= ~ARM_F_C;
2019 if (x & 1) cpu->cd.arm.flags |= ARM_F_C;
2020  return x >> 1; }
2021 }
2022 uint32_t arm_rs_r13_t7_c0(struct cpu *cpu, struct arm_instr_call *ic) {
2023 { uint64_t x = cpu->cd.arm.r[13]; int y=cpu->cd.arm.r[0]&255;
2024 if(y==0) return x;
2025 y --; y &= 31; x >>= y;
2026 cpu->cd.arm.flags &= ~ARM_F_C;
2027 if (x & 1) cpu->cd.arm.flags |= ARM_F_C;
2028  return x >> 1; }
2029 }
2030 uint32_t arm_rs_r14_t7_c0(struct cpu *cpu, struct arm_instr_call *ic) {
2031 { uint64_t x = cpu->cd.arm.r[14]; int y=cpu->cd.arm.r[0]&255;
2032 if(y==0) return x;
2033 y --; y &= 31; x >>= y;
2034 cpu->cd.arm.flags &= ~ARM_F_C;
2035 if (x & 1) cpu->cd.arm.flags |= ARM_F_C;
2036  return x >> 1; }
2037 }
2038 uint32_t arm_rs_r15_t7_c0(struct cpu *cpu, struct arm_instr_call *ic) {
2039  uint32_t tmp, low_pc = ((size_t)ic - (size_t)
2040  cpu->cd.arm.cur_ic_page)/sizeof(struct arm_instr_call);
2041  tmp = cpu->pc & ~((ARM_IC_ENTRIES_PER_PAGE-1) <<
2043  tmp += (low_pc << ARM_INSTR_ALIGNMENT_SHIFT) + 8;
2044 { uint64_t x = tmp; int y=cpu->cd.arm.r[0]&255;
2045 if(y==0) return x;
2046 y --; y &= 31; x >>= y;
2047 cpu->cd.arm.flags &= ~ARM_F_C;
2048 if (x & 1) cpu->cd.arm.flags |= ARM_F_C;
2049  return x >> 1; }
2050 }
2051 uint32_t arm_rs_r0_t0_c1(struct cpu *cpu, struct arm_instr_call *ic) {
2052 { uint32_t x = cpu->cd.arm.r[0];
2053 cpu->cd.arm.flags &= ~ARM_F_C;
2054 if (x & 0x80000000)
2055  cpu->cd.arm.flags |= ARM_F_C;
2056 x <<= 1;
2057  return x; }
2058 }
2059 uint32_t arm_rs_r1_t0_c1(struct cpu *cpu, struct arm_instr_call *ic) {
2060 { uint32_t x = cpu->cd.arm.r[1];
2061 cpu->cd.arm.flags &= ~ARM_F_C;
2062 if (x & 0x80000000)
2063  cpu->cd.arm.flags |= ARM_F_C;
2064 x <<= 1;
2065  return x; }
2066 }
2067 uint32_t arm_rs_r2_t0_c1(struct cpu *cpu, struct arm_instr_call *ic) {
2068 { uint32_t x = cpu->cd.arm.r[2];
2069 cpu->cd.arm.flags &= ~ARM_F_C;
2070 if (x & 0x80000000)
2071  cpu->cd.arm.flags |= ARM_F_C;
2072 x <<= 1;
2073  return x; }
2074 }
2075 uint32_t arm_rs_r3_t0_c1(struct cpu *cpu, struct arm_instr_call *ic) {
2076 { uint32_t x = cpu->cd.arm.r[3];
2077 cpu->cd.arm.flags &= ~ARM_F_C;
2078 if (x & 0x80000000)
2079  cpu->cd.arm.flags |= ARM_F_C;
2080 x <<= 1;
2081  return x; }
2082 }
2083 uint32_t arm_rs_r4_t0_c1(struct cpu *cpu, struct arm_instr_call *ic) {
2084 { uint32_t x = cpu->cd.arm.r[4];
2085 cpu->cd.arm.flags &= ~ARM_F_C;
2086 if (x & 0x80000000)
2087  cpu->cd.arm.flags |= ARM_F_C;
2088 x <<= 1;
2089  return x; }
2090 }
2091 uint32_t arm_rs_r5_t0_c1(struct cpu *cpu, struct arm_instr_call *ic) {
2092 { uint32_t x = cpu->cd.arm.r[5];
2093 cpu->cd.arm.flags &= ~ARM_F_C;
2094 if (x & 0x80000000)
2095  cpu->cd.arm.flags |= ARM_F_C;
2096 x <<= 1;
2097  return x; }
2098 }
2099 uint32_t arm_rs_r6_t0_c1(struct cpu *cpu, struct arm_instr_call *ic) {
2100 { uint32_t x = cpu->cd.arm.r[6];
2101 cpu->cd.arm.flags &= ~ARM_F_C;
2102 if (x & 0x80000000)
2103  cpu->cd.arm.flags |= ARM_F_C;
2104 x <<= 1;
2105  return x; }
2106 }
2107 uint32_t arm_rs_r7_t0_c1(struct cpu *cpu, struct arm_instr_call *ic) {
2108 { uint32_t x = cpu->cd.arm.r[7];
2109 cpu->cd.arm.flags &= ~ARM_F_C;
2110 if (x & 0x80000000)
2111  cpu->cd.arm.flags |= ARM_F_C;
2112 x <<= 1;
2113  return x; }
2114 }
2115 uint32_t arm_rs_r8_t0_c1(struct cpu *cpu, struct arm_instr_call *ic) {
2116 { uint32_t x = cpu->cd.arm.r[8];
2117 cpu->cd.arm.flags &= ~ARM_F_C;
2118 if (x & 0x80000000)
2119  cpu->cd.arm.flags |= ARM_F_C;
2120 x <<= 1;
2121  return x; }
2122 }
2123 uint32_t arm_rs_r9_t0_c1(struct cpu *cpu, struct arm_instr_call *ic) {
2124 { uint32_t x = cpu->cd.arm.r[9];
2125 cpu->cd.arm.flags &= ~ARM_F_C;
2126 if (x & 0x80000000)
2127  cpu->cd.arm.flags |= ARM_F_C;
2128 x <<= 1;
2129  return x; }
2130 }
2131 uint32_t arm_rs_r10_t0_c1(struct cpu *cpu, struct arm_instr_call *ic) {
2132 { uint32_t x = cpu->cd.arm.r[10];
2133 cpu->cd.arm.flags &= ~ARM_F_C;
2134 if (x & 0x80000000)
2135  cpu->cd.arm.flags |= ARM_F_C;
2136 x <<= 1;
2137  return x; }
2138 }
2139 uint32_t arm_rs_r11_t0_c1(struct cpu *cpu, struct arm_instr_call *ic) {
2140 { uint32_t x = cpu->cd.arm.r[11];
2141 cpu->cd.arm.flags &= ~ARM_F_C;
2142 if (x & 0x80000000)
2143  cpu->cd.arm.flags |= ARM_F_C;
2144 x <<= 1;
2145  return x; }
2146 }
2147 uint32_t arm_rs_r12_t0_c1(struct cpu *cpu, struct arm_instr_call *ic) {
2148 { uint32_t x = cpu->cd.arm.r[12];
2149 cpu->cd.arm.flags &= ~ARM_F_C;
2150 if (x & 0x80000000)
2151  cpu->cd.arm.flags |= ARM_F_C;
2152 x <<= 1;
2153  return x; }
2154 }
2155 uint32_t arm_rs_r13_t0_c1(struct cpu *cpu, struct arm_instr_call *ic) {
2156 { uint32_t x = cpu->cd.arm.r[13];
2157 cpu->cd.arm.flags &= ~ARM_F_C;
2158 if (x & 0x80000000)
2159  cpu->cd.arm.flags |= ARM_F_C;
2160 x <<= 1;
2161  return x; }
2162 }
2163 uint32_t arm_rs_r14_t0_c1(struct cpu *cpu, struct arm_instr_call *ic) {
2164 { uint32_t x = cpu->cd.arm.r[14];
2165 cpu->cd.arm.flags &= ~ARM_F_C;
2166 if (x & 0x80000000)
2167  cpu->cd.arm.flags |= ARM_F_C;
2168 x <<= 1;
2169  return x; }
2170 }
2171 uint32_t arm_rs_r15_t0_c1(struct cpu *cpu, struct arm_instr_call *ic) {
2172  uint32_t tmp, low_pc = ((size_t)ic - (size_t)
2173  cpu->cd.arm.cur_ic_page)/sizeof(struct arm_instr_call);
2174  tmp = cpu->pc & ~((ARM_IC_ENTRIES_PER_PAGE-1) <<
2176  tmp += (low_pc << ARM_INSTR_ALIGNMENT_SHIFT) + 8;
2177 { uint32_t x = tmp;
2178 cpu->cd.arm.flags &= ~ARM_F_C;
2179 if (x & 0x80000000)
2180  cpu->cd.arm.flags |= ARM_F_C;
2181 x <<= 1;
2182  return x; }
2183 }
2184 uint32_t arm_rs_r0_t1_c1(struct cpu *cpu, struct arm_instr_call *ic) {
2185 { uint32_t x = cpu->cd.arm.r[0];
2186  uint32_t y = cpu->cd.arm.r[0] & 255;
2187  if (y != 0) {
2188  cpu->cd.arm.flags &= ~ARM_F_C;
2189  if (y >= 32) return 0;
2190  x <<= (y - 1);
2191  if (x & 0x80000000)
2192  cpu->cd.arm.flags |= ARM_F_C;
2193  x <<= 1;
2194  }
2195  return x; }
2196 }
2197 uint32_t arm_rs_r1_t1_c1(struct cpu *cpu, struct arm_instr_call *ic) {
2198 { uint32_t x = cpu->cd.arm.r[1];
2199  uint32_t y = cpu->cd.arm.r[0] & 255;
2200  if (y != 0) {
2201  cpu->cd.arm.flags &= ~ARM_F_C;
2202  if (y >= 32) return 0;
2203  x <<= (y - 1);
2204  if (x & 0x80000000)
2205  cpu->cd.arm.flags |= ARM_F_C;
2206  x <<= 1;
2207  }
2208  return x; }
2209 }
2210 uint32_t arm_rs_r2_t1_c1(struct cpu *cpu, struct arm_instr_call *ic) {
2211 { uint32_t x = cpu->cd.arm.r[2];
2212  uint32_t y = cpu->cd.arm.r[0] & 255;
2213  if (y != 0) {
2214  cpu->cd.arm.flags &= ~ARM_F_C;
2215  if (y >= 32) return 0;
2216  x <<= (y - 1);
2217  if (x & 0x80000000)
2218  cpu->cd.arm.flags |= ARM_F_C;
2219  x <<= 1;
2220  }
2221  return x; }
2222 }
2223 uint32_t arm_rs_r3_t1_c1(struct cpu *cpu, struct arm_instr_call *ic) {
2224 { uint32_t x = cpu->cd.arm.r[3];
2225  uint32_t y = cpu->cd.arm.r[0] & 255;
2226  if (y != 0) {
2227  cpu->cd.arm.flags &= ~ARM_F_C;
2228  if (y >= 32) return 0;
2229  x <<= (y - 1);
2230  if (x & 0x80000000)
2231  cpu->cd.arm.flags |= ARM_F_C;
2232  x <<= 1;
2233  }
2234  return x; }
2235 }
2236 uint32_t arm_rs_r4_t1_c1(struct cpu *cpu, struct arm_instr_call *ic) {
2237 { uint32_t x = cpu->cd.arm.r[4];
2238  uint32_t y = cpu->cd.arm.r[0] & 255;
2239  if (y != 0) {
2240  cpu->cd.arm.flags &= ~ARM_F_C;
2241  if (y >= 32) return 0;
2242  x <<= (y - 1);
2243  if (x & 0x80000000)
2244  cpu->cd.arm.flags |= ARM_F_C;
2245  x <<= 1;
2246  }
2247  return x; }
2248 }
2249 uint32_t arm_rs_r5_t1_c1(struct cpu *cpu, struct arm_instr_call *ic) {
2250 { uint32_t x = cpu->cd.arm.r[5];
2251  uint32_t y = cpu->cd.arm.r[0] & 255;
2252  if (y != 0) {
2253  cpu->cd.arm.flags &= ~ARM_F_C;
2254  if (y >= 32) return 0;
2255  x <<= (y - 1);
2256  if (x & 0x80000000)
2257  cpu->cd.arm.flags |= ARM_F_C;
2258  x <<= 1;
2259  }
2260  return x; }
2261 }
2262 uint32_t arm_rs_r6_t1_c1(struct cpu *cpu, struct arm_instr_call *ic) {
2263 { uint32_t x = cpu->cd.arm.r[6];
2264  uint32_t y = cpu->cd.arm.r[0] & 255;
2265  if (y != 0) {
2266  cpu->cd.arm.flags &= ~ARM_F_C;
2267  if (y >= 32) return 0;
2268  x <<= (y - 1);
2269  if (x & 0x80000000)
2270  cpu->cd.arm.flags |= ARM_F_C;
2271  x <<= 1;
2272  }
2273  return x; }
2274 }
2275 uint32_t arm_rs_r7_t1_c1(struct cpu *cpu, struct arm_instr_call *ic) {
2276 { uint32_t x = cpu->cd.arm.r[7];
2277  uint32_t y = cpu->cd.arm.r[0] & 255;
2278  if (y != 0) {
2279  cpu->cd.arm.flags &= ~ARM_F_C;
2280  if (y >= 32) return 0;
2281  x <<= (y - 1);
2282  if (x & 0x80000000)
2283  cpu->cd.arm.flags |= ARM_F_C;
2284  x <<= 1;
2285  }
2286  return x; }
2287 }
2288 uint32_t arm_rs_r8_t1_c1(struct cpu *cpu, struct arm_instr_call *ic) {
2289 { uint32_t x = cpu->cd.arm.r[8];
2290  uint32_t y = cpu->cd.arm.r[0] & 255;
2291  if (y != 0) {
2292  cpu->cd.arm.flags &= ~ARM_F_C;
2293  if (y >= 32) return 0;
2294  x <<= (y - 1);
2295  if (x & 0x80000000)
2296  cpu->cd.arm.flags |= ARM_F_C;
2297  x <<= 1;
2298  }
2299  return x; }
2300 }
2301 uint32_t arm_rs_r9_t1_c1(struct cpu *cpu, struct arm_instr_call *ic) {
2302 { uint32_t x = cpu->cd.arm.r[9];
2303  uint32_t y = cpu->cd.arm.r[0] & 255;
2304  if (y != 0) {
2305  cpu->cd.arm.flags &= ~ARM_F_C;
2306  if (y >= 32) return 0;
2307  x <<= (y - 1);
2308  if (x & 0x80000000)
2309  cpu->cd.arm.flags |= ARM_F_C;
2310  x <<= 1;
2311  }
2312  return x; }
2313 }
2314 uint32_t arm_rs_r10_t1_c1(struct cpu *cpu, struct arm_instr_call *ic) {
2315 { uint32_t x = cpu->cd.arm.r[10];
2316  uint32_t y = cpu->cd.arm.r[0] & 255;
2317  if (y != 0) {
2318  cpu->cd.arm.flags &= ~ARM_F_C;
2319  if (y >= 32) return 0;
2320  x <<= (y - 1);
2321  if (x & 0x80000000)
2322  cpu->cd.arm.flags |= ARM_F_C;
2323  x <<= 1;
2324  }
2325  return x; }
2326 }
2327 uint32_t arm_rs_r11_t1_c1(struct cpu *cpu, struct arm_instr_call *ic) {
2328 { uint32_t x = cpu->cd.arm.r[11];
2329  uint32_t y = cpu->cd.arm.r[0] & 255;
2330  if (y != 0) {
2331  cpu->cd.arm.flags &= ~ARM_F_C;
2332  if (y >= 32) return 0;
2333  x <<= (y - 1);
2334  if (x & 0x80000000)
2335  cpu->cd.arm.flags |= ARM_F_C;
2336  x <<= 1;
2337  }
2338  return x; }
2339 }
2340 uint32_t arm_rs_r12_t1_c1(struct cpu *cpu, struct arm_instr_call *ic) {
2341 { uint32_t x = cpu->cd.arm.r[12];
2342  uint32_t y = cpu->cd.arm.r[0] & 255;
2343  if (y != 0) {
2344  cpu->cd.arm.flags &= ~ARM_F_C;
2345  if (y >= 32) return 0;
2346  x <<= (y - 1);
2347  if (x & 0x80000000)
2348  cpu->cd.arm.flags |= ARM_F_C;
2349  x <<= 1;
2350  }
2351  return x; }
2352 }
2353 uint32_t arm_rs_r13_t1_c1(struct cpu *cpu, struct arm_instr_call *ic) {
2354 { uint32_t x = cpu->cd.arm.r[13];
2355  uint32_t y = cpu->cd.arm.r[0] & 255;
2356  if (y != 0) {
2357  cpu->cd.arm.flags &= ~ARM_F_C;
2358  if (y >= 32) return 0;
2359  x <<= (y - 1);
2360  if (x & 0x80000000)
2361  cpu->cd.arm.flags |= ARM_F_C;
2362  x <<= 1;
2363  }
2364  return x; }
2365 }
2366 uint32_t arm_rs_r14_t1_c1(struct cpu *cpu, struct arm_instr_call *ic) {
2367 { uint32_t x = cpu->cd.arm.r[14];
2368  uint32_t y = cpu->cd.arm.r[0] & 255;
2369  if (y != 0) {
2370  cpu->cd.arm.flags &= ~ARM_F_C;
2371  if (y >= 32) return 0;
2372  x <<= (y - 1);
2373  if (x & 0x80000000)
2374  cpu->cd.arm.flags |= ARM_F_C;
2375  x <<= 1;
2376  }
2377  return x; }
2378 }
2379 uint32_t arm_rs_r15_t1_c1(struct cpu *cpu, struct arm_instr_call *ic) {
2380  uint32_t tmp, low_pc = ((size_t)ic - (size_t)
2381  cpu->cd.arm.cur_ic_page)/sizeof(struct arm_instr_call);
2382  tmp = cpu->pc & ~((ARM_IC_ENTRIES_PER_PAGE-1) <<
2384  tmp += (low_pc << ARM_INSTR_ALIGNMENT_SHIFT) + 8;
2385 { uint32_t x = tmp;
2386  uint32_t y = cpu->cd.arm.r[0] & 255;
2387  if (y != 0) {
2388  cpu->cd.arm.flags &= ~ARM_F_C;
2389  if (y >= 32) return 0;
2390  x <<= (y - 1);
2391  if (x & 0x80000000)
2392  cpu->cd.arm.flags |= ARM_F_C;
2393  x <<= 1;
2394  }
2395  return x; }
2396 }
2397 uint32_t arm_rs_r0_t2_c1(struct cpu *cpu, struct arm_instr_call *ic) {
2398 { uint32_t x = cpu->cd.arm.r[0];
2399 cpu->cd.arm.flags &= ~ARM_F_C;
2400 if (x & 0x1)
2401  cpu->cd.arm.flags |= ARM_F_C;
2402 x >>= 1;
2403  return x; }
2404 }
2405 uint32_t arm_rs_r1_t2_c1(struct cpu *cpu, struct arm_instr_call *ic) {
2406 { uint32_t x = cpu->cd.arm.r[1];
2407 cpu->cd.arm.flags &= ~ARM_F_C;
2408 if (x & 0x1)
2409  cpu->cd.arm.flags |= ARM_F_C;
2410 x >>= 1;
2411  return x; }
2412 }
2413 uint32_t arm_rs_r2_t2_c1(struct cpu *cpu, struct arm_instr_call *ic) {
2414 { uint32_t x = cpu->cd.arm.r[2];
2415 cpu->cd.arm.flags &= ~ARM_F_C;
2416 if (x & 0x1)
2417  cpu->cd.arm.flags |= ARM_F_C;
2418 x >>= 1;
2419  return x; }
2420 }
2421 uint32_t arm_rs_r3_t2_c1(struct cpu *cpu, struct arm_instr_call *ic) {
2422 { uint32_t x = cpu->cd.arm.r[3];
2423 cpu->cd.arm.flags &= ~ARM_F_C;
2424 if (x & 0x1)
2425  cpu->cd.arm.flags |= ARM_F_C;
2426 x >>= 1;
2427  return x; }
2428 }
2429 uint32_t arm_rs_r4_t2_c1(struct cpu *cpu, struct arm_instr_call *ic) {
2430 { uint32_t x = cpu->cd.arm.r[4];
2431 cpu->cd.arm.flags &= ~ARM_F_C;
2432 if (x & 0x1)
2433  cpu->cd.arm.flags |= ARM_F_C;
2434 x >>= 1;
2435  return x; }
2436 }
2437 uint32_t arm_rs_r5_t2_c1(struct cpu *cpu, struct arm_instr_call *ic) {
2438 { uint32_t x = cpu->cd.arm.r[5];
2439 cpu->cd.arm.flags &= ~ARM_F_C;
2440 if (x & 0x1)
2441  cpu->cd.arm.flags |= ARM_F_C;
2442 x >>= 1;
2443  return x; }
2444 }
2445 uint32_t arm_rs_r6_t2_c1(struct cpu *cpu, struct arm_instr_call *ic) {
2446 { uint32_t x = cpu->cd.arm.r[6];
2447 cpu->cd.arm.flags &= ~ARM_F_C;
2448 if (x & 0x1)
2449  cpu->cd.arm.flags |= ARM_F_C;
2450 x >>= 1;
2451  return x; }
2452 }
2453 uint32_t arm_rs_r7_t2_c1(struct cpu *cpu, struct arm_instr_call *ic) {
2454 { uint32_t x = cpu->cd.arm.r[7];
2455 cpu->cd.arm.flags &= ~ARM_F_C;
2456 if (x & 0x1)
2457  cpu->cd.arm.flags |= ARM_F_C;
2458 x >>= 1;
2459  return x; }
2460 }
2461 uint32_t arm_rs_r8_t2_c1(struct cpu *cpu, struct arm_instr_call *ic) {
2462 { uint32_t x = cpu->cd.arm.r[8];
2463 cpu->cd.arm.flags &= ~ARM_F_C;
2464 if (x & 0x1)
2465  cpu->cd.arm.flags |= ARM_F_C;
2466 x >>= 1;
2467  return x; }
2468 }
2469 uint32_t arm_rs_r9_t2_c1(struct cpu *cpu, struct arm_instr_call *ic) {
2470 { uint32_t x = cpu->cd.arm.r[9];
2471 cpu->cd.arm.flags &= ~ARM_F_C;
2472 if (x & 0x1)
2473  cpu->cd.arm.flags |= ARM_F_C;
2474 x >>= 1;
2475  return x; }
2476 }
2477 uint32_t arm_rs_r10_t2_c1(struct cpu *cpu, struct arm_instr_call *ic) {
2478 { uint32_t x = cpu->cd.arm.r[10];
2479 cpu->cd.arm.flags &= ~ARM_F_C;
2480 if (x & 0x1)
2481  cpu->cd.arm.flags |= ARM_F_C;
2482 x >>= 1;
2483  return x; }
2484 }
2485 uint32_t arm_rs_r11_t2_c1(struct cpu *cpu, struct arm_instr_call *ic) {
2486 { uint32_t x = cpu->cd.arm.r[11];
2487 cpu->cd.arm.flags &= ~ARM_F_C;
2488 if (x & 0x1)
2489  cpu->cd.arm.flags |= ARM_F_C;
2490 x >>= 1;
2491  return x; }
2492 }
2493 uint32_t arm_rs_r12_t2_c1(struct cpu *cpu, struct arm_instr_call *ic) {
2494 { uint32_t x = cpu->cd.arm.r[12];
2495 cpu->cd.arm.flags &= ~ARM_F_C;
2496 if (x & 0x1)
2497  cpu->cd.arm.flags |= ARM_F_C;
2498 x >>= 1;
2499  return x; }
2500 }
2501 uint32_t arm_rs_r13_t2_c1(struct cpu *cpu, struct arm_instr_call *ic) {
2502 { uint32_t x = cpu->cd.arm.r[13];
2503 cpu->cd.arm.flags &= ~ARM_F_C;
2504 if (x & 0x1)
2505  cpu->cd.arm.flags |= ARM_F_C;
2506 x >>= 1;
2507  return x; }
2508 }
2509 uint32_t arm_rs_r14_t2_c1(struct cpu *cpu, struct arm_instr_call *ic) {
2510 { uint32_t x = cpu->cd.arm.r[14];
2511 cpu->cd.arm.flags &= ~ARM_F_C;
2512 if (x & 0x1)
2513  cpu->cd.arm.flags |= ARM_F_C;
2514 x >>= 1;
2515  return x; }
2516 }
2517 uint32_t arm_rs_r15_t2_c1(struct cpu *cpu, struct arm_instr_call *ic) {
2518  uint32_t tmp, low_pc = ((size_t)ic - (size_t)
2519  cpu->cd.arm.cur_ic_page)/sizeof(struct arm_instr_call);
2520  tmp = cpu->pc & ~((ARM_IC_ENTRIES_PER_PAGE-1) <<
2522  tmp += (low_pc << ARM_INSTR_ALIGNMENT_SHIFT) + 8;
2523 { uint32_t x = tmp;
2524 cpu->cd.arm.flags &= ~ARM_F_C;
2525 if (x & 0x1)
2526  cpu->cd.arm.flags |= ARM_F_C;
2527 x >>= 1;
2528  return x; }
2529 }
2530 uint32_t arm_rs_r0_t3_c1(struct cpu *cpu, struct arm_instr_call *ic) {
2531 { uint32_t x = cpu->cd.arm.r[0],y=cpu->cd.arm.r[0]&255;
2532 if(y==0) return x;
2533 cpu->cd.arm.flags &= ~ARM_F_C;
2534 if(y>31) y=32;
2535 y--; x >>= y;
2536 if (x & 1) cpu->cd.arm.flags |= ARM_F_C;
2537  return x >> 1; }
2538 }
2539 uint32_t arm_rs_r1_t3_c1(struct cpu *cpu, struct arm_instr_call *ic) {
2540 { uint32_t x = cpu->cd.arm.r[1],y=cpu->cd.arm.r[0]&255;
2541 if(y==0) return x;
2542 cpu->cd.arm.flags &= ~ARM_F_C;
2543 if(y>31) y=32;
2544 y--; x >>= y;
2545 if (x & 1) cpu->cd.arm.flags |= ARM_F_C;
2546  return x >> 1; }
2547 }
2548 uint32_t arm_rs_r2_t3_c1(struct cpu *cpu, struct arm_instr_call *ic) {
2549 { uint32_t x = cpu->cd.arm.r[2],y=cpu->cd.arm.r[0]&255;
2550 if(y==0) return x;
2551 cpu->cd.arm.flags &= ~ARM_F_C;
2552 if(y>31) y=32;
2553 y--; x >>= y;
2554 if (x & 1) cpu->cd.arm.flags |= ARM_F_C;
2555  return x >> 1; }
2556 }
2557 uint32_t arm_rs_r3_t3_c1(struct cpu *cpu, struct arm_instr_call *ic) {
2558 { uint32_t x = cpu->cd.arm.r[3],y=cpu->cd.arm.r[0]&255;
2559 if(y==0) return x;
2560 cpu->cd.arm.flags &= ~ARM_F_C;
2561 if(y>31) y=32;
2562 y--; x >>= y;
2563 if (x & 1) cpu->cd.arm.flags |= ARM_F_C;
2564  return x >> 1; }
2565 }
2566 uint32_t arm_rs_r4_t3_c1(struct cpu *cpu, struct arm_instr_call *ic) {
2567 { uint32_t x = cpu->cd.arm.r[4],y=cpu->cd.arm.r[0]&255;
2568 if(y==0) return x;
2569 cpu->cd.arm.flags &= ~ARM_F_C;
2570 if(y>31) y=32;
2571 y--; x >>= y;
2572 if (x & 1) cpu->cd.arm.flags |= ARM_F_C;
2573  return x >> 1; }
2574 }
2575 uint32_t arm_rs_r5_t3_c1(struct cpu *cpu, struct arm_instr_call *ic) {
2576 { uint32_t x = cpu->cd.arm.r[5],y=cpu->cd.arm.r[0]&255;
2577 if(y==0) return x;
2578 cpu->cd.arm.flags &= ~ARM_F_C;
2579 if(y>31) y=32;
2580 y--; x >>= y;
2581 if (x & 1) cpu->cd.arm.flags |= ARM_F_C;
2582  return x >> 1; }
2583 }
2584 uint32_t arm_rs_r6_t3_c1(struct cpu *cpu, struct arm_instr_call *ic) {
2585 { uint32_t x = cpu->cd.arm.r[6],y=cpu->cd.arm.r[0]&255;
2586 if(y==0) return x;
2587 cpu->cd.arm.flags &= ~ARM_F_C;
2588 if(y>31) y=32;
2589 y--; x >>= y;
2590 if (x & 1) cpu->cd.arm.flags |= ARM_F_C;
2591  return x >> 1; }
2592 }
2593 uint32_t arm_rs_r7_t3_c1(struct cpu *cpu, struct arm_instr_call *ic) {
2594 { uint32_t x = cpu->cd.arm.r[7],y=cpu->cd.arm.r[0]&255;
2595 if(y==0) return x;
2596 cpu->cd.arm.flags &= ~ARM_F_C;
2597 if(y>31) y=32;
2598 y--; x >>= y;
2599 if (x & 1) cpu->cd.arm.flags |= ARM_F_C;
2600  return x >> 1; }
2601 }
2602 uint32_t arm_rs_r8_t3_c1(struct cpu *cpu, struct arm_instr_call *ic) {
2603 { uint32_t x = cpu->cd.arm.r[8],y=cpu->cd.arm.r[0]&255;
2604 if(y==0) return x;
2605 cpu->cd.arm.flags &= ~ARM_F_C;
2606 if(y>31) y=32;
2607 y--; x >>= y;
2608 if (x & 1) cpu->cd.arm.flags |= ARM_F_C;
2609  return x >> 1; }
2610 }
2611 uint32_t arm_rs_r9_t3_c1(struct cpu *cpu, struct arm_instr_call *ic) {
2612 { uint32_t x = cpu->cd.arm.r[9],y=cpu->cd.arm.r[0]&255;
2613 if(y==0) return x;
2614 cpu->cd.arm.flags &= ~ARM_F_C;
2615 if(y>31) y=32;
2616 y--; x >>= y;
2617 if (x & 1) cpu->cd.arm.flags |= ARM_F_C;
2618  return x >> 1; }
2619 }
2620 uint32_t arm_rs_r10_t3_c1(struct cpu *cpu, struct arm_instr_call *ic) {
2621 { uint32_t x = cpu->cd.arm.r[10],y=cpu->cd.arm.r[0]&255;
2622 if(y==0) return x;
2623 cpu->cd.arm.flags &= ~ARM_F_C;
2624 if(y>31) y=32;
2625 y--; x >>= y;
2626 if (x & 1) cpu->cd.arm.flags |= ARM_F_C;
2627  return x >> 1; }
2628 }
2629 uint32_t arm_rs_r11_t3_c1(struct cpu *cpu, struct arm_instr_call *ic) {
2630 { uint32_t x = cpu->cd.arm.r[11],y=cpu->cd.arm.r[0]&255;
2631 if(y==0) return x;
2632 cpu->cd.arm.flags &= ~ARM_F_C;
2633 if(y>31) y=32;
2634 y--; x >>= y;
2635 if (x & 1) cpu->cd.arm.flags |= ARM_F_C;
2636  return x >> 1; }
2637 }
2638 uint32_t arm_rs_r12_t3_c1(struct cpu *cpu, struct arm_instr_call *ic) {
2639 { uint32_t x = cpu->cd.arm.r[12],y=cpu->cd.arm.r[0]&255;
2640 if(y==0) return x;
2641 cpu->cd.arm.flags &= ~ARM_F_C;
2642 if(y>31) y=32;
2643 y--; x >>= y;
2644 if (x & 1) cpu->cd.arm.flags |= ARM_F_C;
2645  return x >> 1; }
2646 }
2647 uint32_t arm_rs_r13_t3_c1(struct cpu *cpu, struct arm_instr_call *ic) {
2648 { uint32_t x = cpu->cd.arm.r[13],y=cpu->cd.arm.r[0]&255;
2649 if(y==0) return x;
2650 cpu->cd.arm.flags &= ~ARM_F_C;
2651 if(y>31) y=32;
2652 y--; x >>= y;
2653 if (x & 1) cpu->cd.arm.flags |= ARM_F_C;
2654  return x >> 1; }
2655 }
2656 uint32_t arm_rs_r14_t3_c1(struct cpu *cpu, struct arm_instr_call *ic) {
2657 { uint32_t x = cpu->cd.arm.r[14],y=cpu->cd.arm.r[0]&255;
2658 if(y==0) return x;
2659 cpu->cd.arm.flags &= ~ARM_F_C;
2660 if(y>31) y=32;
2661 y--; x >>= y;
2662 if (x & 1) cpu->cd.arm.flags |= ARM_F_C;
2663  return x >> 1; }
2664 }
2665 uint32_t arm_rs_r15_t3_c1(struct cpu *cpu, struct arm_instr_call *ic) {
2666  uint32_t tmp, low_pc = ((size_t)ic - (size_t)
2667  cpu->cd.arm.cur_ic_page)/sizeof(struct arm_instr_call);
2668  tmp = cpu->pc & ~((ARM_IC_ENTRIES_PER_PAGE-1) <<
2670  tmp += (low_pc << ARM_INSTR_ALIGNMENT_SHIFT) + 8;
2671 { uint32_t x = tmp,y=cpu->cd.arm.r[0]&255;
2672 if(y==0) return x;
2673 cpu->cd.arm.flags &= ~ARM_F_C;
2674 if(y>31) y=32;
2675 y--; x >>= y;
2676 if (x & 1) cpu->cd.arm.flags |= ARM_F_C;
2677  return x >> 1; }
2678 }
2679 uint32_t arm_rs_r0_t4_c1(struct cpu *cpu, struct arm_instr_call *ic) {
2680 { int32_t x = cpu->cd.arm.r[0];
2681 cpu->cd.arm.flags &= ~ARM_F_C;
2682 if (x & 0x1)
2683  cpu->cd.arm.flags |= ARM_F_C;
2684 x >>= 1;
2685  return x; }
2686 }
2687 uint32_t arm_rs_r1_t4_c1(struct cpu *cpu, struct arm_instr_call *ic) {
2688 { int32_t x = cpu->cd.arm.r[1];
2689 cpu->cd.arm.flags &= ~ARM_F_C;
2690 if (x & 0x1)
2691  cpu->cd.arm.flags |= ARM_F_C;
2692 x >>= 1;
2693  return x; }
2694 }
2695 uint32_t arm_rs_r2_t4_c1(struct cpu *cpu, struct arm_instr_call *ic) {
2696 { int32_t x = cpu->cd.arm.r[2];
2697 cpu->cd.arm.flags &= ~ARM_F_C;
2698 if (x & 0x1)
2699  cpu->cd.arm.flags |= ARM_F_C;
2700 x >>= 1;
2701  return x; }
2702 }
2703 uint32_t arm_rs_r3_t4_c1(struct cpu *cpu, struct arm_instr_call *ic) {
2704 { int32_t x = cpu->cd.arm.r[3];
2705 cpu->cd.arm.flags &= ~ARM_F_C;
2706 if (x & 0x1)
2707  cpu->cd.arm.flags |= ARM_F_C;
2708 x >>= 1;
2709  return x; }
2710 }
2711 uint32_t arm_rs_r4_t4_c1(struct cpu *cpu, struct arm_instr_call *ic) {
2712 { int32_t x = cpu->cd.arm.r[4];
2713 cpu->cd.arm.flags &= ~ARM_F_C;
2714 if (x & 0x1)
2715  cpu->cd.arm.flags |= ARM_F_C;
2716 x >>= 1;
2717  return x; }
2718 }
2719 uint32_t arm_rs_r5_t4_c1(struct cpu *cpu, struct arm_instr_call *ic) {
2720 { int32_t x = cpu->cd.arm.r[5];
2721 cpu->cd.arm.flags &= ~ARM_F_C;
2722 if (x & 0x1)
2723  cpu->cd.arm.flags |= ARM_F_C;
2724 x >>= 1;
2725  return x; }
2726 }
2727 uint32_t arm_rs_r6_t4_c1(struct cpu *cpu, struct arm_instr_call *ic) {
2728 { int32_t x = cpu->cd.arm.r[6];
2729 cpu->cd.arm.flags &= ~ARM_F_C;
2730 if (x & 0x1)
2731  cpu->cd.arm.flags |= ARM_F_C;
2732 x >>= 1;
2733  return x; }
2734 }
2735 uint32_t arm_rs_r7_t4_c1(struct cpu *cpu, struct arm_instr_call *ic) {
2736 { int32_t x = cpu->cd.arm.r[7];
2737 cpu->cd.arm.flags &= ~ARM_F_C;
2738 if (x & 0x1)
2739  cpu->cd.arm.flags |= ARM_F_C;
2740 x >>= 1;
2741  return x; }
2742 }
2743 uint32_t arm_rs_r8_t4_c1(struct cpu *cpu, struct arm_instr_call *ic) {
2744 { int32_t x = cpu->cd.arm.r[8];
2745 cpu->cd.arm.flags &= ~ARM_F_C;
2746 if (x & 0x1)
2747  cpu->cd.arm.flags |= ARM_F_C;
2748 x >>= 1;
2749  return x; }
2750 }
2751 uint32_t arm_rs_r9_t4_c1(struct cpu *cpu, struct arm_instr_call *ic) {
2752 { int32_t x = cpu->cd.arm.r[9];
2753 cpu->cd.arm.flags &= ~ARM_F_C;
2754 if (x & 0x1)
2755  cpu->cd.arm.flags |= ARM_F_C;
2756 x >>= 1;
2757  return x; }
2758 }
2759 uint32_t arm_rs_r10_t4_c1(struct cpu *cpu, struct arm_instr_call *ic) {
2760 { int32_t x = cpu->cd.arm.r[10];
2761 cpu->cd.arm.flags &= ~ARM_F_C;
2762 if (x & 0x1)
2763  cpu->cd.arm.flags |= ARM_F_C;
2764 x >>= 1;
2765  return x; }
2766 }
2767 uint32_t arm_rs_r11_t4_c1(struct cpu *cpu, struct arm_instr_call *ic) {
2768 { int32_t x = cpu->cd.arm.r[11];
2769 cpu->cd.arm.flags &= ~ARM_F_C;
2770 if (x & 0x1)
2771  cpu->cd.arm.flags |= ARM_F_C;
2772 x >>= 1;
2773  return x; }
2774 }
2775 uint32_t arm_rs_r12_t4_c1(struct cpu *cpu, struct arm_instr_call *ic) {
2776 { int32_t x = cpu->cd.arm.r[12];
2777 cpu->cd.arm.flags &= ~ARM_F_C;
2778 if (x & 0x1)
2779  cpu->cd.arm.flags |= ARM_F_C;
2780 x >>= 1;
2781  return x; }
2782 }
2783 uint32_t arm_rs_r13_t4_c1(struct cpu *cpu, struct arm_instr_call *ic) {
2784 { int32_t x = cpu->cd.arm.r[13];
2785 cpu->cd.arm.flags &= ~ARM_F_C;
2786 if (x & 0x1)
2787  cpu->cd.arm.flags |= ARM_F_C;
2788 x >>= 1;
2789  return x; }
2790 }
2791 uint32_t arm_rs_r14_t4_c1(struct cpu *cpu, struct arm_instr_call *ic) {
2792 { int32_t x = cpu->cd.arm.r[14];
2793 cpu->cd.arm.flags &= ~ARM_F_C;
2794 if (x & 0x1)
2795  cpu->cd.arm.flags |= ARM_F_C;
2796 x >>= 1;
2797  return x; }
2798 }
2799 uint32_t arm_rs_r15_t4_c1(struct cpu *cpu, struct arm_instr_call *ic) {
2800  uint32_t tmp, low_pc = ((size_t)ic - (size_t)
2801  cpu->cd.arm.cur_ic_page)/sizeof(struct arm_instr_call);
2802  tmp = cpu->pc & ~((ARM_IC_ENTRIES_PER_PAGE-1) <<
2804  tmp += (low_pc << ARM_INSTR_ALIGNMENT_SHIFT) + 8;
2805 { int32_t x = tmp;
2806 cpu->cd.arm.flags &= ~ARM_F_C;
2807 if (x & 0x1)
2808  cpu->cd.arm.flags |= ARM_F_C;
2809 x >>= 1;
2810  return x; }
2811 }
2812 uint32_t arm_rs_r0_t5_c1(struct cpu *cpu, struct arm_instr_call *ic) {
2813 { int32_t x = cpu->cd.arm.r[0],y=cpu->cd.arm.r[0]&255;
2814 if(y==0) return x;
2815 cpu->cd.arm.flags &= ~ARM_F_C;
2816 if(y>31) y=31;
2817 y--; x >>= y;
2818 if (x & 1) cpu->cd.arm.flags |= ARM_F_C;
2819  return (int32_t)x >> 1; }
2820 }
2821 uint32_t arm_rs_r1_t5_c1(struct cpu *cpu, struct arm_instr_call *ic) {
2822 { int32_t x = cpu->cd.arm.r[1],y=cpu->cd.arm.r[0]&255;
2823 if(y==0) return x;
2824 cpu->cd.arm.flags &= ~ARM_F_C;
2825 if(y>31) y=31;
2826 y--; x >>= y;
2827 if (x & 1) cpu->cd.arm.flags |= ARM_F_C;
2828  return (int32_t)x >> 1; }
2829 }
2830 uint32_t arm_rs_r2_t5_c1(struct cpu *cpu, struct arm_instr_call *ic) {
2831 { int32_t x = cpu->cd.arm.r[2],y=cpu->cd.arm.r[0]&255;
2832 if(y==0) return x;
2833 cpu->cd.arm.flags &= ~ARM_F_C;
2834 if(y>31) y=31;
2835 y--; x >>= y;
2836 if (x & 1) cpu->cd.arm.flags |= ARM_F_C;
2837  return (int32_t)x >> 1; }
2838 }
2839 uint32_t arm_rs_r3_t5_c1(struct cpu *cpu, struct arm_instr_call *ic) {
2840 { int32_t x = cpu->cd.arm.r[3],y=cpu->cd.arm.r[0]&255;
2841 if(y==0) return x;
2842 cpu->cd.arm.flags &= ~ARM_F_C;
2843 if(y>31) y=31;
2844 y--; x >>= y;
2845 if (x & 1) cpu->cd.arm.flags |= ARM_F_C;
2846  return (int32_t)x >> 1; }
2847 }
2848 uint32_t arm_rs_r4_t5_c1(struct cpu *cpu, struct arm_instr_call *ic) {
2849 { int32_t x = cpu->cd.arm.r[4],y=cpu->cd.arm.r[0]&255;
2850 if(y==0) return x;
2851 cpu->cd.arm.flags &= ~ARM_F_C;
2852 if(y>31) y=31;
2853 y--; x >>= y;
2854 if (x & 1) cpu->cd.arm.flags |= ARM_F_C;
2855  return (int32_t)x >> 1; }
2856 }
2857 uint32_t arm_rs_r5_t5_c1(struct cpu *cpu, struct arm_instr_call *ic) {
2858 { int32_t x = cpu->cd.arm.r[5],y=cpu->cd.arm.r[0]&255;
2859 if(y==0) return x;
2860 cpu->cd.arm.flags &= ~ARM_F_C;
2861 if(y>31) y=31;
2862 y--; x >>= y;
2863 if (x & 1) cpu->cd.arm.flags |= ARM_F_C;
2864  return (int32_t)x >> 1; }
2865 }
2866 uint32_t arm_rs_r6_t5_c1(struct cpu *cpu, struct arm_instr_call *ic) {
2867 { int32_t x = cpu->cd.arm.r[6],y=cpu->cd.arm.r[0]&255;
2868 if(y==0) return x;
2869 cpu->cd.arm.flags &= ~ARM_F_C;
2870 if(y>31) y=31;
2871 y--; x >>= y;
2872 if (x & 1) cpu->cd.arm.flags |= ARM_F_C;
2873  return (int32_t)x >> 1; }
2874 }
2875 uint32_t arm_rs_r7_t5_c1(struct cpu *cpu, struct arm_instr_call *ic) {
2876 { int32_t x = cpu->cd.arm.r[7],y=cpu->cd.arm.r[0]&255;
2877 if(y==0) return x;
2878 cpu->cd.arm.flags &= ~ARM_F_C;
2879 if(y>31) y=31;
2880 y--; x >>= y;
2881 if (x & 1) cpu->cd.arm.flags |= ARM_F_C;
2882  return (int32_t)x >> 1; }
2883 }
2884 uint32_t arm_rs_r8_t5_c1(struct cpu *cpu, struct arm_instr_call *ic) {
2885 { int32_t x = cpu->cd.arm.r[8],y=cpu->cd.arm.r[0]&255;
2886 if(y==0) return x;
2887 cpu->cd.arm.flags &= ~ARM_F_C;
2888 if(y>31) y=31;
2889 y--; x >>= y;
2890 if (x & 1) cpu->cd.arm.flags |= ARM_F_C;
2891  return (int32_t)x >> 1; }
2892 }
2893 uint32_t arm_rs_r9_t5_c1(struct cpu *cpu, struct arm_instr_call *ic) {
2894 { int32_t x = cpu->cd.arm.r[9],y=cpu->cd.arm.r[0]&255;
2895 if(y==0) return x;
2896 cpu->cd.arm.flags &= ~ARM_F_C;
2897 if(y>31) y=31;
2898 y--; x >>= y;
2899 if (x & 1) cpu->cd.arm.flags |= ARM_F_C;
2900  return (int32_t)x >> 1; }
2901 }
2902 uint32_t arm_rs_r10_t5_c1(struct cpu *cpu, struct arm_instr_call *ic) {
2903 { int32_t x = cpu->cd.arm.r[10],y=cpu->cd.arm.r[0]&255;
2904 if(y==0) return x;
2905 cpu->cd.arm.flags &= ~ARM_F_C;
2906 if(y>31) y=31;
2907 y--; x >>= y;
2908 if (x & 1) cpu->cd.arm.flags |= ARM_F_C;
2909  return (int32_t)x >> 1; }
2910 }
2911 uint32_t arm_rs_r11_t5_c1(struct cpu *cpu, struct arm_instr_call *ic) {
2912 { int32_t x = cpu->cd.arm.r[11],y=cpu->cd.arm.r[0]&255;
2913 if(y==0) return x;
2914 cpu->cd.arm.flags &= ~ARM_F_C;
2915 if(y>31) y=31;
2916 y--; x >>= y;
2917 if (x & 1) cpu->cd.arm.flags |= ARM_F_C;
2918  return (int32_t)x >> 1; }
2919 }
2920 uint32_t arm_rs_r12_t5_c1(struct cpu *cpu, struct arm_instr_call *ic) {
2921 { int32_t x = cpu->cd.arm.r[12],y=cpu->cd.arm.r[0]&255;
2922 if(y==0) return x;
2923 cpu->cd.arm.flags &= ~ARM_F_C;
2924 if(y>31) y=31;
2925 y--; x >>= y;
2926 if (x & 1) cpu->cd.arm.flags |= ARM_F_C;
2927  return (int32_t)x >> 1; }
2928 }
2929 uint32_t arm_rs_r13_t5_c1(struct cpu *cpu, struct arm_instr_call *ic) {
2930 { int32_t x = cpu->cd.arm.r[13],y=cpu->cd.arm.r[0]&255;
2931 if(y==0) return x;
2932 cpu->cd.arm.flags &= ~ARM_F_C;
2933 if(y>31) y=31;
2934 y--; x >>= y;
2935 if (x & 1) cpu->cd.arm.flags |= ARM_F_C;
2936  return (int32_t)x >> 1; }
2937 }
2938 uint32_t arm_rs_r14_t5_c1(struct cpu *cpu, struct arm_instr_call *ic) {
2939 { int32_t x = cpu->cd.arm.r[14],y=cpu->cd.arm.r[0]&255;
2940 if(y==0) return x;
2941 cpu->cd.arm.flags &= ~ARM_F_C;
2942 if(y>31) y=31;
2943 y--; x >>= y;
2944 if (x & 1) cpu->cd.arm.flags |= ARM_F_C;
2945  return (int32_t)x >> 1; }
2946 }
2947 uint32_t arm_rs_r15_t5_c1(struct cpu *cpu, struct arm_instr_call *ic) {
2948  uint32_t tmp, low_pc = ((size_t)ic - (size_t)
2949  cpu->cd.arm.cur_ic_page)/sizeof(struct arm_instr_call);
2950  tmp = cpu->pc & ~((ARM_IC_ENTRIES_PER_PAGE-1) <<
2952  tmp += (low_pc << ARM_INSTR_ALIGNMENT_SHIFT) + 8;
2953 { int32_t x = tmp,y=cpu->cd.arm.r[0]&255;
2954 if(y==0) return x;
2955 cpu->cd.arm.flags &= ~ARM_F_C;
2956 if(y>31) y=31;
2957 y--; x >>= y;
2958 if (x & 1) cpu->cd.arm.flags |= ARM_F_C;
2959  return (int32_t)x >> 1; }
2960 }
2961 uint32_t arm_rs_r0_t6_c1(struct cpu *cpu, struct arm_instr_call *ic) {
2962 { uint64_t x = cpu->cd.arm.r[0]; x |= (x << 32);
2963 cpu->cd.arm.flags &= ~ARM_F_C;
2964 if (x & 0x1)
2965  cpu->cd.arm.flags |= ARM_F_C;
2966  return x >> 1; }
2967 }
2968 uint32_t arm_rs_r1_t6_c1(struct cpu *cpu, struct arm_instr_call *ic) {
2969 { uint64_t x = cpu->cd.arm.r[1]; x |= (x << 32);
2970 cpu->cd.arm.flags &= ~ARM_F_C;
2971 if (x & 0x1)
2972  cpu->cd.arm.flags |= ARM_F_C;
2973  return x >> 1; }
2974 }
2975 uint32_t arm_rs_r2_t6_c1(struct cpu *cpu, struct arm_instr_call *ic) {
2976 { uint64_t x = cpu->cd.arm.r[2]; x |= (x << 32);
2977 cpu->cd.arm.flags &= ~ARM_F_C;
2978 if (x & 0x1)
2979  cpu->cd.arm.flags |= ARM_F_C;
2980  return x >> 1; }
2981 }
2982 uint32_t arm_rs_r3_t6_c1(struct cpu *cpu, struct arm_instr_call *ic) {
2983 { uint64_t x = cpu->cd.arm.r[3]; x |= (x << 32);
2984 cpu->cd.arm.flags &= ~ARM_F_C;
2985 if (x & 0x1)
2986  cpu->cd.arm.flags |= ARM_F_C;
2987  return x >> 1; }
2988 }
2989 uint32_t arm_rs_r4_t6_c1(struct cpu *cpu, struct arm_instr_call *ic) {
2990 { uint64_t x = cpu->cd.arm.r[4]; x |= (x << 32);
2991 cpu->cd.arm.flags &= ~ARM_F_C;
2992 if (x & 0x1)
2993  cpu->cd.arm.flags |= ARM_F_C;
2994  return x >> 1; }
2995 }
2996 uint32_t arm_rs_r5_t6_c1(struct cpu *cpu, struct arm_instr_call *ic) {
2997 { uint64_t x = cpu->cd.arm.r[5]; x |= (x << 32);
2998 cpu->cd.arm.flags &= ~ARM_F_C;
2999 if (x & 0x1)
3000  cpu->cd.arm.flags |= ARM_F_C;
3001  return x >> 1; }
3002 }
3003 uint32_t arm_rs_r6_t6_c1(struct cpu *cpu, struct arm_instr_call *ic) {
3004 { uint64_t x = cpu->cd.arm.r[6]; x |= (x << 32);
3005 cpu->cd.arm.flags &= ~ARM_F_C;
3006 if (x & 0x1)
3007  cpu->cd.arm.flags |= ARM_F_C;
3008  return x >> 1; }
3009 }
3010 uint32_t arm_rs_r7_t6_c1(struct cpu *cpu, struct arm_instr_call *ic) {
3011 { uint64_t x = cpu->cd.arm.r[7]; x |= (x << 32);
3012 cpu->cd.arm.flags &= ~ARM_F_C;
3013 if (x & 0x1)
3014  cpu->cd.arm.flags |= ARM_F_C;
3015  return x >> 1; }
3016 }
3017 uint32_t arm_rs_r8_t6_c1(struct cpu *cpu, struct arm_instr_call *ic) {
3018 { uint64_t x = cpu->cd.arm.r[8]; x |= (x << 32);
3019 cpu->cd.arm.flags &= ~ARM_F_C;
3020 if (x & 0x1)
3021  cpu->cd.arm.flags |= ARM_F_C;
3022  return x >> 1; }
3023 }
3024 uint32_t arm_rs_r9_t6_c1(struct cpu *cpu, struct arm_instr_call *ic) {
3025 { uint64_t x = cpu->cd.arm.r[9]; x |= (x << 32);
3026 cpu->cd.arm.flags &= ~ARM_F_C;
3027 if (x & 0x1)
3028  cpu->cd.arm.flags |= ARM_F_C;
3029  return x >> 1; }
3030 }
3031 uint32_t arm_rs_r10_t6_c1(struct cpu *cpu, struct arm_instr_call *ic) {
3032 { uint64_t x = cpu->cd.arm.r[10]; x |= (x << 32);
3033 cpu->cd.arm.flags &= ~ARM_F_C;
3034 if (x & 0x1)
3035  cpu->cd.arm.flags |= ARM_F_C;
3036  return x >> 1; }
3037 }
3038 uint32_t arm_rs_r11_t6_c1(struct cpu *cpu, struct arm_instr_call *ic) {
3039 { uint64_t x = cpu->cd.arm.r[11]; x |= (x << 32);
3040 cpu->cd.arm.flags &= ~ARM_F_C;
3041 if (x & 0x1)
3042  cpu->cd.arm.flags |= ARM_F_C;
3043  return x >> 1; }
3044 }
3045 uint32_t arm_rs_r12_t6_c1(struct cpu *cpu, struct arm_instr_call *ic) {
3046 { uint64_t x = cpu->cd.arm.r[12]; x |= (x << 32);
3047 cpu->cd.arm.flags &= ~ARM_F_C;
3048 if (x & 0x1)
3049  cpu->cd.arm.flags |= ARM_F_C;
3050  return x >> 1; }
3051 }
3052 uint32_t arm_rs_r13_t6_c1(struct cpu *cpu, struct arm_instr_call *ic) {
3053 { uint64_t x = cpu->cd.arm.r[13]; x |= (x << 32);
3054 cpu->cd.arm.flags &= ~ARM_F_C;
3055 if (x & 0x1)
3056  cpu->cd.arm.flags |= ARM_F_C;
3057  return x >> 1; }
3058 }
3059 uint32_t arm_rs_r14_t6_c1(struct cpu *cpu, struct arm_instr_call *ic) {
3060 { uint64_t x = cpu->cd.arm.r[14]; x |= (x << 32);
3061 cpu->cd.arm.flags &= ~ARM_F_C;
3062 if (x & 0x1)
3063  cpu->cd.arm.flags |= ARM_F_C;
3064  return x >> 1; }
3065 }
3066 uint32_t arm_rs_r15_t6_c1(struct cpu *cpu, struct arm_instr_call *ic) {
3067  uint32_t tmp, low_pc = ((size_t)ic - (size_t)
3068  cpu->cd.arm.cur_ic_page)/sizeof(struct arm_instr_call);
3069  tmp = cpu->pc & ~((ARM_IC_ENTRIES_PER_PAGE-1) <<
3071  tmp += (low_pc << ARM_INSTR_ALIGNMENT_SHIFT) + 8;
3072 { uint64_t x = tmp; x |= (x << 32);
3073 cpu->cd.arm.flags &= ~ARM_F_C;
3074 if (x & 0x1)
3075  cpu->cd.arm.flags |= ARM_F_C;
3076  return x >> 1; }
3077 }
3078 uint32_t arm_rs_r0_t7_c1(struct cpu *cpu, struct arm_instr_call *ic) {
3079 { uint64_t x = cpu->cd.arm.r[0]; int y=cpu->cd.arm.r[0]&255;
3080 if(y==0) return x;
3081 y --; y &= 31; x >>= y;
3082 cpu->cd.arm.flags &= ~ARM_F_C;
3083 if (x & 1) cpu->cd.arm.flags |= ARM_F_C;
3084  return x >> 1; }
3085 }
3086 uint32_t arm_rs_r1_t7_c1(struct cpu *cpu, struct arm_instr_call *ic) {
3087 { uint64_t x = cpu->cd.arm.r[1]; int y=cpu->cd.arm.r[0]&255;
3088 if(y==0) return x;
3089 y --; y &= 31; x >>= y;
3090 cpu->cd.arm.flags &= ~ARM_F_C;
3091 if (x & 1) cpu->cd.arm.flags |= ARM_F_C;
3092  return x >> 1; }
3093 }
3094 uint32_t arm_rs_r2_t7_c1(struct cpu *cpu, struct arm_instr_call *ic) {
3095 { uint64_t x = cpu->cd.arm.r[2]; int y=cpu->cd.arm.r[0]&255;
3096 if(y==0) return x;
3097 y --; y &= 31; x >>= y;
3098 cpu->cd.arm.flags &= ~ARM_F_C;
3099 if (x & 1) cpu->cd.arm.flags |= ARM_F_C;
3100  return x >> 1; }
3101 }
3102 uint32_t arm_rs_r3_t7_c1(struct cpu *cpu, struct arm_instr_call *ic) {
3103 { uint64_t x = cpu->cd.arm.r[3]; int y=cpu->cd.arm.r[0]&255;
3104 if(y==0) return x;
3105 y --; y &= 31; x >>= y;
3106 cpu->cd.arm.flags &= ~ARM_F_C;
3107 if (x & 1) cpu->cd.arm.flags |= ARM_F_C;
3108  return x >> 1; }
3109 }
3110 uint32_t arm_rs_r4_t7_c1(struct cpu *cpu, struct arm_instr_call *ic) {
3111 { uint64_t x = cpu->cd.arm.r[4]; int y=cpu->cd.arm.r[0]&255;
3112 if(y==0) return x;
3113 y --; y &= 31; x >>= y;
3114 cpu->cd.arm.flags &= ~ARM_F_C;
3115 if (x & 1) cpu->cd.arm.flags |= ARM_F_C;
3116  return x >> 1; }
3117 }
3118 uint32_t arm_rs_r5_t7_c1(struct cpu *cpu, struct arm_instr_call *ic) {
3119 { uint64_t x = cpu->cd.arm.r[5]; int y=cpu->cd.arm.r[0]&255;
3120 if(y==0) return x;
3121 y --; y &= 31; x >>= y;
3122 cpu->cd.arm.flags &= ~ARM_F_C;
3123 if (x & 1) cpu->cd.arm.flags |= ARM_F_C;
3124  return x >> 1; }
3125 }
3126 uint32_t arm_rs_r6_t7_c1(struct cpu *cpu, struct arm_instr_call *ic) {
3127 { uint64_t x = cpu->cd.arm.r[6]; int y=cpu->cd.arm.r[0]&255;
3128 if(y==0) return x;
3129 y --; y &= 31; x >>= y;
3130 cpu->cd.arm.flags &= ~ARM_F_C;
3131 if (x & 1) cpu->cd.arm.flags |= ARM_F_C;
3132  return x >> 1; }
3133 }
3134 uint32_t arm_rs_r7_t7_c1(struct cpu *cpu, struct arm_instr_call *ic) {
3135 { uint64_t x = cpu->cd.arm.r[7]; int y=cpu->cd.arm.r[0]&255;
3136 if(y==0) return x;
3137 y --; y &= 31; x >>= y;
3138 cpu->cd.arm.flags &= ~ARM_F_C;
3139 if (x & 1) cpu->cd.arm.flags |= ARM_F_C;
3140  return x >> 1; }
3141 }
3142 uint32_t arm_rs_r8_t7_c1(struct cpu *cpu, struct arm_instr_call *ic) {
3143 { uint64_t x = cpu->cd.arm.r[8]; int y=cpu->cd.arm.r[0]&255;
3144 if(y==0) return x;
3145 y --; y &= 31; x >>= y;
3146 cpu->cd.arm.flags &= ~ARM_F_C;
3147 if (x & 1) cpu->cd.arm.flags |= ARM_F_C;
3148  return x >> 1; }
3149 }
3150 uint32_t arm_rs_r9_t7_c1(struct cpu *cpu, struct arm_instr_call *ic) {
3151 { uint64_t x = cpu->cd.arm.r[9]; int y=cpu->cd.arm.r[0]&255;
3152 if(y==0) return x;
3153 y --; y &= 31; x >>= y;
3154 cpu->cd.arm.flags &= ~ARM_F_C;
3155 if (x & 1) cpu->cd.arm.flags |= ARM_F_C;
3156  return x >> 1; }
3157 }
3158 uint32_t arm_rs_r10_t7_c1(struct cpu *cpu, struct arm_instr_call *ic) {
3159 { uint64_t x = cpu->cd.arm.r[10]; int y=cpu->cd.arm.r[0]&255;
3160 if(y==0) return x;
3161 y --; y &= 31; x >>= y;
3162 cpu->cd.arm.flags &= ~ARM_F_C;
3163 if (x & 1) cpu->cd.arm.flags |= ARM_F_C;
3164  return x >> 1; }
3165 }
3166 uint32_t arm_rs_r11_t7_c1(struct cpu *cpu, struct arm_instr_call *ic) {
3167 { uint64_t x = cpu->cd.arm.r[11]; int y=cpu->cd.arm.r[0]&255;
3168 if(y==0) return x;
3169 y --; y &= 31; x >>= y;
3170 cpu->cd.arm.flags &= ~ARM_F_C;
3171 if (x & 1) cpu->cd.arm.flags |= ARM_F_C;
3172  return x >> 1; }
3173 }
3174 uint32_t arm_rs_r12_t7_c1(struct cpu *cpu, struct arm_instr_call *ic) {
3175 { uint64_t x = cpu->cd.arm.r[12]; int y=cpu->cd.arm.r[0]&255;
3176 if(y==0) return x;
3177 y --; y &= 31; x >>= y;
3178 cpu->cd.arm.flags &= ~ARM_F_C;
3179 if (x & 1) cpu->cd.arm.flags |= ARM_F_C;
3180  return x >> 1; }
3181 }
3182 uint32_t arm_rs_r13_t7_c1(struct cpu *cpu, struct arm_instr_call *ic) {
3183 { uint64_t x = cpu->cd.arm.r[13]; int y=cpu->cd.arm.r[0]&255;
3184 if(y==0) return x;
3185 y --; y &= 31; x >>= y;
3186 cpu->cd.arm.flags &= ~ARM_F_C;
3187 if (x & 1) cpu->cd.arm.flags |= ARM_F_C;
3188  return x >> 1; }
3189 }
3190 uint32_t arm_rs_r14_t7_c1(struct cpu *cpu, struct arm_instr_call *ic) {
3191 { uint64_t x = cpu->cd.arm.r[14]; int y=cpu->cd.arm.r[0]&255;
3192 if(y==0) return x;
3193 y --; y &= 31; x >>= y;
3194 cpu->cd.arm.flags &= ~ARM_F_C;
3195 if (x & 1) cpu->cd.arm.flags |= ARM_F_C;
3196  return x >> 1; }
3197 }
3198 uint32_t arm_rs_r15_t7_c1(struct cpu *cpu, struct arm_instr_call *ic) {
3199  uint32_t tmp, low_pc = ((size_t)ic - (size_t)
3200  cpu->cd.arm.cur_ic_page)/sizeof(struct arm_instr_call);
3201  tmp = cpu->pc & ~((ARM_IC_ENTRIES_PER_PAGE-1) <<
3203  tmp += (low_pc << ARM_INSTR_ALIGNMENT_SHIFT) + 8;
3204 { uint64_t x = tmp; int y=cpu->cd.arm.r[0]&255;
3205 if(y==0) return x;
3206 y --; y &= 31; x >>= y;
3207 cpu->cd.arm.flags &= ~ARM_F_C;
3208 if (x & 1) cpu->cd.arm.flags |= ARM_F_C;
3209  return x >> 1; }
3210 }
uint32_t arm_rs_r9_t1_c1(struct cpu *cpu, struct arm_instr_call *ic)
Definition: tmp_arm_r0.cc:2301
uint32_t arm_rs_r11_t6_c0(struct cpu *cpu, struct arm_instr_call *ic)
Definition: tmp_arm_r0.cc:1898
uint32_t arm_r_r4_t0_c0(struct cpu *cpu, struct arm_instr_call *ic)
Definition: tmp_arm_r0.cc:23
uint32_t arm_rs_r3_t3_c1(struct cpu *cpu, struct arm_instr_call *ic)
Definition: tmp_arm_r0.cc:2557
uint32_t arm_rs_r2_t1_c1(struct cpu *cpu, struct arm_instr_call *ic)
Definition: tmp_arm_r0.cc:2210
uint32_t arm_rs_r9_t7_c1(struct cpu *cpu, struct arm_instr_call *ic)
Definition: tmp_arm_r0.cc:3150
uint32_t arm_rs_r5_t5_c1(struct cpu *cpu, struct arm_instr_call *ic)
Definition: tmp_arm_r0.cc:2857
uint32_t arm_r_r4_t2_c0(struct cpu *cpu, struct arm_instr_call *ic)
Definition: tmp_arm_r0.cc:177
uint32_t arm_rs_r15_t1_c1(struct cpu *cpu, struct arm_instr_call *ic)
Definition: tmp_arm_r0.cc:2379
uint32_t arm_r_r12_t3_c0(struct cpu *cpu, struct arm_instr_call *ic)
Definition: tmp_arm_r0.cc:266
uint32_t arm_r_r2_t3_c1(struct cpu *cpu, struct arm_instr_call *ic)
Definition: tmp_arm_r0.cc:730
uint32_t arm_r_r11_t1_c1(struct cpu *cpu, struct arm_instr_call *ic)
Definition: tmp_arm_r0.cc:634
uint32_t arm_rs_r3_t4_c1(struct cpu *cpu, struct arm_instr_call *ic)
Definition: tmp_arm_r0.cc:2703
uint32_t arm_rs_r0_t3_c1(struct cpu *cpu, struct arm_instr_call *ic)
Definition: tmp_arm_r0.cc:2530
uint32_t arm_rs_r5_t6_c0(struct cpu *cpu, struct arm_instr_call *ic)
Definition: tmp_arm_r0.cc:1880
uint32_t arm_rs_r7_t0_c0(struct cpu *cpu, struct arm_instr_call *ic)
Definition: tmp_arm_r0.cc:1047
uint32_t arm_rs_r3_t1_c1(struct cpu *cpu, struct arm_instr_call *ic)
Definition: tmp_arm_r0.cc:2223
uint32_t arm_rs_r9_t3_c0(struct cpu *cpu, struct arm_instr_call *ic)
Definition: tmp_arm_r0.cc:1515
uint32_t arm_r_r11_t3_c0(struct cpu *cpu, struct arm_instr_call *ic)
Definition: tmp_arm_r0.cc:262
uint32_t arm_r_r3_t7_c0(struct cpu *cpu, struct arm_instr_call *ic)
Definition: tmp_arm_r0.cc:471
uint32_t arm_rs_r9_t2_c0(struct cpu *cpu, struct arm_instr_call *ic)
Definition: tmp_arm_r0.cc:1373
uint32_t arm_rs_r0_t0_c1(struct cpu *cpu, struct arm_instr_call *ic)
Definition: tmp_arm_r0.cc:2051
uint32_t arm_rs_r14_t5_c0(struct cpu *cpu, struct arm_instr_call *ic)
Definition: tmp_arm_r0.cc:1842
uint32_t arm_r_r5_t7_c0(struct cpu *cpu, struct arm_instr_call *ic)
Definition: tmp_arm_r0.cc:477
uint32_t arm_r_r3_t0_c1(struct cpu *cpu, struct arm_instr_call *ic)
Definition: tmp_arm_r0.cc:524
uint32_t arm_r_r11_t6_c1(struct cpu *cpu, struct arm_instr_call *ic)
Definition: tmp_arm_r0.cc:946
uint32_t arm_rs_r9_t0_c1(struct cpu *cpu, struct arm_instr_call *ic)
Definition: tmp_arm_r0.cc:2123
uint32_t arm_r_r9_t4_c1(struct cpu *cpu, struct arm_instr_call *ic)
Definition: tmp_arm_r0.cc:818
uint32_t arm_r_r10_t5_c0(struct cpu *cpu, struct arm_instr_call *ic)
Definition: tmp_arm_r0.cc:380
uint32_t arm_rs_r5_t3_c1(struct cpu *cpu, struct arm_instr_call *ic)
Definition: tmp_arm_r0.cc:2575
uint32_t arm_rs_r15_t2_c0(struct cpu *cpu, struct arm_instr_call *ic)
Definition: tmp_arm_r0.cc:1421
uint32_t arm_rs_r3_t2_c0(struct cpu *cpu, struct arm_instr_call *ic)
Definition: tmp_arm_r0.cc:1325
uint32_t arm_r_r13_t3_c0(struct cpu *cpu, struct arm_instr_call *ic)
Definition: tmp_arm_r0.cc:270
uint32_t arm_r_r1_t3_c0(struct cpu *cpu, struct arm_instr_call *ic)
Definition: tmp_arm_r0.cc:222
uint32_t arm_rs_r3_t6_c1(struct cpu *cpu, struct arm_instr_call *ic)
Definition: tmp_arm_r0.cc:2982
uint32_t arm_r_r6_t4_c1(struct cpu *cpu, struct arm_instr_call *ic)
Definition: tmp_arm_r0.cc:809
uint32_t arm_rs_r10_t2_c0(struct cpu *cpu, struct arm_instr_call *ic)
Definition: tmp_arm_r0.cc:1381
uint32_t arm_rs_r6_t0_c0(struct cpu *cpu, struct arm_instr_call *ic)
Definition: tmp_arm_r0.cc:1043
uint32_t arm_rs_r1_t6_c1(struct cpu *cpu, struct arm_instr_call *ic)
Definition: tmp_arm_r0.cc:2968
uint32_t arm_rs_r11_t7_c1(struct cpu *cpu, struct arm_instr_call *ic)
Definition: tmp_arm_r0.cc:3166
uint32_t arm_r_r14_t6_c1(struct cpu *cpu, struct arm_instr_call *ic)
Definition: tmp_arm_r0.cc:955
uint32_t arm_rs_r5_t0_c1(struct cpu *cpu, struct arm_instr_call *ic)
Definition: tmp_arm_r0.cc:2091
uint32_t arm_r_r12_t4_c0(struct cpu *cpu, struct arm_instr_call *ic)
Definition: tmp_arm_r0.cc:323
uint32_t arm_rs_r11_t4_c1(struct cpu *cpu, struct arm_instr_call *ic)
Definition: tmp_arm_r0.cc:2767
uint32_t arm_rs_r2_t0_c0(struct cpu *cpu, struct arm_instr_call *ic)
Definition: tmp_arm_r0.cc:1027
uint32_t arm_rs_r0_t4_c0(struct cpu *cpu, struct arm_instr_call *ic)
Definition: tmp_arm_r0.cc:1583
uint32_t arm_r_r0_t2_c0(struct cpu *cpu, struct arm_instr_call *ic)
Definition: tmp_arm_r0.cc:165
uint32_t arm_rs_r10_t4_c1(struct cpu *cpu, struct arm_instr_call *ic)
Definition: tmp_arm_r0.cc:2759
uint32_t arm_rs_r12_t0_c1(struct cpu *cpu, struct arm_instr_call *ic)
Definition: tmp_arm_r0.cc:2147
uint32_t arm_r_r5_t2_c1(struct cpu *cpu, struct arm_instr_call *ic)
Definition: tmp_arm_r0.cc:684
uint32_t arm_rs_r14_t7_c0(struct cpu *cpu, struct arm_instr_call *ic)
Definition: tmp_arm_r0.cc:2030
uint32_t arm_rs_r6_t5_c1(struct cpu *cpu, struct arm_instr_call *ic)
Definition: tmp_arm_r0.cc:2866
uint32_t arm_rs_r4_t2_c0(struct cpu *cpu, struct arm_instr_call *ic)
Definition: tmp_arm_r0.cc:1333
uint32_t arm_r_r6_t4_c0(struct cpu *cpu, struct arm_instr_call *ic)
Definition: tmp_arm_r0.cc:305
uint32_t arm_r_r7_t7_c1(struct cpu *cpu, struct arm_instr_call *ic)
Definition: tmp_arm_r0.cc:987
uint32_t arm_r_r15_t7_c0(struct cpu *cpu, struct arm_instr_call *ic)
Definition: tmp_arm_r0.cc:507
uint32_t arm_rs_r2_t0_c1(struct cpu *cpu, struct arm_instr_call *ic)
Definition: tmp_arm_r0.cc:2067
uint32_t arm_rs_r15_t5_c0(struct cpu *cpu, struct arm_instr_call *ic)
Definition: tmp_arm_r0.cc:1851
uint32_t arm_r_r7_t0_c1(struct cpu *cpu, struct arm_instr_call *ic)
Definition: tmp_arm_r0.cc:536
uint32_t arm_r_r11_t5_c0(struct cpu *cpu, struct arm_instr_call *ic)
Definition: tmp_arm_r0.cc:384
uint32_t arm_rs_r15_t2_c1(struct cpu *cpu, struct arm_instr_call *ic)
Definition: tmp_arm_r0.cc:2517
uint32_t arm_r_r5_t2_c0(struct cpu *cpu, struct arm_instr_call *ic)
Definition: tmp_arm_r0.cc:180
uint32_t arm_r_r15_t3_c0(struct cpu *cpu, struct arm_instr_call *ic)
Definition: tmp_arm_r0.cc:278
uint32_t arm_r_r14_t0_c0(struct cpu *cpu, struct arm_instr_call *ic)
Definition: tmp_arm_r0.cc:53
uint32_t arm_r_r3_t0_c0(struct cpu *cpu, struct arm_instr_call *ic)
Definition: tmp_arm_r0.cc:20
uint32_t arm_rs_r14_t0_c1(struct cpu *cpu, struct arm_instr_call *ic)
Definition: tmp_arm_r0.cc:2163
uint32_t arm_r_r4_t4_c1(struct cpu *cpu, struct arm_instr_call *ic)
Definition: tmp_arm_r0.cc:803
uint32_t arm_r_r0_t7_c0(struct cpu *cpu, struct arm_instr_call *ic)
Definition: tmp_arm_r0.cc:462
uint32_t arm_r_r3_t4_c0(struct cpu *cpu, struct arm_instr_call *ic)
Definition: tmp_arm_r0.cc:296
uint32_t arm_r_r2_t4_c0(struct cpu *cpu, struct arm_instr_call *ic)
Definition: tmp_arm_r0.cc:293
uint32_t arm_rs_r5_t4_c1(struct cpu *cpu, struct arm_instr_call *ic)
Definition: tmp_arm_r0.cc:2719
struct arm_instr_call * ic
uint32_t arm_r_r10_t3_c1(struct cpu *cpu, struct arm_instr_call *ic)
Definition: tmp_arm_r0.cc:762
uint32_t arm_r_r7_t4_c1(struct cpu *cpu, struct arm_instr_call *ic)
Definition: tmp_arm_r0.cc:812
uint32_t arm_r_r1_t1_c0(struct cpu *cpu, struct arm_instr_call *ic)
Definition: tmp_arm_r0.cc:70
uint32_t arm_r_r13_t1_c1(struct cpu *cpu, struct arm_instr_call *ic)
Definition: tmp_arm_r0.cc:646
uint32_t arm_r_r1_t3_c1(struct cpu *cpu, struct arm_instr_call *ic)
Definition: tmp_arm_r0.cc:726
uint32_t arm_rs_r5_t0_c0(struct cpu *cpu, struct arm_instr_call *ic)
Definition: tmp_arm_r0.cc:1039
union cpu::@1 cd
uint32_t arm_r_r9_t5_c0(struct cpu *cpu, struct arm_instr_call *ic)
Definition: tmp_arm_r0.cc:376
uint32_t arm_r_r14_t3_c1(struct cpu *cpu, struct arm_instr_call *ic)
Definition: tmp_arm_r0.cc:778
uint32_t arm_r_r6_t0_c1(struct cpu *cpu, struct arm_instr_call *ic)
Definition: tmp_arm_r0.cc:533
uint32_t arm_rs_r4_t1_c1(struct cpu *cpu, struct arm_instr_call *ic)
Definition: tmp_arm_r0.cc:2236
uint32_t arm_rs_r12_t2_c0(struct cpu *cpu, struct arm_instr_call *ic)
Definition: tmp_arm_r0.cc:1397
uint32_t arm_r_r8_t1_c0(struct cpu *cpu, struct arm_instr_call *ic)
Definition: tmp_arm_r0.cc:112
uint32_t arm_r_r10_t2_c1(struct cpu *cpu, struct arm_instr_call *ic)
Definition: tmp_arm_r0.cc:699
uint32_t arm_r_r4_t1_c1(struct cpu *cpu, struct arm_instr_call *ic)
Definition: tmp_arm_r0.cc:592
uint32_t arm_rs_r10_t0_c1(struct cpu *cpu, struct arm_instr_call *ic)
Definition: tmp_arm_r0.cc:2131
uint32_t arm_rs_r8_t3_c1(struct cpu *cpu, struct arm_instr_call *ic)
Definition: tmp_arm_r0.cc:2602
uint32_t arm_rs_r5_t1_c1(struct cpu *cpu, struct arm_instr_call *ic)
Definition: tmp_arm_r0.cc:2249
uint32_t arm_rs_r2_t2_c1(struct cpu *cpu, struct arm_instr_call *ic)
Definition: tmp_arm_r0.cc:2413
uint32_t arm_r_r15_t5_c1(struct cpu *cpu, struct arm_instr_call *ic)
Definition: tmp_arm_r0.cc:904
uint32_t arm_rs_r1_t4_c1(struct cpu *cpu, struct arm_instr_call *ic)
Definition: tmp_arm_r0.cc:2687
uint32_t arm_rs_r0_t4_c1(struct cpu *cpu, struct arm_instr_call *ic)
Definition: tmp_arm_r0.cc:2679
uint32_t arm_rs_r1_t7_c0(struct cpu *cpu, struct arm_instr_call *ic)
Definition: tmp_arm_r0.cc:1926
uint32_t arm_r_r13_t6_c1(struct cpu *cpu, struct arm_instr_call *ic)
Definition: tmp_arm_r0.cc:952
uint32_t arm_rs_r5_t7_c1(struct cpu *cpu, struct arm_instr_call *ic)
Definition: tmp_arm_r0.cc:3118
uint32_t arm_r_r15_t4_c1(struct cpu *cpu, struct arm_instr_call *ic)
Definition: tmp_arm_r0.cc:836
uint32_t arm_r_r8_t5_c1(struct cpu *cpu, struct arm_instr_call *ic)
Definition: tmp_arm_r0.cc:876
uint32_t arm_rs_r9_t6_c1(struct cpu *cpu, struct arm_instr_call *ic)
Definition: tmp_arm_r0.cc:3024
uint32_t arm_r_r0_t6_c0(struct cpu *cpu, struct arm_instr_call *ic)
Definition: tmp_arm_r0.cc:409
uint32_t arm_rs_r11_t0_c0(struct cpu *cpu, struct arm_instr_call *ic)
Definition: tmp_arm_r0.cc:1063
uint32_t arm_r_r1_t0_c0(struct cpu *cpu, struct arm_instr_call *ic)
Definition: tmp_arm_r0.cc:14
uint32_t arm_r_r6_t3_c0(struct cpu *cpu, struct arm_instr_call *ic)
Definition: tmp_arm_r0.cc:242
uint32_t arm_rs_r1_t7_c1(struct cpu *cpu, struct arm_instr_call *ic)
Definition: tmp_arm_r0.cc:3086
uint32_t arm_r_r10_t2_c0(struct cpu *cpu, struct arm_instr_call *ic)
Definition: tmp_arm_r0.cc:195
uint32_t arm_rs_r0_t5_c0(struct cpu *cpu, struct arm_instr_call *ic)
Definition: tmp_arm_r0.cc:1716
uint32_t arm_rs_r4_t7_c0(struct cpu *cpu, struct arm_instr_call *ic)
Definition: tmp_arm_r0.cc:1950
uint32_t arm_rs_r8_t2_c0(struct cpu *cpu, struct arm_instr_call *ic)
Definition: tmp_arm_r0.cc:1365
uint32_t arm_r_r10_t3_c0(struct cpu *cpu, struct arm_instr_call *ic)
Definition: tmp_arm_r0.cc:258
uint32_t arm_r_r2_t2_c0(struct cpu *cpu, struct arm_instr_call *ic)
Definition: tmp_arm_r0.cc:171
uint32_t arm_r_r12_t7_c1(struct cpu *cpu, struct arm_instr_call *ic)
Definition: tmp_arm_r0.cc:1002
uint32_t arm_rs_r13_t3_c0(struct cpu *cpu, struct arm_instr_call *ic)
Definition: tmp_arm_r0.cc:1551
uint32_t arm_rs_r6_t7_c1(struct cpu *cpu, struct arm_instr_call *ic)
Definition: tmp_arm_r0.cc:3126
uint32_t arm_rs_r12_t5_c0(struct cpu *cpu, struct arm_instr_call *ic)
Definition: tmp_arm_r0.cc:1824
uint32_t arm_r_r9_t1_c0(struct cpu *cpu, struct arm_instr_call *ic)
Definition: tmp_arm_r0.cc:118
uint32_t arm_r_r10_t6_c1(struct cpu *cpu, struct arm_instr_call *ic)
Definition: tmp_arm_r0.cc:943
uint32_t arm_rs_r4_t7_c1(struct cpu *cpu, struct arm_instr_call *ic)
Definition: tmp_arm_r0.cc:3110
uint32_t arm_rs_r11_t1_c0(struct cpu *cpu, struct arm_instr_call *ic)
Definition: tmp_arm_r0.cc:1231
uint32_t arm_rs_r2_t1_c0(struct cpu *cpu, struct arm_instr_call *ic)
Definition: tmp_arm_r0.cc:1114
uint32_t arm_rs_r3_t6_c0(struct cpu *cpu, struct arm_instr_call *ic)
Definition: tmp_arm_r0.cc:1874
uint32_t arm_r_r12_t0_c0(struct cpu *cpu, struct arm_instr_call *ic)
Definition: tmp_arm_r0.cc:47
uint32_t arm_rs_r4_t0_c0(struct cpu *cpu, struct arm_instr_call *ic)
Definition: tmp_arm_r0.cc:1035
uint32_t arm_r_r6_t6_c1(struct cpu *cpu, struct arm_instr_call *ic)
Definition: tmp_arm_r0.cc:931
uint32_t arm_r_r5_t3_c1(struct cpu *cpu, struct arm_instr_call *ic)
Definition: tmp_arm_r0.cc:742
uint32_t arm_r_r2_t7_c1(struct cpu *cpu, struct arm_instr_call *ic)
Definition: tmp_arm_r0.cc:972
uint32_t arm_rs_r8_t5_c1(struct cpu *cpu, struct arm_instr_call *ic)
Definition: tmp_arm_r0.cc:2884
uint32_t arm_rs_r9_t2_c1(struct cpu *cpu, struct arm_instr_call *ic)
Definition: tmp_arm_r0.cc:2469
uint32_t arm_rs_r0_t2_c0(struct cpu *cpu, struct arm_instr_call *ic)
Definition: tmp_arm_r0.cc:1301
uint32_t arm_r_r7_t0_c0(struct cpu *cpu, struct arm_instr_call *ic)
Definition: tmp_arm_r0.cc:32
uint32_t arm_rs_r6_t6_c0(struct cpu *cpu, struct arm_instr_call *ic)
Definition: tmp_arm_r0.cc:1883
uint32_t arm_r_r9_t2_c0(struct cpu *cpu, struct arm_instr_call *ic)
Definition: tmp_arm_r0.cc:192
uint32_t arm_rs_r11_t3_c1(struct cpu *cpu, struct arm_instr_call *ic)
Definition: tmp_arm_r0.cc:2629
uint32_t arm_r_r9_t4_c0(struct cpu *cpu, struct arm_instr_call *ic)
Definition: tmp_arm_r0.cc:314
uint32_t arm_r_r4_t3_c0(struct cpu *cpu, struct arm_instr_call *ic)
Definition: tmp_arm_r0.cc:234
uint32_t arm_rs_r5_t6_c1(struct cpu *cpu, struct arm_instr_call *ic)
Definition: tmp_arm_r0.cc:2996
uint32_t arm_rs_r12_t2_c1(struct cpu *cpu, struct arm_instr_call *ic)
Definition: tmp_arm_r0.cc:2493
uint32_t arm_r_r5_t0_c0(struct cpu *cpu, struct arm_instr_call *ic)
Definition: tmp_arm_r0.cc:26
uint32_t arm_rs_r5_t5_c0(struct cpu *cpu, struct arm_instr_call *ic)
Definition: tmp_arm_r0.cc:1761
struct arm_cpu arm
Definition: cpu.h:441
uint32_t arm_rs_r10_t1_c1(struct cpu *cpu, struct arm_instr_call *ic)
Definition: tmp_arm_r0.cc:2314
uint32_t arm_r_r2_t3_c0(struct cpu *cpu, struct arm_instr_call *ic)
Definition: tmp_arm_r0.cc:226
uint32_t arm_rs_r6_t1_c0(struct cpu *cpu, struct arm_instr_call *ic)
Definition: tmp_arm_r0.cc:1166
uint32_t arm_rs_r14_t5_c1(struct cpu *cpu, struct arm_instr_call *ic)
Definition: tmp_arm_r0.cc:2938
uint32_t arm_rs_r14_t3_c0(struct cpu *cpu, struct arm_instr_call *ic)
Definition: tmp_arm_r0.cc:1560
uint32_t arm_r_r6_t1_c0(struct cpu *cpu, struct arm_instr_call *ic)
Definition: tmp_arm_r0.cc:100
uint32_t arm_r_r5_t1_c0(struct cpu *cpu, struct arm_instr_call *ic)
Definition: tmp_arm_r0.cc:94
uint32_t arm_r_r15_t7_c1(struct cpu *cpu, struct arm_instr_call *ic)
Definition: tmp_arm_r0.cc:1011
uint32_t arm_rs_r3_t5_c0(struct cpu *cpu, struct arm_instr_call *ic)
Definition: tmp_arm_r0.cc:1743
uint32_t arm_rs_r6_t3_c1(struct cpu *cpu, struct arm_instr_call *ic)
Definition: tmp_arm_r0.cc:2584
uint32_t arm_rs_r4_t6_c0(struct cpu *cpu, struct arm_instr_call *ic)
Definition: tmp_arm_r0.cc:1877
uint32_t arm_rs_r9_t3_c1(struct cpu *cpu, struct arm_instr_call *ic)
Definition: tmp_arm_r0.cc:2611
uint32_t arm_rs_r8_t2_c1(struct cpu *cpu, struct arm_instr_call *ic)
Definition: tmp_arm_r0.cc:2461
uint32_t arm_r_r14_t4_c0(struct cpu *cpu, struct arm_instr_call *ic)
Definition: tmp_arm_r0.cc:329
uint32_t arm_r_r6_t6_c0(struct cpu *cpu, struct arm_instr_call *ic)
Definition: tmp_arm_r0.cc:427
uint32_t arm_rs_r13_t3_c1(struct cpu *cpu, struct arm_instr_call *ic)
Definition: tmp_arm_r0.cc:2647
uint32_t arm_r_r5_t1_c1(struct cpu *cpu, struct arm_instr_call *ic)
Definition: tmp_arm_r0.cc:598
uint32_t arm_r_r8_t6_c1(struct cpu *cpu, struct arm_instr_call *ic)
Definition: tmp_arm_r0.cc:937
uint32_t arm_r_r9_t6_c1(struct cpu *cpu, struct arm_instr_call *ic)
Definition: tmp_arm_r0.cc:940
uint32_t arm_r_r1_t6_c1(struct cpu *cpu, struct arm_instr_call *ic)
Definition: tmp_arm_r0.cc:916
uint32_t arm_r_r6_t7_c1(struct cpu *cpu, struct arm_instr_call *ic)
Definition: tmp_arm_r0.cc:984
uint32_t arm_rs_r14_t3_c1(struct cpu *cpu, struct arm_instr_call *ic)
Definition: tmp_arm_r0.cc:2656
uint32_t arm_r_r6_t3_c1(struct cpu *cpu, struct arm_instr_call *ic)
Definition: tmp_arm_r0.cc:746
uint32_t arm_r_r6_t0_c0(struct cpu *cpu, struct arm_instr_call *ic)
Definition: tmp_arm_r0.cc:29
uint32_t arm_rs_r4_t2_c1(struct cpu *cpu, struct arm_instr_call *ic)
Definition: tmp_arm_r0.cc:2429
uint32_t arm_rs_r13_t6_c1(struct cpu *cpu, struct arm_instr_call *ic)
Definition: tmp_arm_r0.cc:3052
uint32_t arm_r_r13_t4_c1(struct cpu *cpu, struct arm_instr_call *ic)
Definition: tmp_arm_r0.cc:830
uint32_t arm_r_r15_t4_c0(struct cpu *cpu, struct arm_instr_call *ic)
Definition: tmp_arm_r0.cc:332
uint32_t arm_r_r13_t2_c1(struct cpu *cpu, struct arm_instr_call *ic)
Definition: tmp_arm_r0.cc:708
uint32_t arm_r_r11_t4_c0(struct cpu *cpu, struct arm_instr_call *ic)
Definition: tmp_arm_r0.cc:320
uint32_t arm_r_r3_t5_c1(struct cpu *cpu, struct arm_instr_call *ic)
Definition: tmp_arm_r0.cc:856
uint32_t arm_rs_r0_t7_c1(struct cpu *cpu, struct arm_instr_call *ic)
Definition: tmp_arm_r0.cc:3078
uint32_t arm_r_r11_t5_c1(struct cpu *cpu, struct arm_instr_call *ic)
Definition: tmp_arm_r0.cc:888
uint32_t arm_r_r2_t6_c0(struct cpu *cpu, struct arm_instr_call *ic)
Definition: tmp_arm_r0.cc:415
uint32_t arm_rs_r7_t2_c1(struct cpu *cpu, struct arm_instr_call *ic)
Definition: tmp_arm_r0.cc:2453
uint32_t arm_r_r12_t2_c1(struct cpu *cpu, struct arm_instr_call *ic)
Definition: tmp_arm_r0.cc:705
uint32_t arm_rs_r15_t4_c1(struct cpu *cpu, struct arm_instr_call *ic)
Definition: tmp_arm_r0.cc:2799
uint32_t arm_r_r9_t1_c1(struct cpu *cpu, struct arm_instr_call *ic)
Definition: tmp_arm_r0.cc:622
uint32_t arm_r_r13_t0_c1(struct cpu *cpu, struct arm_instr_call *ic)
Definition: tmp_arm_r0.cc:554
uint32_t arm_rs_r13_t7_c1(struct cpu *cpu, struct arm_instr_call *ic)
Definition: tmp_arm_r0.cc:3182
uint32_t arm_r_r14_t2_c0(struct cpu *cpu, struct arm_instr_call *ic)
Definition: tmp_arm_r0.cc:207
uint32_t arm_rs_r10_t5_c1(struct cpu *cpu, struct arm_instr_call *ic)
Definition: tmp_arm_r0.cc:2902
uint32_t arm_r_r12_t6_c1(struct cpu *cpu, struct arm_instr_call *ic)
Definition: tmp_arm_r0.cc:949
uint32_t arm_r_r12_t4_c1(struct cpu *cpu, struct arm_instr_call *ic)
Definition: tmp_arm_r0.cc:827
uint32_t arm_r_r12_t3_c1(struct cpu *cpu, struct arm_instr_call *ic)
Definition: tmp_arm_r0.cc:770
uint32_t arm_r_r1_t2_c1(struct cpu *cpu, struct arm_instr_call *ic)
Definition: tmp_arm_r0.cc:672
uint32_t arm_rs_r13_t5_c0(struct cpu *cpu, struct arm_instr_call *ic)
Definition: tmp_arm_r0.cc:1833
uint32_t arm_rs_r10_t7_c1(struct cpu *cpu, struct arm_instr_call *ic)
Definition: tmp_arm_r0.cc:3158
uint32_t arm_rs_r8_t1_c0(struct cpu *cpu, struct arm_instr_call *ic)
Definition: tmp_arm_r0.cc:1192
uint32_t arm_r_r1_t0_c1(struct cpu *cpu, struct arm_instr_call *ic)
Definition: tmp_arm_r0.cc:518
uint32_t arm_rs_r0_t0_c0(struct cpu *cpu, struct arm_instr_call *ic)
Definition: tmp_arm_r0.cc:1019
uint32_t arm_rs_r2_t3_c0(struct cpu *cpu, struct arm_instr_call *ic)
Definition: tmp_arm_r0.cc:1452
uint32_t arm_r_r11_t3_c1(struct cpu *cpu, struct arm_instr_call *ic)
Definition: tmp_arm_r0.cc:766
uint32_t arm_rs_r12_t4_c1(struct cpu *cpu, struct arm_instr_call *ic)
Definition: tmp_arm_r0.cc:2775
uint32_t arm_rs_r2_t6_c1(struct cpu *cpu, struct arm_instr_call *ic)
Definition: tmp_arm_r0.cc:2975
uint32_t arm_rs_r3_t5_c1(struct cpu *cpu, struct arm_instr_call *ic)
Definition: tmp_arm_r0.cc:2839
uint32_t arm_r_r3_t2_c0(struct cpu *cpu, struct arm_instr_call *ic)
Definition: tmp_arm_r0.cc:174
uint32_t arm_rs_r7_t5_c1(struct cpu *cpu, struct arm_instr_call *ic)
Definition: tmp_arm_r0.cc:2875
uint32_t arm_r_r5_t7_c1(struct cpu *cpu, struct arm_instr_call *ic)
Definition: tmp_arm_r0.cc:981
uint64_t pc
Definition: cpu.h:383
uint32_t arm_r_r14_t5_c0(struct cpu *cpu, struct arm_instr_call *ic)
Definition: tmp_arm_r0.cc:396
uint32_t arm_rs_r8_t6_c0(struct cpu *cpu, struct arm_instr_call *ic)
Definition: tmp_arm_r0.cc:1889
#define ARM_IC_ENTRIES_PER_PAGE
Definition: cpu_arm.h:80
uint32_t arm_r_r15_t0_c0(struct cpu *cpu, struct arm_instr_call *ic)
Definition: tmp_arm_r0.cc:56
uint32_t arm_r_r14_t7_c0(struct cpu *cpu, struct arm_instr_call *ic)
Definition: tmp_arm_r0.cc:504
uint32_t arm_rs_r15_t0_c1(struct cpu *cpu, struct arm_instr_call *ic)
Definition: tmp_arm_r0.cc:2171
uint32_t arm_rs_r15_t7_c0(struct cpu *cpu, struct arm_instr_call *ic)
Definition: tmp_arm_r0.cc:2038
uint32_t arm_r_r13_t2_c0(struct cpu *cpu, struct arm_instr_call *ic)
Definition: tmp_arm_r0.cc:204
uint32_t arm_r_r3_t3_c1(struct cpu *cpu, struct arm_instr_call *ic)
Definition: tmp_arm_r0.cc:734
uint32_t arm_r_r0_t6_c1(struct cpu *cpu, struct arm_instr_call *ic)
Definition: tmp_arm_r0.cc:913
uint32_t arm_rs_r6_t6_c1(struct cpu *cpu, struct arm_instr_call *ic)
Definition: tmp_arm_r0.cc:3003
uint32_t arm_r_r0_t3_c1(struct cpu *cpu, struct arm_instr_call *ic)
Definition: tmp_arm_r0.cc:722
uint32_t arm_rs_r7_t5_c0(struct cpu *cpu, struct arm_instr_call *ic)
Definition: tmp_arm_r0.cc:1779
uint32_t arm_r_r1_t2_c0(struct cpu *cpu, struct arm_instr_call *ic)
Definition: tmp_arm_r0.cc:168
uint32_t arm_r_r13_t4_c0(struct cpu *cpu, struct arm_instr_call *ic)
Definition: tmp_arm_r0.cc:326
uint32_t arm_rs_r13_t2_c1(struct cpu *cpu, struct arm_instr_call *ic)
Definition: tmp_arm_r0.cc:2501
uint32_t arm_rs_r2_t7_c0(struct cpu *cpu, struct arm_instr_call *ic)
Definition: tmp_arm_r0.cc:1934
uint32_t arm_rs_r14_t4_c1(struct cpu *cpu, struct arm_instr_call *ic)
Definition: tmp_arm_r0.cc:2791
uint32_t arm_rs_r7_t3_c0(struct cpu *cpu, struct arm_instr_call *ic)
Definition: tmp_arm_r0.cc:1497
uint32_t arm_r_r11_t1_c0(struct cpu *cpu, struct arm_instr_call *ic)
Definition: tmp_arm_r0.cc:130
uint32_t arm_r_r4_t3_c1(struct cpu *cpu, struct arm_instr_call *ic)
Definition: tmp_arm_r0.cc:738
uint32_t arm_rs_r12_t1_c0(struct cpu *cpu, struct arm_instr_call *ic)
Definition: tmp_arm_r0.cc:1244
uint32_t arm_rs_r4_t5_c1(struct cpu *cpu, struct arm_instr_call *ic)
Definition: tmp_arm_r0.cc:2848
uint32_t arm_r_r3_t1_c1(struct cpu *cpu, struct arm_instr_call *ic)
Definition: tmp_arm_r0.cc:586
uint32_t arm_r_r10_t0_c1(struct cpu *cpu, struct arm_instr_call *ic)
Definition: tmp_arm_r0.cc:545
uint32_t arm_r_r8_t5_c0(struct cpu *cpu, struct arm_instr_call *ic)
Definition: tmp_arm_r0.cc:372
uint32_t arm_rs_r10_t7_c0(struct cpu *cpu, struct arm_instr_call *ic)
Definition: tmp_arm_r0.cc:1998
uint32_t arm_r_r8_t7_c0(struct cpu *cpu, struct arm_instr_call *ic)
Definition: tmp_arm_r0.cc:486
#define ARM_INSTR_ALIGNMENT_SHIFT
Definition: cpu_arm.h:79
uint32_t arm_r_r7_t2_c0(struct cpu *cpu, struct arm_instr_call *ic)
Definition: tmp_arm_r0.cc:186
uint32_t arm_r_r3_t7_c1(struct cpu *cpu, struct arm_instr_call *ic)
Definition: tmp_arm_r0.cc:975
uint32_t arm_r_r0_t1_c1(struct cpu *cpu, struct arm_instr_call *ic)
Definition: tmp_arm_r0.cc:568
uint32_t arm_r_r12_t1_c1(struct cpu *cpu, struct arm_instr_call *ic)
Definition: tmp_arm_r0.cc:640
uint32_t arm_rs_r1_t1_c1(struct cpu *cpu, struct arm_instr_call *ic)
Definition: tmp_arm_r0.cc:2197
uint32_t arm_r_r11_t0_c1(struct cpu *cpu, struct arm_instr_call *ic)
Definition: tmp_arm_r0.cc:548
uint32_t arm_r_r3_t3_c0(struct cpu *cpu, struct arm_instr_call *ic)
Definition: tmp_arm_r0.cc:230
uint32_t arm_rs_r5_t2_c1(struct cpu *cpu, struct arm_instr_call *ic)
Definition: tmp_arm_r0.cc:2437
uint32_t arm_rs_r10_t5_c0(struct cpu *cpu, struct arm_instr_call *ic)
Definition: tmp_arm_r0.cc:1806
uint32_t arm_rs_r15_t3_c1(struct cpu *cpu, struct arm_instr_call *ic)
Definition: tmp_arm_r0.cc:2665
uint32_t arm_r_r7_t7_c0(struct cpu *cpu, struct arm_instr_call *ic)
Definition: tmp_arm_r0.cc:483
uint32_t arm_rs_r11_t6_c1(struct cpu *cpu, struct arm_instr_call *ic)
Definition: tmp_arm_r0.cc:3038
uint32_t arm_rs_r11_t2_c0(struct cpu *cpu, struct arm_instr_call *ic)
Definition: tmp_arm_r0.cc:1389
uint32_t arm_r_r5_t4_c1(struct cpu *cpu, struct arm_instr_call *ic)
Definition: tmp_arm_r0.cc:806
uint32_t arm_rs_r0_t7_c0(struct cpu *cpu, struct arm_instr_call *ic)
Definition: tmp_arm_r0.cc:1918
uint32_t arm_rs_r13_t6_c0(struct cpu *cpu, struct arm_instr_call *ic)
Definition: tmp_arm_r0.cc:1904
uint32_t arm_r_r2_t5_c0(struct cpu *cpu, struct arm_instr_call *ic)
Definition: tmp_arm_r0.cc:348
uint32_t arm_rs_r12_t3_c0(struct cpu *cpu, struct arm_instr_call *ic)
Definition: tmp_arm_r0.cc:1542
uint32_t arm_rs_r15_t3_c0(struct cpu *cpu, struct arm_instr_call *ic)
Definition: tmp_arm_r0.cc:1569
uint32_t arm_rs_r10_t4_c0(struct cpu *cpu, struct arm_instr_call *ic)
Definition: tmp_arm_r0.cc:1663
uint32_t arm_r_r0_t5_c1(struct cpu *cpu, struct arm_instr_call *ic)
Definition: tmp_arm_r0.cc:844
uint32_t arm_r_r4_t7_c1(struct cpu *cpu, struct arm_instr_call *ic)
Definition: tmp_arm_r0.cc:978
uint32_t arm_rs_r1_t1_c0(struct cpu *cpu, struct arm_instr_call *ic)
Definition: tmp_arm_r0.cc:1101
uint32_t arm_r_r15_t1_c1(struct cpu *cpu, struct arm_instr_call *ic)
Definition: tmp_arm_r0.cc:658
uint32_t arm_r_r12_t6_c0(struct cpu *cpu, struct arm_instr_call *ic)
Definition: tmp_arm_r0.cc:445
uint32_t arm_rs_r2_t5_c1(struct cpu *cpu, struct arm_instr_call *ic)
Definition: tmp_arm_r0.cc:2830
uint32_t arm_rs_r8_t4_c1(struct cpu *cpu, struct arm_instr_call *ic)
Definition: tmp_arm_r0.cc:2743
uint32_t arm_r_r7_t1_c1(struct cpu *cpu, struct arm_instr_call *ic)
Definition: tmp_arm_r0.cc:610
uint32_t arm_r_r7_t1_c0(struct cpu *cpu, struct arm_instr_call *ic)
Definition: tmp_arm_r0.cc:106
uint32_t arm_r_r11_t2_c1(struct cpu *cpu, struct arm_instr_call *ic)
Definition: tmp_arm_r0.cc:702
uint32_t arm_r_r3_t4_c1(struct cpu *cpu, struct arm_instr_call *ic)
Definition: tmp_arm_r0.cc:800
uint32_t arm_rs_r4_t3_c1(struct cpu *cpu, struct arm_instr_call *ic)
Definition: tmp_arm_r0.cc:2566
uint32_t arm_r_r9_t0_c1(struct cpu *cpu, struct arm_instr_call *ic)
Definition: tmp_arm_r0.cc:542
uint32_t arm_r_r5_t5_c1(struct cpu *cpu, struct arm_instr_call *ic)
Definition: tmp_arm_r0.cc:864
uint32_t arm_r_r3_t6_c0(struct cpu *cpu, struct arm_instr_call *ic)
Definition: tmp_arm_r0.cc:418
uint32_t arm_r_r11_t4_c1(struct cpu *cpu, struct arm_instr_call *ic)
Definition: tmp_arm_r0.cc:824
uint32_t arm_r_r5_t0_c1(struct cpu *cpu, struct arm_instr_call *ic)
Definition: tmp_arm_r0.cc:530
uint32_t arm_rs_r13_t1_c1(struct cpu *cpu, struct arm_instr_call *ic)
Definition: tmp_arm_r0.cc:2353
uint32_t arm_r_r8_t3_c1(struct cpu *cpu, struct arm_instr_call *ic)
Definition: tmp_arm_r0.cc:754
uint32_t arm_rs_r1_t0_c0(struct cpu *cpu, struct arm_instr_call *ic)
Definition: tmp_arm_r0.cc:1023
uint32_t arm_rs_r7_t1_c1(struct cpu *cpu, struct arm_instr_call *ic)
Definition: tmp_arm_r0.cc:2275
uint32_t arm_rs_r3_t7_c1(struct cpu *cpu, struct arm_instr_call *ic)
Definition: tmp_arm_r0.cc:3102
uint32_t arm_r_r12_t5_c0(struct cpu *cpu, struct arm_instr_call *ic)
Definition: tmp_arm_r0.cc:388
uint32_t arm_r_r12_t0_c1(struct cpu *cpu, struct arm_instr_call *ic)
Definition: tmp_arm_r0.cc:551
uint32_t arm_r_r1_t7_c1(struct cpu *cpu, struct arm_instr_call *ic)
Definition: tmp_arm_r0.cc:969
uint32_t arm_r_r7_t5_c0(struct cpu *cpu, struct arm_instr_call *ic)
Definition: tmp_arm_r0.cc:368
uint32_t arm_r_r13_t7_c0(struct cpu *cpu, struct arm_instr_call *ic)
Definition: tmp_arm_r0.cc:501
uint32_t arm_rs_r10_t6_c0(struct cpu *cpu, struct arm_instr_call *ic)
Definition: tmp_arm_r0.cc:1895
uint32_t arm_rs_r13_t0_c1(struct cpu *cpu, struct arm_instr_call *ic)
Definition: tmp_arm_r0.cc:2155
uint32_t arm_r_r14_t6_c0(struct cpu *cpu, struct arm_instr_call *ic)
Definition: tmp_arm_r0.cc:451
uint32_t arm_rs_r0_t6_c0(struct cpu *cpu, struct arm_instr_call *ic)
Definition: tmp_arm_r0.cc:1865
uint32_t arm_rs_r3_t3_c0(struct cpu *cpu, struct arm_instr_call *ic)
Definition: tmp_arm_r0.cc:1461
uint32_t arm_r_r13_t6_c0(struct cpu *cpu, struct arm_instr_call *ic)
Definition: tmp_arm_r0.cc:448
uint32_t arm_rs_r12_t0_c0(struct cpu *cpu, struct arm_instr_call *ic)
Definition: tmp_arm_r0.cc:1067
uint32_t arm_r_r5_t4_c0(struct cpu *cpu, struct arm_instr_call *ic)
Definition: tmp_arm_r0.cc:302
uint32_t arm_r_r2_t5_c1(struct cpu *cpu, struct arm_instr_call *ic)
Definition: tmp_arm_r0.cc:852
uint32_t arm_rs_r4_t4_c1(struct cpu *cpu, struct arm_instr_call *ic)
Definition: tmp_arm_r0.cc:2711
uint32_t arm_r_r15_t0_c1(struct cpu *cpu, struct arm_instr_call *ic)
Definition: tmp_arm_r0.cc:560
uint32_t arm_r_r0_t4_c0(struct cpu *cpu, struct arm_instr_call *ic)
Definition: tmp_arm_r0.cc:287
uint32_t arm_r_r7_t6_c0(struct cpu *cpu, struct arm_instr_call *ic)
Definition: tmp_arm_r0.cc:430
uint32_t arm_rs_r1_t3_c1(struct cpu *cpu, struct arm_instr_call *ic)
Definition: tmp_arm_r0.cc:2539
uint32_t arm_rs_r11_t3_c0(struct cpu *cpu, struct arm_instr_call *ic)
Definition: tmp_arm_r0.cc:1533
uint32_t arm_rs_r5_t7_c0(struct cpu *cpu, struct arm_instr_call *ic)
Definition: tmp_arm_r0.cc:1958
uint32_t arm_rs_r7_t7_c0(struct cpu *cpu, struct arm_instr_call *ic)
Definition: tmp_arm_r0.cc:1974
uint32_t arm_rs_r11_t1_c1(struct cpu *cpu, struct arm_instr_call *ic)
Definition: tmp_arm_r0.cc:2327
uint32_t arm_rs_r11_t5_c0(struct cpu *cpu, struct arm_instr_call *ic)
Definition: tmp_arm_r0.cc:1815
uint32_t arm_rs_r0_t1_c0(struct cpu *cpu, struct arm_instr_call *ic)
Definition: tmp_arm_r0.cc:1088
uint32_t arm_r_r0_t2_c1(struct cpu *cpu, struct arm_instr_call *ic)
Definition: tmp_arm_r0.cc:669
uint32_t arm_r_r12_t2_c0(struct cpu *cpu, struct arm_instr_call *ic)
Definition: tmp_arm_r0.cc:201
uint32_t arm_r_r12_t1_c0(struct cpu *cpu, struct arm_instr_call *ic)
Definition: tmp_arm_r0.cc:136
uint32_t arm_r_r5_t6_c1(struct cpu *cpu, struct arm_instr_call *ic)
Definition: tmp_arm_r0.cc:928
uint32_t arm_rs_r6_t7_c0(struct cpu *cpu, struct arm_instr_call *ic)
Definition: tmp_arm_r0.cc:1966
uint32_t arm_r_r10_t4_c1(struct cpu *cpu, struct arm_instr_call *ic)
Definition: tmp_arm_r0.cc:821
uint32_t arm_rs_r4_t6_c1(struct cpu *cpu, struct arm_instr_call *ic)
Definition: tmp_arm_r0.cc:2989
uint32_t arm_r_r2_t6_c1(struct cpu *cpu, struct arm_instr_call *ic)
Definition: tmp_arm_r0.cc:919
uint32_t arm_r_r1_t4_c1(struct cpu *cpu, struct arm_instr_call *ic)
Definition: tmp_arm_r0.cc:794
uint32_t arm_r_r15_t5_c0(struct cpu *cpu, struct arm_instr_call *ic)
Definition: tmp_arm_r0.cc:400
uint32_t arm_r_r0_t7_c1(struct cpu *cpu, struct arm_instr_call *ic)
Definition: tmp_arm_r0.cc:966
uint32_t arm_r_r6_t5_c1(struct cpu *cpu, struct arm_instr_call *ic)
Definition: tmp_arm_r0.cc:868
uint32_t arm_r_r9_t5_c1(struct cpu *cpu, struct arm_instr_call *ic)
Definition: tmp_arm_r0.cc:880
uint32_t arm_rs_r14_t7_c1(struct cpu *cpu, struct arm_instr_call *ic)
Definition: tmp_arm_r0.cc:3190
uint32_t arm_r_r8_t0_c0(struct cpu *cpu, struct arm_instr_call *ic)
Definition: tmp_arm_r0.cc:35
uint32_t arm_r_r14_t4_c1(struct cpu *cpu, struct arm_instr_call *ic)
Definition: tmp_arm_r0.cc:833
uint32_t arm_rs_r8_t1_c1(struct cpu *cpu, struct arm_instr_call *ic)
Definition: tmp_arm_r0.cc:2288
uint32_t arm_r_r15_t6_c0(struct cpu *cpu, struct arm_instr_call *ic)
Definition: tmp_arm_r0.cc:454
uint32_t arm_r_r3_t6_c1(struct cpu *cpu, struct arm_instr_call *ic)
Definition: tmp_arm_r0.cc:922
uint32_t arm_rs_r14_t4_c0(struct cpu *cpu, struct arm_instr_call *ic)
Definition: tmp_arm_r0.cc:1695
uint32_t arm_r_r4_t7_c0(struct cpu *cpu, struct arm_instr_call *ic)
Definition: tmp_arm_r0.cc:474
uint32_t arm_r_r9_t7_c1(struct cpu *cpu, struct arm_instr_call *ic)
Definition: tmp_arm_r0.cc:993
uint32_t arm_r_r11_t7_c1(struct cpu *cpu, struct arm_instr_call *ic)
Definition: tmp_arm_r0.cc:999
uint32_t arm_rs_r7_t4_c0(struct cpu *cpu, struct arm_instr_call *ic)
Definition: tmp_arm_r0.cc:1639
uint32_t arm_rs_r12_t1_c1(struct cpu *cpu, struct arm_instr_call *ic)
Definition: tmp_arm_r0.cc:2340
uint32_t arm_r_r2_t0_c1(struct cpu *cpu, struct arm_instr_call *ic)
Definition: tmp_arm_r0.cc:521
uint32_t arm_r_r12_t7_c0(struct cpu *cpu, struct arm_instr_call *ic)
Definition: tmp_arm_r0.cc:498
uint32_t arm_rs_r8_t7_c1(struct cpu *cpu, struct arm_instr_call *ic)
Definition: tmp_arm_r0.cc:3142
uint32_t arm_rs_r9_t0_c0(struct cpu *cpu, struct arm_instr_call *ic)
Definition: tmp_arm_r0.cc:1055
uint32_t arm_rs_r15_t4_c0(struct cpu *cpu, struct arm_instr_call *ic)
Definition: tmp_arm_r0.cc:1703
uint32_t arm_r_r11_t7_c0(struct cpu *cpu, struct arm_instr_call *ic)
Definition: tmp_arm_r0.cc:495
uint32_t arm_r_r7_t2_c1(struct cpu *cpu, struct arm_instr_call *ic)
Definition: tmp_arm_r0.cc:690
uint32_t arm_rs_r6_t2_c0(struct cpu *cpu, struct arm_instr_call *ic)
Definition: tmp_arm_r0.cc:1349
uint32_t arm_r_r11_t0_c0(struct cpu *cpu, struct arm_instr_call *ic)
Definition: tmp_arm_r0.cc:44
uint32_t arm_r_r8_t1_c1(struct cpu *cpu, struct arm_instr_call *ic)
Definition: tmp_arm_r0.cc:616
uint32_t arm_rs_r4_t0_c1(struct cpu *cpu, struct arm_instr_call *ic)
Definition: tmp_arm_r0.cc:2083
Definition: cpu.h:326
uint32_t arm_r_r2_t0_c0(struct cpu *cpu, struct arm_instr_call *ic)
Definition: tmp_arm_r0.cc:17
uint32_t arm_rs_r14_t6_c0(struct cpu *cpu, struct arm_instr_call *ic)
Definition: tmp_arm_r0.cc:1907
uint32_t arm_r_r3_t1_c0(struct cpu *cpu, struct arm_instr_call *ic)
Definition: tmp_arm_r0.cc:82
uint32_t arm_rs_r1_t2_c1(struct cpu *cpu, struct arm_instr_call *ic)
Definition: tmp_arm_r0.cc:2405
uint32_t arm_r_r4_t5_c0(struct cpu *cpu, struct arm_instr_call *ic)
Definition: tmp_arm_r0.cc:356
uint32_t arm_r_r13_t1_c0(struct cpu *cpu, struct arm_instr_call *ic)
Definition: tmp_arm_r0.cc:142
uint32_t arm_r_r10_t5_c1(struct cpu *cpu, struct arm_instr_call *ic)
Definition: tmp_arm_r0.cc:884
uint32_t arm_r_r10_t7_c0(struct cpu *cpu, struct arm_instr_call *ic)
Definition: tmp_arm_r0.cc:492
uint32_t arm_rs_r15_t5_c1(struct cpu *cpu, struct arm_instr_call *ic)
Definition: tmp_arm_r0.cc:2947
uint32_t arm_r_r9_t6_c0(struct cpu *cpu, struct arm_instr_call *ic)
Definition: tmp_arm_r0.cc:436
uint32_t arm_r_r6_t7_c0(struct cpu *cpu, struct arm_instr_call *ic)
Definition: tmp_arm_r0.cc:480
uint32_t arm_rs_r13_t1_c0(struct cpu *cpu, struct arm_instr_call *ic)
Definition: tmp_arm_r0.cc:1257
uint32_t arm_rs_r11_t4_c0(struct cpu *cpu, struct arm_instr_call *ic)
Definition: tmp_arm_r0.cc:1671
uint32_t arm_r_r14_t1_c0(struct cpu *cpu, struct arm_instr_call *ic)
Definition: tmp_arm_r0.cc:148
uint32_t arm_rs_r3_t4_c0(struct cpu *cpu, struct arm_instr_call *ic)
Definition: tmp_arm_r0.cc:1607
uint32_t arm_rs_r9_t1_c0(struct cpu *cpu, struct arm_instr_call *ic)
Definition: tmp_arm_r0.cc:1205
uint32_t arm_rs_r8_t7_c0(struct cpu *cpu, struct arm_instr_call *ic)
Definition: tmp_arm_r0.cc:1982
uint32_t arm_rs_r11_t0_c1(struct cpu *cpu, struct arm_instr_call *ic)
Definition: tmp_arm_r0.cc:2139
uint32_t arm_rs_r2_t7_c1(struct cpu *cpu, struct arm_instr_call *ic)
Definition: tmp_arm_r0.cc:3094
uint32_t arm_rs_r14_t1_c0(struct cpu *cpu, struct arm_instr_call *ic)
Definition: tmp_arm_r0.cc:1270
uint32_t arm_rs_r7_t4_c1(struct cpu *cpu, struct arm_instr_call *ic)
Definition: tmp_arm_r0.cc:2735
uint32_t arm_rs_r7_t1_c0(struct cpu *cpu, struct arm_instr_call *ic)
Definition: tmp_arm_r0.cc:1179
uint32_t arm_r_r5_t5_c0(struct cpu *cpu, struct arm_instr_call *ic)
Definition: tmp_arm_r0.cc:360
uint32_t arm_rs_r15_t0_c0(struct cpu *cpu, struct arm_instr_call *ic)
Definition: tmp_arm_r0.cc:1079
uint32_t arm_rs_r6_t1_c1(struct cpu *cpu, struct arm_instr_call *ic)
Definition: tmp_arm_r0.cc:2262
uint32_t arm_rs_r0_t1_c1(struct cpu *cpu, struct arm_instr_call *ic)
Definition: tmp_arm_r0.cc:2184
uint32_t arm_rs_r14_t2_c0(struct cpu *cpu, struct arm_instr_call *ic)
Definition: tmp_arm_r0.cc:1413
uint32_t arm_rs_r5_t2_c0(struct cpu *cpu, struct arm_instr_call *ic)
Definition: tmp_arm_r0.cc:1341
uint32_t arm_rs_r14_t1_c1(struct cpu *cpu, struct arm_instr_call *ic)
Definition: tmp_arm_r0.cc:2366
uint32_t arm_rs_r0_t3_c0(struct cpu *cpu, struct arm_instr_call *ic)
Definition: tmp_arm_r0.cc:1434
uint32_t arm_rs_r1_t0_c1(struct cpu *cpu, struct arm_instr_call *ic)
Definition: tmp_arm_r0.cc:2059
uint32_t arm_rs_r3_t0_c0(struct cpu *cpu, struct arm_instr_call *ic)
Definition: tmp_arm_r0.cc:1031
uint32_t arm_r_r6_t2_c0(struct cpu *cpu, struct arm_instr_call *ic)
Definition: tmp_arm_r0.cc:183
uint32_t arm_r_r10_t0_c0(struct cpu *cpu, struct arm_instr_call *ic)
Definition: tmp_arm_r0.cc:41
uint32_t arm_rs_r15_t6_c1(struct cpu *cpu, struct arm_instr_call *ic)
Definition: tmp_arm_r0.cc:3066
uint32_t arm_r_r10_t4_c0(struct cpu *cpu, struct arm_instr_call *ic)
Definition: tmp_arm_r0.cc:317
uint32_t arm_r_r1_t4_c0(struct cpu *cpu, struct arm_instr_call *ic)
Definition: tmp_arm_r0.cc:290
uint32_t arm_r_r4_t2_c1(struct cpu *cpu, struct arm_instr_call *ic)
Definition: tmp_arm_r0.cc:681
uint32_t arm_rs_r0_t2_c1(struct cpu *cpu, struct arm_instr_call *ic)
Definition: tmp_arm_r0.cc:2397
uint32_t arm_r_r8_t0_c1(struct cpu *cpu, struct arm_instr_call *ic)
Definition: tmp_arm_r0.cc:539
uint32_t arm_rs_r6_t5_c0(struct cpu *cpu, struct arm_instr_call *ic)
Definition: tmp_arm_r0.cc:1770
uint32_t arm_r_r2_t2_c1(struct cpu *cpu, struct arm_instr_call *ic)
Definition: tmp_arm_r0.cc:675
uint32_t arm_rs_r1_t4_c0(struct cpu *cpu, struct arm_instr_call *ic)
Definition: tmp_arm_r0.cc:1591
uint32_t arm_r_r7_t3_c0(struct cpu *cpu, struct arm_instr_call *ic)
Definition: tmp_arm_r0.cc:246
uint32_t arm_r_r11_t2_c0(struct cpu *cpu, struct arm_instr_call *ic)
Definition: tmp_arm_r0.cc:198
uint32_t arm_r_r6_t1_c1(struct cpu *cpu, struct arm_instr_call *ic)
Definition: tmp_arm_r0.cc:604
uint32_t arm_r_r8_t4_c0(struct cpu *cpu, struct arm_instr_call *ic)
Definition: tmp_arm_r0.cc:311
uint32_t arm_rs_r8_t5_c0(struct cpu *cpu, struct arm_instr_call *ic)
Definition: tmp_arm_r0.cc:1788
uint32_t arm_r_r1_t7_c0(struct cpu *cpu, struct arm_instr_call *ic)
Definition: tmp_arm_r0.cc:465
uint32_t arm_r_r4_t6_c1(struct cpu *cpu, struct arm_instr_call *ic)
Definition: tmp_arm_r0.cc:925
uint32_t arm_rs_r10_t1_c0(struct cpu *cpu, struct arm_instr_call *ic)
Definition: tmp_arm_r0.cc:1218
uint32_t arm_r_r14_t7_c1(struct cpu *cpu, struct arm_instr_call *ic)
Definition: tmp_arm_r0.cc:1008
uint32_t arm_r_r0_t0_c1(struct cpu *cpu, struct arm_instr_call *ic)
Definition: tmp_arm_r0.cc:515
uint32_t arm_r_r9_t7_c0(struct cpu *cpu, struct arm_instr_call *ic)
Definition: tmp_arm_r0.cc:489
uint32_t arm_r_r2_t4_c1(struct cpu *cpu, struct arm_instr_call *ic)
Definition: tmp_arm_r0.cc:797
uint32_t arm_r_r10_t1_c0(struct cpu *cpu, struct arm_instr_call *ic)
Definition: tmp_arm_r0.cc:124
uint32_t arm_r_r6_t5_c0(struct cpu *cpu, struct arm_instr_call *ic)
Definition: tmp_arm_r0.cc:364
uint32_t arm_rs_r11_t7_c0(struct cpu *cpu, struct arm_instr_call *ic)
Definition: tmp_arm_r0.cc:2006
uint32_t arm_r_r15_t1_c0(struct cpu *cpu, struct arm_instr_call *ic)
Definition: tmp_arm_r0.cc:154
uint32_t arm_rs_r6_t3_c0(struct cpu *cpu, struct arm_instr_call *ic)
Definition: tmp_arm_r0.cc:1488
uint32_t arm_rs_r6_t4_c1(struct cpu *cpu, struct arm_instr_call *ic)
Definition: tmp_arm_r0.cc:2727
uint32_t arm_r_r14_t3_c0(struct cpu *cpu, struct arm_instr_call *ic)
Definition: tmp_arm_r0.cc:274
uint32_t arm_r_r14_t0_c1(struct cpu *cpu, struct arm_instr_call *ic)
Definition: tmp_arm_r0.cc:557
uint32_t arm_rs_r10_t2_c1(struct cpu *cpu, struct arm_instr_call *ic)
Definition: tmp_arm_r0.cc:2477
uint32_t arm_r_r15_t2_c0(struct cpu *cpu, struct arm_instr_call *ic)
Definition: tmp_arm_r0.cc:210
uint32_t arm_r_r0_t5_c0(struct cpu *cpu, struct arm_instr_call *ic)
Definition: tmp_arm_r0.cc:340
uint32_t arm_r_r14_t5_c1(struct cpu *cpu, struct arm_instr_call *ic)
Definition: tmp_arm_r0.cc:900
uint32_t arm_rs_r13_t4_c1(struct cpu *cpu, struct arm_instr_call *ic)
Definition: tmp_arm_r0.cc:2783
uint32_t arm_r_r14_t2_c1(struct cpu *cpu, struct arm_instr_call *ic)
Definition: tmp_arm_r0.cc:711
uint32_t arm_rs_r1_t5_c0(struct cpu *cpu, struct arm_instr_call *ic)
Definition: tmp_arm_r0.cc:1725
uint32_t arm_r_r4_t5_c1(struct cpu *cpu, struct arm_instr_call *ic)
Definition: tmp_arm_r0.cc:860
uint32_t arm_rs_r4_t1_c0(struct cpu *cpu, struct arm_instr_call *ic)
Definition: tmp_arm_r0.cc:1140
size_t flags
Definition: cpu_arm.h:174
uint32_t arm_r_r7_t3_c1(struct cpu *cpu, struct arm_instr_call *ic)
Definition: tmp_arm_r0.cc:750
uint32_t arm_rs_r5_t3_c0(struct cpu *cpu, struct arm_instr_call *ic)
Definition: tmp_arm_r0.cc:1479
uint32_t arm_rs_r12_t4_c0(struct cpu *cpu, struct arm_instr_call *ic)
Definition: tmp_arm_r0.cc:1679
uint32_t arm_rs_r15_t7_c1(struct cpu *cpu, struct arm_instr_call *ic)
Definition: tmp_arm_r0.cc:3198
uint32_t arm_r_r6_t2_c1(struct cpu *cpu, struct arm_instr_call *ic)
Definition: tmp_arm_r0.cc:687
uint32_t arm_rs_r10_t3_c0(struct cpu *cpu, struct arm_instr_call *ic)
Definition: tmp_arm_r0.cc:1524
uint32_t arm_r_r14_t1_c1(struct cpu *cpu, struct arm_instr_call *ic)
Definition: tmp_arm_r0.cc:652
uint32_t arm_r_r13_t0_c0(struct cpu *cpu, struct arm_instr_call *ic)
Definition: tmp_arm_r0.cc:50
uint32_t arm_r_r7_t5_c1(struct cpu *cpu, struct arm_instr_call *ic)
Definition: tmp_arm_r0.cc:872
uint32_t arm_r_r9_t3_c1(struct cpu *cpu, struct arm_instr_call *ic)
Definition: tmp_arm_r0.cc:758
uint32_t arm_rs_r3_t1_c0(struct cpu *cpu, struct arm_instr_call *ic)
Definition: tmp_arm_r0.cc:1127
uint32_t arm_r_r4_t4_c0(struct cpu *cpu, struct arm_instr_call *ic)
Definition: tmp_arm_r0.cc:299
uint32_t arm_rs_r9_t4_c1(struct cpu *cpu, struct arm_instr_call *ic)
Definition: tmp_arm_r0.cc:2751
uint32_t arm_rs_r15_t6_c0(struct cpu *cpu, struct arm_instr_call *ic)
Definition: tmp_arm_r0.cc:1910
uint32_t arm_r_r5_t3_c0(struct cpu *cpu, struct arm_instr_call *ic)
Definition: tmp_arm_r0.cc:238
uint32_t arm_rs_r9_t7_c0(struct cpu *cpu, struct arm_instr_call *ic)
Definition: tmp_arm_r0.cc:1990
uint32_t arm_rs_r2_t5_c0(struct cpu *cpu, struct arm_instr_call *ic)
Definition: tmp_arm_r0.cc:1734
uint32_t arm_r_r15_t6_c1(struct cpu *cpu, struct arm_instr_call *ic)
Definition: tmp_arm_r0.cc:958
uint32_t arm_rs_r10_t6_c1(struct cpu *cpu, struct arm_instr_call *ic)
Definition: tmp_arm_r0.cc:3031
uint32_t arm_rs_r7_t3_c1(struct cpu *cpu, struct arm_instr_call *ic)
Definition: tmp_arm_r0.cc:2593
uint32_t arm_rs_r8_t4_c0(struct cpu *cpu, struct arm_instr_call *ic)
Definition: tmp_arm_r0.cc:1647
uint32_t arm_rs_r6_t2_c1(struct cpu *cpu, struct arm_instr_call *ic)
Definition: tmp_arm_r0.cc:2445
uint32_t arm_rs_r3_t7_c0(struct cpu *cpu, struct arm_instr_call *ic)
Definition: tmp_arm_r0.cc:1942
uint32_t arm_rs_r2_t4_c1(struct cpu *cpu, struct arm_instr_call *ic)
Definition: tmp_arm_r0.cc:2695
uint32_t arm_r_r0_t4_c1(struct cpu *cpu, struct arm_instr_call *ic)
Definition: tmp_arm_r0.cc:791
uint32_t arm_rs_r13_t5_c1(struct cpu *cpu, struct arm_instr_call *ic)
Definition: tmp_arm_r0.cc:2929
uint32_t arm_r_r0_t1_c0(struct cpu *cpu, struct arm_instr_call *ic)
Definition: tmp_arm_r0.cc:64
uint32_t arm_rs_r14_t6_c1(struct cpu *cpu, struct arm_instr_call *ic)
Definition: tmp_arm_r0.cc:3059
uint32_t arm_rs_r13_t4_c0(struct cpu *cpu, struct arm_instr_call *ic)
Definition: tmp_arm_r0.cc:1687
uint32_t arm_rs_r1_t3_c0(struct cpu *cpu, struct arm_instr_call *ic)
Definition: tmp_arm_r0.cc:1443
uint32_t arm_r_r9_t0_c0(struct cpu *cpu, struct arm_instr_call *ic)
Definition: tmp_arm_r0.cc:38
uint32_t arm_r_r7_t6_c1(struct cpu *cpu, struct arm_instr_call *ic)
Definition: tmp_arm_r0.cc:934
uint32_t arm_rs_r13_t2_c0(struct cpu *cpu, struct arm_instr_call *ic)
Definition: tmp_arm_r0.cc:1405
#define ARM_F_C
Definition: cpu_arm.h:88
uint32_t arm_rs_r12_t7_c1(struct cpu *cpu, struct arm_instr_call *ic)
Definition: tmp_arm_r0.cc:3174
uint32_t arm_r_r2_t1_c1(struct cpu *cpu, struct arm_instr_call *ic)
Definition: tmp_arm_r0.cc:580
uint32_t arm_rs_r12_t6_c0(struct cpu *cpu, struct arm_instr_call *ic)
Definition: tmp_arm_r0.cc:1901
uint32_t arm_r_r3_t2_c1(struct cpu *cpu, struct arm_instr_call *ic)
Definition: tmp_arm_r0.cc:678
uint32_t arm_rs_r8_t0_c1(struct cpu *cpu, struct arm_instr_call *ic)
Definition: tmp_arm_r0.cc:2115
uint32_t arm_rs_r0_t6_c1(struct cpu *cpu, struct arm_instr_call *ic)
Definition: tmp_arm_r0.cc:2961
uint32_t arm_rs_r8_t0_c0(struct cpu *cpu, struct arm_instr_call *ic)
Definition: tmp_arm_r0.cc:1051
uint32_t arm_r_r15_t2_c1(struct cpu *cpu, struct arm_instr_call *ic)
Definition: tmp_arm_r0.cc:714
uint32_t arm_rs_r7_t7_c1(struct cpu *cpu, struct arm_instr_call *ic)
Definition: tmp_arm_r0.cc:3134
uint32_t arm_rs_r7_t2_c0(struct cpu *cpu, struct arm_instr_call *ic)
Definition: tmp_arm_r0.cc:1357
uint32_t arm_r_r8_t2_c1(struct cpu *cpu, struct arm_instr_call *ic)
Definition: tmp_arm_r0.cc:693
uint32_t arm_r_r10_t6_c0(struct cpu *cpu, struct arm_instr_call *ic)
Definition: tmp_arm_r0.cc:439
uint32_t arm_rs_r6_t4_c0(struct cpu *cpu, struct arm_instr_call *ic)
Definition: tmp_arm_r0.cc:1631
uint32_t arm_r_r4_t1_c0(struct cpu *cpu, struct arm_instr_call *ic)
Definition: tmp_arm_r0.cc:88
uint32_t arm_r_r11_t6_c0(struct cpu *cpu, struct arm_instr_call *ic)
Definition: tmp_arm_r0.cc:442
uint32_t arm_r_r4_t6_c0(struct cpu *cpu, struct arm_instr_call *ic)
Definition: tmp_arm_r0.cc:421
uint32_t arm_r_r15_t3_c1(struct cpu *cpu, struct arm_instr_call *ic)
Definition: tmp_arm_r0.cc:782
uint32_t arm_r_r1_t1_c1(struct cpu *cpu, struct arm_instr_call *ic)
Definition: tmp_arm_r0.cc:574
uint32_t arm_rs_r13_t0_c0(struct cpu *cpu, struct arm_instr_call *ic)
Definition: tmp_arm_r0.cc:1071
uint32_t arm_rs_r6_t0_c1(struct cpu *cpu, struct arm_instr_call *ic)
Definition: tmp_arm_r0.cc:2099
uint32_t arm_rs_r12_t5_c1(struct cpu *cpu, struct arm_instr_call *ic)
Definition: tmp_arm_r0.cc:2920
uint32_t arm_rs_r11_t5_c1(struct cpu *cpu, struct arm_instr_call *ic)
Definition: tmp_arm_r0.cc:2911
uint32_t arm_rs_r12_t6_c1(struct cpu *cpu, struct arm_instr_call *ic)
Definition: tmp_arm_r0.cc:3045
uint32_t arm_rs_r12_t3_c1(struct cpu *cpu, struct arm_instr_call *ic)
Definition: tmp_arm_r0.cc:2638
uint32_t arm_r_r7_t4_c0(struct cpu *cpu, struct arm_instr_call *ic)
Definition: tmp_arm_r0.cc:308
uint32_t arm_rs_r13_t7_c0(struct cpu *cpu, struct arm_instr_call *ic)
Definition: tmp_arm_r0.cc:2022
uint32_t arm_rs_r2_t6_c0(struct cpu *cpu, struct arm_instr_call *ic)
Definition: tmp_arm_r0.cc:1871
uint32_t arm_r_r13_t5_c0(struct cpu *cpu, struct arm_instr_call *ic)
Definition: tmp_arm_r0.cc:392
uint32_t arm_rs_r14_t2_c1(struct cpu *cpu, struct arm_instr_call *ic)
Definition: tmp_arm_r0.cc:2509
uint32_t arm_rs_r11_t2_c1(struct cpu *cpu, struct arm_instr_call *ic)
Definition: tmp_arm_r0.cc:2485
uint32_t arm_rs_r4_t5_c0(struct cpu *cpu, struct arm_instr_call *ic)
Definition: tmp_arm_r0.cc:1752
uint32_t arm_rs_r5_t4_c0(struct cpu *cpu, struct arm_instr_call *ic)
Definition: tmp_arm_r0.cc:1623
uint32_t arm_r_r1_t5_c1(struct cpu *cpu, struct arm_instr_call *ic)
Definition: tmp_arm_r0.cc:848
uint32_t arm_r_r10_t1_c1(struct cpu *cpu, struct arm_instr_call *ic)
Definition: tmp_arm_r0.cc:628
uint32_t arm_rs_r3_t0_c1(struct cpu *cpu, struct arm_instr_call *ic)
Definition: tmp_arm_r0.cc:2075
uint32_t arm_rs_r10_t0_c0(struct cpu *cpu, struct arm_instr_call *ic)
Definition: tmp_arm_r0.cc:1059
uint32_t arm_r_r2_t1_c0(struct cpu *cpu, struct arm_instr_call *ic)
Definition: tmp_arm_r0.cc:76
uint32_t arm_rs_r3_t2_c1(struct cpu *cpu, struct arm_instr_call *ic)
Definition: tmp_arm_r0.cc:2421
uint32_t arm_r_r8_t4_c1(struct cpu *cpu, struct arm_instr_call *ic)
Definition: tmp_arm_r0.cc:815
uint32_t r[N_ARM_REGS]
Definition: cpu_arm.h:155
uint32_t arm_rs_r12_t7_c0(struct cpu *cpu, struct arm_instr_call *ic)
Definition: tmp_arm_r0.cc:2014
uint32_t arm_r_r4_t0_c1(struct cpu *cpu, struct arm_instr_call *ic)
Definition: tmp_arm_r0.cc:527
uint32_t arm_rs_r7_t6_c1(struct cpu *cpu, struct arm_instr_call *ic)
Definition: tmp_arm_r0.cc:3010
uint32_t arm_rs_r9_t5_c1(struct cpu *cpu, struct arm_instr_call *ic)
Definition: tmp_arm_r0.cc:2893
uint32_t arm_r_r8_t6_c0(struct cpu *cpu, struct arm_instr_call *ic)
Definition: tmp_arm_r0.cc:433
uint32_t arm_rs_r4_t4_c0(struct cpu *cpu, struct arm_instr_call *ic)
Definition: tmp_arm_r0.cc:1615
uint32_t arm_r_r1_t5_c0(struct cpu *cpu, struct arm_instr_call *ic)
Definition: tmp_arm_r0.cc:344
uint32_t arm_r_r1_t6_c0(struct cpu *cpu, struct arm_instr_call *ic)
Definition: tmp_arm_r0.cc:412
uint32_t arm_r_r13_t7_c1(struct cpu *cpu, struct arm_instr_call *ic)
Definition: tmp_arm_r0.cc:1005
uint32_t arm_r_r0_t3_c0(struct cpu *cpu, struct arm_instr_call *ic)
Definition: tmp_arm_r0.cc:218
uint32_t arm_rs_r2_t2_c0(struct cpu *cpu, struct arm_instr_call *ic)
Definition: tmp_arm_r0.cc:1317
uint32_t arm_r_r8_t3_c0(struct cpu *cpu, struct arm_instr_call *ic)
Definition: tmp_arm_r0.cc:250
uint32_t arm_rs_r4_t3_c0(struct cpu *cpu, struct arm_instr_call *ic)
Definition: tmp_arm_r0.cc:1470
uint32_t arm_r_r2_t7_c0(struct cpu *cpu, struct arm_instr_call *ic)
Definition: tmp_arm_r0.cc:468
uint32_t arm_rs_r7_t0_c1(struct cpu *cpu, struct arm_instr_call *ic)
Definition: tmp_arm_r0.cc:2107
uint32_t arm_r_r13_t5_c1(struct cpu *cpu, struct arm_instr_call *ic)
Definition: tmp_arm_r0.cc:896
uint32_t arm_rs_r14_t0_c0(struct cpu *cpu, struct arm_instr_call *ic)
Definition: tmp_arm_r0.cc:1075
uint32_t arm_rs_r9_t6_c0(struct cpu *cpu, struct arm_instr_call *ic)
Definition: tmp_arm_r0.cc:1892
uint32_t arm_rs_r8_t3_c0(struct cpu *cpu, struct arm_instr_call *ic)
Definition: tmp_arm_r0.cc:1506
uint32_t arm_r_r12_t5_c1(struct cpu *cpu, struct arm_instr_call *ic)
Definition: tmp_arm_r0.cc:892
uint32_t arm_r_r9_t3_c0(struct cpu *cpu, struct arm_instr_call *ic)
Definition: tmp_arm_r0.cc:254
uint32_t arm_rs_r7_t6_c0(struct cpu *cpu, struct arm_instr_call *ic)
Definition: tmp_arm_r0.cc:1886
uint32_t arm_rs_r1_t6_c0(struct cpu *cpu, struct arm_instr_call *ic)
Definition: tmp_arm_r0.cc:1868
uint32_t arm_r_r8_t2_c0(struct cpu *cpu, struct arm_instr_call *ic)
Definition: tmp_arm_r0.cc:189
uint32_t arm_rs_r0_t5_c1(struct cpu *cpu, struct arm_instr_call *ic)
Definition: tmp_arm_r0.cc:2812
uint32_t arm_r_r13_t3_c1(struct cpu *cpu, struct arm_instr_call *ic)
Definition: tmp_arm_r0.cc:774
uint32_t arm_rs_r5_t1_c0(struct cpu *cpu, struct arm_instr_call *ic)
Definition: tmp_arm_r0.cc:1153
uint32_t arm_rs_r2_t3_c1(struct cpu *cpu, struct arm_instr_call *ic)
Definition: tmp_arm_r0.cc:2548
uint32_t arm_rs_r1_t2_c0(struct cpu *cpu, struct arm_instr_call *ic)
Definition: tmp_arm_r0.cc:1309
uint32_t arm_rs_r9_t4_c0(struct cpu *cpu, struct arm_instr_call *ic)
Definition: tmp_arm_r0.cc:1655
uint32_t arm_rs_r10_t3_c1(struct cpu *cpu, struct arm_instr_call *ic)
Definition: tmp_arm_r0.cc:2620
uint32_t arm_r_r5_t6_c0(struct cpu *cpu, struct arm_instr_call *ic)
Definition: tmp_arm_r0.cc:424
uint32_t arm_r_r9_t2_c1(struct cpu *cpu, struct arm_instr_call *ic)
Definition: tmp_arm_r0.cc:696
uint32_t arm_rs_r15_t1_c0(struct cpu *cpu, struct arm_instr_call *ic)
Definition: tmp_arm_r0.cc:1283
uint32_t arm_rs_r9_t5_c0(struct cpu *cpu, struct arm_instr_call *ic)
Definition: tmp_arm_r0.cc:1797
uint32_t arm_r_r0_t0_c0(struct cpu *cpu, struct arm_instr_call *ic)
Definition: tmp_arm_r0.cc:11
uint32_t arm_r_r8_t7_c1(struct cpu *cpu, struct arm_instr_call *ic)
Definition: tmp_arm_r0.cc:990
uint32_t arm_rs_r2_t4_c0(struct cpu *cpu, struct arm_instr_call *ic)
Definition: tmp_arm_r0.cc:1599
uint32_t arm_rs_r8_t6_c1(struct cpu *cpu, struct arm_instr_call *ic)
Definition: tmp_arm_r0.cc:3017
uint32_t arm_r_r3_t5_c0(struct cpu *cpu, struct arm_instr_call *ic)
Definition: tmp_arm_r0.cc:352
uint32_t arm_r_r10_t7_c1(struct cpu *cpu, struct arm_instr_call *ic)
Definition: tmp_arm_r0.cc:996
uint32_t arm_rs_r1_t5_c1(struct cpu *cpu, struct arm_instr_call *ic)
Definition: tmp_arm_r0.cc:2821

Generated on Fri Dec 7 2018 19:52:23 for GXemul by doxygen 1.8.13