1 #include <stdio.h>
2 #include <stdbool.h>
3 #include <r_types.h>
4 #include <r_util.h>
5 #include <r_asm.h>
6 #include <r_anal.h>
7 #include "hexagon.h"
8 #include "hexagon_insn.h"
9
hexagon_anal_instruction(HexInsn * hi,RAnalOp * op)10 int hexagon_anal_instruction(HexInsn *hi, RAnalOp *op) {
11 switch (hi->instruction) {
12 case HEX_INS_CALL__R22_2: {
13 // call #r22:2
14 op->type = R_ANAL_OP_TYPE_CALL;
15 op->jump = op->addr + (st32) hi->ops[0].op.imm;
16 break;
17 }
18 case HEX_INS_IF__PU__CALL__R15_2: {
19 // if (Pu) call #r15:2
20 op->type = R_ANAL_OP_TYPE_CALL;
21 op->jump = op->addr + (st32) hi->ops[1].op.imm;
22 break;
23 }
24 case HEX_INS_IF__NOT_PU_CALL__R15_2: {
25 // if !Pu call #r15:2
26 op->type = R_ANAL_OP_TYPE_CALL;
27 op->jump = op->addr + (st32) hi->ops[1].op.imm;
28 break;
29 }
30 case HEX_INS_MULT_P0___CMP_EQ__RS____1____IF__P0_NEW__JUMP_NT__R9_2: {
31 // p0 = cmp.eq (Rs, #-1) ; if (p0.new) jump:nt #r9:2
32 op->type = R_ANAL_OP_TYPE_CJMP;
33 op->jump = op->addr + (st32) hi->ops[1].op.imm;
34 op->fail = op->addr + op->size;
35 break;
36 }
37 case HEX_INS_MULT_P0___CMP_GT__RS____1____IF__P0_NEW__JUMP_NT__R9_2: {
38 // p0 = cmp.gt (Rs, #-1) ; if (p0.new) jump:nt #r9:2
39 op->type = R_ANAL_OP_TYPE_CJMP;
40 op->jump = op->addr + (st32) hi->ops[1].op.imm;
41 op->fail = op->addr + op->size;
42 break;
43 }
44 case HEX_INS_MULT_P0___TSTBIT__RS___0____IF__P0_NEW__JUMP_NT__R9_2: {
45 // p0 = tstbit (Rs, #0) ; if (p0.new) jump:nt #r9:2
46 op->type = R_ANAL_OP_TYPE_CJMP;
47 op->jump = op->addr + (st32) hi->ops[1].op.imm;
48 op->fail = op->addr + op->size;
49 break;
50 }
51 case HEX_INS_MULT_P0___CMP_EQ__RS____1____IF__P0_NEW__JUMP_T__R9_2: {
52 // p0 = cmp.eq (Rs, #-1) ; if (p0.new) jump:t #r9:2
53 op->type = R_ANAL_OP_TYPE_CJMP;
54 op->jump = op->addr + (st32) hi->ops[1].op.imm;
55 op->fail = op->addr + op->size;
56 break;
57 }
58 case HEX_INS_MULT_P0___CMP_GT__RS____1____IF__P0_NEW__JUMP_T__R9_2: {
59 // p0 = cmp.gt (Rs, #-1) ; if (p0.new) jump:t #r9:2
60 op->type = R_ANAL_OP_TYPE_CJMP;
61 op->jump = op->addr + (st32) hi->ops[1].op.imm;
62 op->fail = op->addr + op->size;
63 break;
64 }
65 case HEX_INS_MULT_P0___TSTBIT__RS___0____IF__P0_NEW__JUMP_T__R9_2: {
66 // p0 = tstbit (Rs, #0) ; if (p0.new) jump:t #r9:2
67 op->type = R_ANAL_OP_TYPE_CJMP;
68 op->jump = op->addr + (st32) hi->ops[1].op.imm;
69 op->fail = op->addr + op->size;
70 break;
71 }
72 case HEX_INS_MULT_P0___CMP_EQ__RS____1____IF___NOT_P0_NEW__JUMP_NT__R9_2: {
73 // p0 = cmp.eq (Rs, #-1) ; if (!p0.new) jump:nt #r9:2
74 op->type = R_ANAL_OP_TYPE_CJMP;
75 op->jump = op->addr + (st32) hi->ops[1].op.imm;
76 op->fail = op->addr + op->size;
77 break;
78 }
79 case HEX_INS_MULT_P0___CMP_GT__RS____1____IF___NOT_P0_NEW__JUMP_NT__R9_2: {
80 // p0 = cmp.gt (Rs, #-1) ; if (!p0.new) jump:nt #r9:2
81 op->type = R_ANAL_OP_TYPE_CJMP;
82 op->jump = op->addr + (st32) hi->ops[1].op.imm;
83 op->fail = op->addr + op->size;
84 break;
85 }
86 case HEX_INS_MULT_P0___TSTBIT__RS___0____IF___NOT_P0_NEW__JUMP_NT__R9_2: {
87 // p0 = tstbit (Rs, #0) ; if (!p0.new) jump:nt #r9:2
88 op->type = R_ANAL_OP_TYPE_CJMP;
89 op->jump = op->addr + (st32) hi->ops[1].op.imm;
90 op->fail = op->addr + op->size;
91 break;
92 }
93 case HEX_INS_MULT_P0___CMP_EQ__RS____1____IF___NOT_P0_NEW__JUMP_T__R9_2: {
94 // p0 = cmp.eq (Rs, #-1) ; if (!p0.new) jump:t #r9:2
95 op->type = R_ANAL_OP_TYPE_CJMP;
96 op->jump = op->addr + (st32) hi->ops[1].op.imm;
97 op->fail = op->addr + op->size;
98 break;
99 }
100 case HEX_INS_MULT_P0___CMP_GT__RS____1____IF___NOT_P0_NEW__JUMP_T__R9_2: {
101 // p0 = cmp.gt (Rs, #-1) ; if (!p0.new) jump:t #r9:2
102 op->type = R_ANAL_OP_TYPE_CJMP;
103 op->jump = op->addr + (st32) hi->ops[1].op.imm;
104 op->fail = op->addr + op->size;
105 break;
106 }
107 case HEX_INS_MULT_P0___TSTBIT__RS___0____IF___NOT_P0_NEW__JUMP_T__R9_2: {
108 // p0 = tstbit (Rs, #0) ; if (!p0.new) jump:t #r9:2
109 op->type = R_ANAL_OP_TYPE_CJMP;
110 op->jump = op->addr + (st32) hi->ops[1].op.imm;
111 op->fail = op->addr + op->size;
112 break;
113 }
114 case HEX_INS_MULT_P0___CMP_EQ__RS___U5____IF__P0_NEW__JUMP_NT__R9_2: {
115 // p0 = cmp.eq (Rs, #U5) ; if (p0.new) jump:nt #r9:2
116 op->type = R_ANAL_OP_TYPE_CJMP;
117 op->jump = op->addr + (st32) hi->ops[2].op.imm;
118 op->fail = op->addr + op->size;
119 break;
120 }
121 case HEX_INS_MULT_P0___CMP_EQ__RS___U5____IF__P0_NEW__JUMP_T__R9_2: {
122 // p0 = cmp.eq (Rs, #U5) ; if (p0.new) jump:t #r9:2
123 op->type = R_ANAL_OP_TYPE_CJMP;
124 op->jump = op->addr + (st32) hi->ops[2].op.imm;
125 op->fail = op->addr + op->size;
126 break;
127 }
128 case HEX_INS_MULT_P0___CMP_EQ__RS___U5____IF___NOT_P0_NEW__JUMP_NT__R9_2: {
129 // p0 = cmp.eq (Rs, #U5) ; if (!p0.new) jump:nt #r9:2
130 op->type = R_ANAL_OP_TYPE_CJMP;
131 op->jump = op->addr + (st32) hi->ops[2].op.imm;
132 op->fail = op->addr + op->size;
133 break;
134 }
135 case HEX_INS_MULT_P0___CMP_EQ__RS___U5____IF___NOT_P0_NEW__JUMP_T__R9_2: {
136 // p0 = cmp.eq (Rs, #U5) ; if (!p0.new) jump:t #r9:2
137 op->type = R_ANAL_OP_TYPE_CJMP;
138 op->jump = op->addr + (st32) hi->ops[2].op.imm;
139 op->fail = op->addr + op->size;
140 break;
141 }
142 case HEX_INS_MULT_P0___CMP_GT__RS___U5____IF__P0_NEW__JUMP_NT__R9_2: {
143 // p0 = cmp.gt (Rs, #U5) ; if (p0.new) jump:nt #r9:2
144 op->type = R_ANAL_OP_TYPE_CJMP;
145 op->jump = op->addr + (st32) hi->ops[2].op.imm;
146 op->fail = op->addr + op->size;
147 break;
148 }
149 case HEX_INS_MULT_P0___CMP_GT__RS___U5____IF__P0_NEW__JUMP_T__R9_2: {
150 // p0 = cmp.gt (Rs, #U5) ; if (p0.new) jump:t #r9:2
151 op->type = R_ANAL_OP_TYPE_CJMP;
152 op->jump = op->addr + (st32) hi->ops[2].op.imm;
153 op->fail = op->addr + op->size;
154 break;
155 }
156 case HEX_INS_MULT_P0___CMP_GT__RS___U5____IF___NOT_P0_NEW__JUMP_NT__R9_2: {
157 // p0 = cmp.gt (Rs, #U5) ; if (!p0.new) jump:nt #r9:2
158 op->type = R_ANAL_OP_TYPE_CJMP;
159 op->jump = op->addr + (st32) hi->ops[2].op.imm;
160 op->fail = op->addr + op->size;
161 break;
162 }
163 case HEX_INS_MULT_P0___CMP_GT__RS___U5____IF___NOT_P0_NEW__JUMP_T__R9_2: {
164 // p0 = cmp.gt (Rs, #U5) ; if (!p0.new) jump:t #r9:2
165 op->type = R_ANAL_OP_TYPE_CJMP;
166 op->jump = op->addr + (st32) hi->ops[2].op.imm;
167 op->fail = op->addr + op->size;
168 break;
169 }
170 case HEX_INS_MULT_P0___CMP_GTU__RS___U5____IF__P0_NEW__JUMP_NT__R9_2: {
171 // p0 = cmp.gtu (Rs, #U5) ; if (p0.new) jump:nt #r9:2
172 op->type = R_ANAL_OP_TYPE_CJMP;
173 op->jump = op->addr + (st32) hi->ops[2].op.imm;
174 op->fail = op->addr + op->size;
175 break;
176 }
177 case HEX_INS_MULT_P0___CMP_GTU__RS___U5____IF__P0_NEW__JUMP_T__R9_2: {
178 // p0 = cmp.gtu (Rs, #U5) ; if (p0.new) jump:t #r9:2
179 op->type = R_ANAL_OP_TYPE_CJMP;
180 op->jump = op->addr + (st32) hi->ops[2].op.imm;
181 op->fail = op->addr + op->size;
182 break;
183 }
184 case HEX_INS_MULT_P0___CMP_GTU__RS___U5____IF___NOT_P0_NEW__JUMP_NT__R9_2: {
185 // p0 = cmp.gtu (Rs, #U5) ; if (!p0.new) jump:nt #r9:2
186 op->type = R_ANAL_OP_TYPE_CJMP;
187 op->jump = op->addr + (st32) hi->ops[2].op.imm;
188 op->fail = op->addr + op->size;
189 break;
190 }
191 case HEX_INS_MULT_P0___CMP_GTU__RS___U5____IF___NOT_P0_NEW__JUMP_T__R9_2: {
192 // p0 = cmp.gtu (Rs, #U5) ; if (!p0.new) jump:t #r9:2
193 op->type = R_ANAL_OP_TYPE_CJMP;
194 op->jump = op->addr + (st32) hi->ops[2].op.imm;
195 op->fail = op->addr + op->size;
196 break;
197 }
198 case HEX_INS_MULT_P1___CMP_EQ__RS____1____IF__P1_NEW__JUMP_NT__R9_2: {
199 // p1 = cmp.eq (Rs, #-1) ; if (p1.new) jump:nt #r9:2
200 op->type = R_ANAL_OP_TYPE_CJMP;
201 op->jump = op->addr + (st32) hi->ops[1].op.imm;
202 op->fail = op->addr + op->size;
203 break;
204 }
205 case HEX_INS_MULT_P1___CMP_GT__RS____1____IF__P1_NEW__JUMP_NT__R9_2: {
206 // p1 = cmp.gt (Rs, #-1) ; if (p1.new) jump:nt #r9:2
207 op->type = R_ANAL_OP_TYPE_CJMP;
208 op->jump = op->addr + (st32) hi->ops[1].op.imm;
209 op->fail = op->addr + op->size;
210 break;
211 }
212 case HEX_INS_MULT_P1___TSTBIT__RS___0____IF__P1_NEW__JUMP_NT__R9_2: {
213 // p1 = tstbit (Rs, #0) ; if (p1.new) jump:nt #r9:2
214 op->type = R_ANAL_OP_TYPE_CJMP;
215 op->jump = op->addr + (st32) hi->ops[1].op.imm;
216 op->fail = op->addr + op->size;
217 break;
218 }
219 case HEX_INS_MULT_P1___CMP_EQ__RS____1____IF__P1_NEW__JUMP_T__R9_2: {
220 // p1 = cmp.eq (Rs, #-1) ; if (p1.new) jump:t #r9:2
221 op->type = R_ANAL_OP_TYPE_CJMP;
222 op->jump = op->addr + (st32) hi->ops[1].op.imm;
223 op->fail = op->addr + op->size;
224 break;
225 }
226 case HEX_INS_MULT_P1___CMP_GT__RS____1____IF__P1_NEW__JUMP_T__R9_2: {
227 // p1 = cmp.gt (Rs, #-1) ; if (p1.new) jump:t #r9:2
228 op->type = R_ANAL_OP_TYPE_CJMP;
229 op->jump = op->addr + (st32) hi->ops[1].op.imm;
230 op->fail = op->addr + op->size;
231 break;
232 }
233 case HEX_INS_MULT_P1___TSTBIT__RS___0____IF__P1_NEW__JUMP_T__R9_2: {
234 // p1 = tstbit (Rs, #0) ; if (p1.new) jump:t #r9:2
235 op->type = R_ANAL_OP_TYPE_CJMP;
236 op->jump = op->addr + (st32) hi->ops[1].op.imm;
237 op->fail = op->addr + op->size;
238 break;
239 }
240 case HEX_INS_MULT_P1___CMP_EQ__RS____1____IF___NOT_P1_NEW__JUMP_NT__R9_2: {
241 // p1 = cmp.eq (Rs, #-1) ; if (!p1.new) jump:nt #r9:2
242 op->type = R_ANAL_OP_TYPE_CJMP;
243 op->jump = op->addr + (st32) hi->ops[1].op.imm;
244 op->fail = op->addr + op->size;
245 break;
246 }
247 case HEX_INS_MULT_P1___CMP_GT__RS____1____IF___NOT_P1_NEW__JUMP_NT__R9_2: {
248 // p1 = cmp.gt (Rs, #-1) ; if (!p1.new) jump:nt #r9:2
249 op->type = R_ANAL_OP_TYPE_CJMP;
250 op->jump = op->addr + (st32) hi->ops[1].op.imm;
251 op->fail = op->addr + op->size;
252 break;
253 }
254 case HEX_INS_MULT_P1___TSTBIT__RS___0____IF___NOT_P1_NEW__JUMP_NT__R9_2: {
255 // p1 = tstbit (Rs, #0) ; if (!p1.new) jump:nt #r9:2
256 op->type = R_ANAL_OP_TYPE_CJMP;
257 op->jump = op->addr + (st32) hi->ops[1].op.imm;
258 op->fail = op->addr + op->size;
259 break;
260 }
261 case HEX_INS_MULT_P1___CMP_EQ__RS____1____IF___NOT_P1_NEW__JUMP_T__R9_2: {
262 // p1 = cmp.eq (Rs, #-1) ; if (!p1.new) jump:t #r9:2
263 op->type = R_ANAL_OP_TYPE_CJMP;
264 op->jump = op->addr + (st32) hi->ops[1].op.imm;
265 op->fail = op->addr + op->size;
266 break;
267 }
268 case HEX_INS_MULT_P1___CMP_GT__RS____1____IF___NOT_P1_NEW__JUMP_T__R9_2: {
269 // p1 = cmp.gt (Rs, #-1) ; if (!p1.new) jump:t #r9:2
270 op->type = R_ANAL_OP_TYPE_CJMP;
271 op->jump = op->addr + (st32) hi->ops[1].op.imm;
272 op->fail = op->addr + op->size;
273 break;
274 }
275 case HEX_INS_MULT_P1___TSTBIT__RS___0____IF___NOT_P1_NEW__JUMP_T__R9_2: {
276 // p1 = tstbit (Rs, #0) ; if (!p1.new) jump:t #r9:2
277 op->type = R_ANAL_OP_TYPE_CJMP;
278 op->jump = op->addr + (st32) hi->ops[1].op.imm;
279 op->fail = op->addr + op->size;
280 break;
281 }
282 case HEX_INS_MULT_P1___CMP_EQ__RS___U5____IF__P1_NEW__JUMP_NT__R9_2: {
283 // p1 = cmp.eq (Rs, #U5) ; if (p1.new) jump:nt #r9:2
284 op->type = R_ANAL_OP_TYPE_CJMP;
285 op->jump = op->addr + (st32) hi->ops[2].op.imm;
286 op->fail = op->addr + op->size;
287 break;
288 }
289 case HEX_INS_MULT_P1___CMP_EQ__RS___U5____IF__P1_NEW__JUMP_T__R9_2: {
290 // p1 = cmp.eq (Rs, #U5) ; if (p1.new) jump:t #r9:2
291 op->type = R_ANAL_OP_TYPE_CJMP;
292 op->jump = op->addr + (st32) hi->ops[2].op.imm;
293 op->fail = op->addr + op->size;
294 break;
295 }
296 case HEX_INS_MULT_P1___CMP_EQ__RS___U5____IF___NOT_P1_NEW__JUMP_NT__R9_2: {
297 // p1 = cmp.eq (Rs, #U5) ; if (!p1.new) jump:nt #r9:2
298 op->type = R_ANAL_OP_TYPE_CJMP;
299 op->jump = op->addr + (st32) hi->ops[2].op.imm;
300 op->fail = op->addr + op->size;
301 break;
302 }
303 case HEX_INS_MULT_P1___CMP_EQ__RS___U5____IF___NOT_P1_NEW__JUMP_T__R9_2: {
304 // p1 = cmp.eq (Rs, #U5) ; if (!p1.new) jump:t #r9:2
305 op->type = R_ANAL_OP_TYPE_CJMP;
306 op->jump = op->addr + (st32) hi->ops[2].op.imm;
307 op->fail = op->addr + op->size;
308 break;
309 }
310 case HEX_INS_MULT_P1___CMP_GT__RS___U5____IF__P1_NEW__JUMP_NT__R9_2: {
311 // p1 = cmp.gt (Rs, #U5) ; if (p1.new) jump:nt #r9:2
312 op->type = R_ANAL_OP_TYPE_CJMP;
313 op->jump = op->addr + (st32) hi->ops[2].op.imm;
314 op->fail = op->addr + op->size;
315 break;
316 }
317 case HEX_INS_MULT_P1___CMP_GT__RS___U5____IF__P1_NEW__JUMP_T__R9_2: {
318 // p1 = cmp.gt (Rs, #U5) ; if (p1.new) jump:t #r9:2
319 op->type = R_ANAL_OP_TYPE_CJMP;
320 op->jump = op->addr + (st32) hi->ops[2].op.imm;
321 op->fail = op->addr + op->size;
322 break;
323 }
324 case HEX_INS_MULT_P1___CMP_GT__RS___U5____IF___NOT_P1_NEW__JUMP_NT__R9_2: {
325 // p1 = cmp.gt (Rs, #U5) ; if (!p1.new) jump:nt #r9:2
326 op->type = R_ANAL_OP_TYPE_CJMP;
327 op->jump = op->addr + (st32) hi->ops[2].op.imm;
328 op->fail = op->addr + op->size;
329 break;
330 }
331 case HEX_INS_MULT_P1___CMP_GT__RS___U5____IF___NOT_P1_NEW__JUMP_T__R9_2: {
332 // p1 = cmp.gt (Rs, #U5) ; if (!p1.new) jump:t #r9:2
333 op->type = R_ANAL_OP_TYPE_CJMP;
334 op->jump = op->addr + (st32) hi->ops[2].op.imm;
335 op->fail = op->addr + op->size;
336 break;
337 }
338 case HEX_INS_MULT_P1___CMP_GTU__RS___U5____IF__P1_NEW__JUMP_NT__R9_2: {
339 // p1 = cmp.gtu (Rs, #U5) ; if (p1.new) jump:nt #r9:2
340 op->type = R_ANAL_OP_TYPE_CJMP;
341 op->jump = op->addr + (st32) hi->ops[2].op.imm;
342 op->fail = op->addr + op->size;
343 break;
344 }
345 case HEX_INS_MULT_P1___CMP_GTU__RS___U5____IF__P1_NEW__JUMP_T__R9_2: {
346 // p1 = cmp.gtu (Rs, #U5) ; if (p1.new) jump:t #r9:2
347 op->type = R_ANAL_OP_TYPE_CJMP;
348 op->jump = op->addr + (st32) hi->ops[2].op.imm;
349 op->fail = op->addr + op->size;
350 break;
351 }
352 case HEX_INS_MULT_P1___CMP_GTU__RS___U5____IF___NOT_P1_NEW__JUMP_NT__R9_2: {
353 // p1 = cmp.gtu (Rs, #U5) ; if (!p1.new) jump:nt #r9:2
354 op->type = R_ANAL_OP_TYPE_CJMP;
355 op->jump = op->addr + (st32) hi->ops[2].op.imm;
356 op->fail = op->addr + op->size;
357 break;
358 }
359 case HEX_INS_MULT_P1___CMP_GTU__RS___U5____IF___NOT_P1_NEW__JUMP_T__R9_2: {
360 // p1 = cmp.gtu (Rs, #U5) ; if (!p1.new) jump:t #r9:2
361 op->type = R_ANAL_OP_TYPE_CJMP;
362 op->jump = op->addr + (st32) hi->ops[2].op.imm;
363 op->fail = op->addr + op->size;
364 break;
365 }
366 case HEX_INS_MULT_P0___CMP_EQ__RS__RT____IF__P0_NEW__JUMP_NT__R9_2: {
367 // p0 = cmp.eq (Rs, Rt) ; if (p0.new) jump:nt #r9:2
368 op->type = R_ANAL_OP_TYPE_CJMP;
369 op->jump = op->addr + (st32) hi->ops[2].op.imm;
370 op->fail = op->addr + op->size;
371 break;
372 }
373 case HEX_INS_MULT_P1___CMP_EQ__RS__RT____IF__P1_NEW__JUMP_NT__R9_2: {
374 // p1 = cmp.eq (Rs, Rt) ; if (p1.new) jump:nt #r9:2
375 op->type = R_ANAL_OP_TYPE_CJMP;
376 op->jump = op->addr + (st32) hi->ops[2].op.imm;
377 op->fail = op->addr + op->size;
378 break;
379 }
380 case HEX_INS_MULT_P0___CMP_EQ__RS__RT____IF__P0_NEW__JUMP_T__R9_2: {
381 // p0 = cmp.eq (Rs, Rt) ; if (p0.new) jump:t #r9:2
382 op->type = R_ANAL_OP_TYPE_CJMP;
383 op->jump = op->addr + (st32) hi->ops[2].op.imm;
384 op->fail = op->addr + op->size;
385 break;
386 }
387 case HEX_INS_MULT_P1___CMP_EQ__RS__RT____IF__P1_NEW__JUMP_T__R9_2: {
388 // p1 = cmp.eq (Rs, Rt) ; if (p1.new) jump:t #r9:2
389 op->type = R_ANAL_OP_TYPE_CJMP;
390 op->jump = op->addr + (st32) hi->ops[2].op.imm;
391 op->fail = op->addr + op->size;
392 break;
393 }
394 case HEX_INS_MULT_P0___CMP_EQ__RS__RT____IF___NOT_P0_NEW__JUMP_NT__R9_2: {
395 // p0 = cmp.eq (Rs, Rt) ; if (!p0.new) jump:nt #r9:2
396 op->type = R_ANAL_OP_TYPE_CJMP;
397 op->jump = op->addr + (st32) hi->ops[2].op.imm;
398 op->fail = op->addr + op->size;
399 break;
400 }
401 case HEX_INS_MULT_P1___CMP_EQ__RS__RT____IF___NOT_P1_NEW__JUMP_NT__R9_2: {
402 // p1 = cmp.eq (Rs, Rt) ; if (!p1.new) jump:nt #r9:2
403 op->type = R_ANAL_OP_TYPE_CJMP;
404 op->jump = op->addr + (st32) hi->ops[2].op.imm;
405 op->fail = op->addr + op->size;
406 break;
407 }
408 case HEX_INS_MULT_P0___CMP_EQ__RS__RT____IF___NOT_P0_NEW__JUMP_T__R9_2: {
409 // p0 = cmp.eq (Rs, Rt) ; if (!p0.new) jump:t #r9:2
410 op->type = R_ANAL_OP_TYPE_CJMP;
411 op->jump = op->addr + (st32) hi->ops[2].op.imm;
412 op->fail = op->addr + op->size;
413 break;
414 }
415 case HEX_INS_MULT_P1___CMP_EQ__RS__RT____IF___NOT_P1_NEW__JUMP_T__R9_2: {
416 // p1 = cmp.eq (Rs, Rt) ; if (!p1.new) jump:t #r9:2
417 op->type = R_ANAL_OP_TYPE_CJMP;
418 op->jump = op->addr + (st32) hi->ops[2].op.imm;
419 op->fail = op->addr + op->size;
420 break;
421 }
422 case HEX_INS_MULT_P0___CMP_GT__RS__RT____IF__P0_NEW__JUMP_NT__R9_2: {
423 // p0 = cmp.gt (Rs, Rt) ; if (p0.new) jump:nt #r9:2
424 op->type = R_ANAL_OP_TYPE_CJMP;
425 op->jump = op->addr + (st32) hi->ops[2].op.imm;
426 op->fail = op->addr + op->size;
427 break;
428 }
429 case HEX_INS_MULT_P1___CMP_GT__RS__RT____IF__P1_NEW__JUMP_NT__R9_2: {
430 // p1 = cmp.gt (Rs, Rt) ; if (p1.new) jump:nt #r9:2
431 op->type = R_ANAL_OP_TYPE_CJMP;
432 op->jump = op->addr + (st32) hi->ops[2].op.imm;
433 op->fail = op->addr + op->size;
434 break;
435 }
436 case HEX_INS_MULT_P0___CMP_GT__RS__RT____IF__P0_NEW__JUMP_T__R9_2: {
437 // p0 = cmp.gt (Rs, Rt) ; if (p0.new) jump:t #r9:2
438 op->type = R_ANAL_OP_TYPE_CJMP;
439 op->jump = op->addr + (st32) hi->ops[2].op.imm;
440 op->fail = op->addr + op->size;
441 break;
442 }
443 case HEX_INS_MULT_P1___CMP_GT__RS__RT____IF__P1_NEW__JUMP_T__R9_2: {
444 // p1 = cmp.gt (Rs, Rt) ; if (p1.new) jump:t #r9:2
445 op->type = R_ANAL_OP_TYPE_CJMP;
446 op->jump = op->addr + (st32) hi->ops[2].op.imm;
447 op->fail = op->addr + op->size;
448 break;
449 }
450 case HEX_INS_MULT_P0___CMP_GT__RS__RT____IF___NOT_P0_NEW__JUMP_NT__R9_2: {
451 // p0 = cmp.gt (Rs, Rt) ; if (!p0.new) jump:nt #r9:2
452 op->type = R_ANAL_OP_TYPE_CJMP;
453 op->jump = op->addr + (st32) hi->ops[2].op.imm;
454 op->fail = op->addr + op->size;
455 break;
456 }
457 case HEX_INS_MULT_P1___CMP_GT__RS__RT____IF___NOT_P1_NEW__JUMP_NT__R9_2: {
458 // p1 = cmp.gt (Rs, Rt) ; if (!p1.new) jump:nt #r9:2
459 op->type = R_ANAL_OP_TYPE_CJMP;
460 op->jump = op->addr + (st32) hi->ops[2].op.imm;
461 op->fail = op->addr + op->size;
462 break;
463 }
464 case HEX_INS_MULT_P0___CMP_GT__RS__RT____IF___NOT_P0_NEW__JUMP_T__R9_2: {
465 // p0 = cmp.gt (Rs, Rt) ; if (!p0.new) jump:t #r9:2
466 op->type = R_ANAL_OP_TYPE_CJMP;
467 op->jump = op->addr + (st32) hi->ops[2].op.imm;
468 op->fail = op->addr + op->size;
469 break;
470 }
471 case HEX_INS_MULT_P1___CMP_GT__RS__RT____IF___NOT_P1_NEW__JUMP_T__R9_2: {
472 // p1 = cmp.gt (Rs, Rt) ; if (!p1.new) jump:t #r9:2
473 op->type = R_ANAL_OP_TYPE_CJMP;
474 op->jump = op->addr + (st32) hi->ops[2].op.imm;
475 op->fail = op->addr + op->size;
476 break;
477 }
478 case HEX_INS_MULT_P0___CMP_GTU__RS__RT____IF__P0_NEW__JUMP_NT__R9_2: {
479 // p0 = cmp.gtu (Rs, Rt) ; if (p0.new) jump:nt #r9:2
480 op->type = R_ANAL_OP_TYPE_CJMP;
481 op->jump = op->addr + (st32) hi->ops[2].op.imm;
482 op->fail = op->addr + op->size;
483 break;
484 }
485 case HEX_INS_MULT_P1___CMP_GTU__RS__RT____IF__P1_NEW__JUMP_NT__R9_2: {
486 // p1 = cmp.gtu (Rs, Rt) ; if (p1.new) jump:nt #r9:2
487 op->type = R_ANAL_OP_TYPE_CJMP;
488 op->jump = op->addr + (st32) hi->ops[2].op.imm;
489 op->fail = op->addr + op->size;
490 break;
491 }
492 case HEX_INS_MULT_P0___CMP_GTU__RS__RT____IF__P0_NEW__JUMP_T__R9_2: {
493 // p0 = cmp.gtu (Rs, Rt) ; if (p0.new) jump:t #r9:2
494 op->type = R_ANAL_OP_TYPE_CJMP;
495 op->jump = op->addr + (st32) hi->ops[2].op.imm;
496 op->fail = op->addr + op->size;
497 break;
498 }
499 case HEX_INS_MULT_P1___CMP_GTU__RS__RT____IF__P1_NEW__JUMP_T__R9_2: {
500 // p1 = cmp.gtu (Rs, Rt) ; if (p1.new) jump:t #r9:2
501 op->type = R_ANAL_OP_TYPE_CJMP;
502 op->jump = op->addr + (st32) hi->ops[2].op.imm;
503 op->fail = op->addr + op->size;
504 break;
505 }
506 case HEX_INS_MULT_P0___CMP_GTU__RS__RT____IF___NOT_P0_NEW__JUMP_NT__R9_2: {
507 // p0 = cmp.gtu (Rs, Rt) ; if (!p0.new) jump:nt #r9:2
508 op->type = R_ANAL_OP_TYPE_CJMP;
509 op->jump = op->addr + (st32) hi->ops[2].op.imm;
510 op->fail = op->addr + op->size;
511 break;
512 }
513 case HEX_INS_MULT_P1___CMP_GTU__RS__RT____IF___NOT_P1_NEW__JUMP_NT__R9_2: {
514 // p1 = cmp.gtu (Rs, Rt) ; if (!p1.new) jump:nt #r9:2
515 op->type = R_ANAL_OP_TYPE_CJMP;
516 op->jump = op->addr + (st32) hi->ops[2].op.imm;
517 op->fail = op->addr + op->size;
518 break;
519 }
520 case HEX_INS_MULT_P0___CMP_GTU__RS__RT____IF___NOT_P0_NEW__JUMP_T__R9_2: {
521 // p0 = cmp.gtu (Rs, Rt) ; if (!p0.new) jump:t #r9:2
522 op->type = R_ANAL_OP_TYPE_CJMP;
523 op->jump = op->addr + (st32) hi->ops[2].op.imm;
524 op->fail = op->addr + op->size;
525 break;
526 }
527 case HEX_INS_MULT_P1___CMP_GTU__RS__RT____IF___NOT_P1_NEW__JUMP_T__R9_2: {
528 // p1 = cmp.gtu (Rs, Rt) ; if (!p1.new) jump:t #r9:2
529 op->type = R_ANAL_OP_TYPE_CJMP;
530 op->jump = op->addr + (st32) hi->ops[2].op.imm;
531 op->fail = op->addr + op->size;
532 break;
533 }
534 case HEX_INS_JUMP__R22_2: {
535 // jump #r22:2
536 op->type = R_ANAL_OP_TYPE_JMP;
537 op->jump = op->addr + (st32) hi->ops[0].op.imm;
538 op->fail = op->addr + op->size;
539 break;
540 }
541 case HEX_INS_IF__PU__JUMP_NT__R15_2: {
542 // if (Pu) jump:nt #r15:2
543 op->type = R_ANAL_OP_TYPE_CJMP;
544 op->jump = op->addr + (st32) hi->ops[1].op.imm;
545 op->fail = op->addr + op->size;
546 break;
547 }
548 case HEX_INS_IF__PU__JUMP_T__R15_2: {
549 // if (Pu) jump:t #r15:2
550 op->type = R_ANAL_OP_TYPE_CJMP;
551 op->jump = op->addr + (st32) hi->ops[1].op.imm;
552 op->fail = op->addr + op->size;
553 break;
554 }
555 case HEX_INS_IF__NOT_PU_JUMP_NT__R15_2: {
556 // if !Pu jump:nt #r15:2
557 op->type = R_ANAL_OP_TYPE_CJMP;
558 op->jump = op->addr + (st32) hi->ops[1].op.imm;
559 op->fail = op->addr + op->size;
560 break;
561 }
562 case HEX_INS_IF__NOT_PU_JUMP_T__R15_2: {
563 // if !Pu jump:t #r15:2
564 op->type = R_ANAL_OP_TYPE_CJMP;
565 op->jump = op->addr + (st32) hi->ops[1].op.imm;
566 op->fail = op->addr + op->size;
567 break;
568 }
569 case HEX_INS_IF__PU_NEW__JUMP_NT__R15_2: {
570 // if (Pu.new) jump:nt #r15:2
571 op->type = R_ANAL_OP_TYPE_CJMP;
572 op->jump = op->addr + (st32) hi->ops[1].op.imm;
573 op->fail = op->addr + op->size;
574 break;
575 }
576 case HEX_INS_IF__PU_NEW__JUMP_T__R15_2: {
577 // if (Pu.new) jump:t #r15:2
578 op->type = R_ANAL_OP_TYPE_CJMP;
579 op->jump = op->addr + (st32) hi->ops[1].op.imm;
580 op->fail = op->addr + op->size;
581 break;
582 }
583 case HEX_INS_IF__NOT_PU_NEW_JUMP_NT__R15_2: {
584 // if !Pu.new jump:nt #r15:2
585 op->type = R_ANAL_OP_TYPE_CJMP;
586 op->jump = op->addr + (st32) hi->ops[1].op.imm;
587 op->fail = op->addr + op->size;
588 break;
589 }
590 case HEX_INS_IF__NOT_PU_NEW_JUMP_T__R15_2: {
591 // if !Pu.new jump:t #r15:2
592 op->type = R_ANAL_OP_TYPE_CJMP;
593 op->jump = op->addr + (st32) hi->ops[1].op.imm;
594 op->fail = op->addr + op->size;
595 break;
596 }
597 case HEX_INS_IF__RS__NOT____0__JUMP_NT__R13_2: {
598 // if (Rs != #0) jump:nt #r13:2
599 op->type = R_ANAL_OP_TYPE_CJMP;
600 op->jump = op->addr + (st32) hi->ops[1].op.imm;
601 op->fail = op->addr + op->size;
602 break;
603 }
604 case HEX_INS_IF__RS__NOT____0__JUMP_T__R13_2: {
605 // if (Rs != #0) jump:t #r13:2
606 op->type = R_ANAL_OP_TYPE_CJMP;
607 op->jump = op->addr + (st32) hi->ops[1].op.imm;
608 op->fail = op->addr + op->size;
609 break;
610 }
611 case HEX_INS_IF__RS_GT_EQ___0__JUMP_NT__R13_2: {
612 // if (Rs> = #0) jump:nt #r13:2
613 op->type = R_ANAL_OP_TYPE_CJMP;
614 op->jump = op->addr + (st32) hi->ops[1].op.imm;
615 op->fail = op->addr + op->size;
616 break;
617 }
618 case HEX_INS_IF__RS_GT_EQ___0__JUMP_T__R13_2: {
619 // if (Rs> = #0) jump:t #r13:2
620 op->type = R_ANAL_OP_TYPE_CJMP;
621 op->jump = op->addr + (st32) hi->ops[1].op.imm;
622 op->fail = op->addr + op->size;
623 break;
624 }
625 case HEX_INS_IF__RS__EQ___0__JUMP_NT__R13_2: {
626 // if (Rs == #0) jump:nt #r13:2
627 op->type = R_ANAL_OP_TYPE_CJMP;
628 op->jump = op->addr + (st32) hi->ops[1].op.imm;
629 op->fail = op->addr + op->size;
630 break;
631 }
632 case HEX_INS_IF__RS__EQ___0__JUMP_T__R13_2: {
633 // if (Rs == #0) jump:t #r13:2
634 op->type = R_ANAL_OP_TYPE_CJMP;
635 op->jump = op->addr + (st32) hi->ops[1].op.imm;
636 op->fail = op->addr + op->size;
637 break;
638 }
639 case HEX_INS_IF__RS_LT_EQ___0__JUMP_NT__R13_2: {
640 // if (Rs< = #0) jump:nt #r13:2
641 op->type = R_ANAL_OP_TYPE_CJMP;
642 op->jump = op->addr + (st32) hi->ops[1].op.imm;
643 op->fail = op->addr + op->size;
644 break;
645 }
646 case HEX_INS_IF__RS_LT_EQ___0__JUMP_T__R13_2: {
647 // if (Rs< = #0) jump:t #r13:2
648 op->type = R_ANAL_OP_TYPE_CJMP;
649 op->jump = op->addr + (st32) hi->ops[1].op.imm;
650 op->fail = op->addr + op->size;
651 break;
652 }
653 case HEX_INS_MULT_RD____U6___JUMP__R9_2: {
654 // Rd = #U6 ; jump #r9:2
655 op->type = R_ANAL_OP_TYPE_JMP;
656 op->jump = op->addr + (st32) hi->ops[2].op.imm;
657 op->fail = op->addr + op->size;
658 break;
659 }
660 case HEX_INS_MULT_RD___RS___JUMP__R9_2: {
661 // Rd = Rs ; jump #r9:2
662 op->type = R_ANAL_OP_TYPE_JMP;
663 op->jump = op->addr + (st32) hi->ops[2].op.imm;
664 op->fail = op->addr + op->size;
665 break;
666 }
667 case HEX_INS_DEALLOC_RETURN: {
668 // dealloc_return
669 op->type = R_ANAL_OP_TYPE_RET;
670 break;
671 }
672 case HEX_INS_IF__PS_NEW__DEALLOC_RETURN_NT: {
673 // if (Ps.new) dealloc_return:nt
674 op->type = R_ANAL_OP_TYPE_RET;
675 break;
676 }
677 case HEX_INS_IF__PS__DEALLOC_RETURN: {
678 // if (Ps) dealloc_return
679 op->type = R_ANAL_OP_TYPE_RET;
680 break;
681 }
682 case HEX_INS_IF__PS_NEW__DEALLOC_RETURN_T: {
683 // if (Ps.new) dealloc_return:t
684 op->type = R_ANAL_OP_TYPE_RET;
685 break;
686 }
687 case HEX_INS_IF__NOT_PS_NEW_DEALLOC_RETURN_NT: {
688 // if !Ps.new dealloc_return:nt
689 op->type = R_ANAL_OP_TYPE_RET;
690 break;
691 }
692 case HEX_INS_IF__NOT_PS_DEALLOC_RETURN: {
693 // if !Ps dealloc_return
694 op->type = R_ANAL_OP_TYPE_RET;
695 break;
696 }
697 case HEX_INS_IF__NOT_PS_NEW_DEALLOC_RETURN_T: {
698 // if !Ps.new dealloc_return:t
699 op->type = R_ANAL_OP_TYPE_RET;
700 break;
701 }
702 case HEX_INS_IF__CMP_EQ__NS_NEW__RT___JUMP_NT__R9_2: {
703 // if (cmp.eq (Ns.new, Rt)) jump:nt #r9:2
704 op->type = R_ANAL_OP_TYPE_CJMP;
705 op->jump = op->addr + (st32) hi->ops[2].op.imm;
706 op->fail = op->addr + op->size;
707 break;
708 }
709 case HEX_INS_IF__CMP_EQ__NS_NEW__RT___JUMP_T__R9_2: {
710 // if (cmp.eq (Ns.new, Rt)) jump:t #r9:2
711 op->type = R_ANAL_OP_TYPE_CJMP;
712 op->jump = op->addr + (st32) hi->ops[2].op.imm;
713 op->fail = op->addr + op->size;
714 break;
715 }
716 case HEX_INS_IF___NOT_CMP_EQ__NS_NEW__RT___JUMP_NT__R9_2: {
717 // if (!cmp.eq (Ns.new, Rt)) jump:nt #r9:2
718 op->type = R_ANAL_OP_TYPE_CJMP;
719 op->jump = op->addr + (st32) hi->ops[2].op.imm;
720 op->fail = op->addr + op->size;
721 break;
722 }
723 case HEX_INS_IF___NOT_CMP_EQ__NS_NEW__RT___JUMP_T__R9_2: {
724 // if (!cmp.eq (Ns.new, Rt)) jump:t #r9:2
725 op->type = R_ANAL_OP_TYPE_CJMP;
726 op->jump = op->addr + (st32) hi->ops[2].op.imm;
727 op->fail = op->addr + op->size;
728 break;
729 }
730 case HEX_INS_IF__CMP_GT__NS_NEW__RT___JUMP_NT__R9_2: {
731 // if (cmp.gt (Ns.new, Rt)) jump:nt #r9:2
732 op->type = R_ANAL_OP_TYPE_CJMP;
733 op->jump = op->addr + (st32) hi->ops[2].op.imm;
734 op->fail = op->addr + op->size;
735 break;
736 }
737 case HEX_INS_IF__CMP_GT__NS_NEW__RT___JUMP_T__R9_2: {
738 // if (cmp.gt (Ns.new, Rt)) jump:t #r9:2
739 op->type = R_ANAL_OP_TYPE_CJMP;
740 op->jump = op->addr + (st32) hi->ops[2].op.imm;
741 op->fail = op->addr + op->size;
742 break;
743 }
744 case HEX_INS_IF___NOT_CMP_GT__NS_NEW__RT___JUMP_NT__R9_2: {
745 // if (!cmp.gt (Ns.new, Rt)) jump:nt #r9:2
746 op->type = R_ANAL_OP_TYPE_CJMP;
747 op->jump = op->addr + (st32) hi->ops[2].op.imm;
748 op->fail = op->addr + op->size;
749 break;
750 }
751 case HEX_INS_IF___NOT_CMP_GT__NS_NEW__RT___JUMP_T__R9_2: {
752 // if (!cmp.gt (Ns.new, Rt)) jump:t #r9:2
753 op->type = R_ANAL_OP_TYPE_CJMP;
754 op->jump = op->addr + (st32) hi->ops[2].op.imm;
755 op->fail = op->addr + op->size;
756 break;
757 }
758 case HEX_INS_IF__CMP_GTU__NS_NEW__RT___JUMP_NT__R9_2: {
759 // if (cmp.gtu (Ns.new, Rt)) jump:nt #r9:2
760 op->type = R_ANAL_OP_TYPE_CJMP;
761 op->jump = op->addr + (st32) hi->ops[2].op.imm;
762 op->fail = op->addr + op->size;
763 break;
764 }
765 case HEX_INS_IF__CMP_GTU__NS_NEW__RT___JUMP_T__R9_2: {
766 // if (cmp.gtu (Ns.new, Rt)) jump:t #r9:2
767 op->type = R_ANAL_OP_TYPE_CJMP;
768 op->jump = op->addr + (st32) hi->ops[2].op.imm;
769 op->fail = op->addr + op->size;
770 break;
771 }
772 case HEX_INS_IF___NOT_CMP_GTU__NS_NEW__RT___JUMP_NT__R9_2: {
773 // if (!cmp.gtu (Ns.new, Rt)) jump:nt #r9:2
774 op->type = R_ANAL_OP_TYPE_CJMP;
775 op->jump = op->addr + (st32) hi->ops[2].op.imm;
776 op->fail = op->addr + op->size;
777 break;
778 }
779 case HEX_INS_IF___NOT_CMP_GTU__NS_NEW__RT___JUMP_T__R9_2: {
780 // if (!cmp.gtu (Ns.new, Rt)) jump:t #r9:2
781 op->type = R_ANAL_OP_TYPE_CJMP;
782 op->jump = op->addr + (st32) hi->ops[2].op.imm;
783 op->fail = op->addr + op->size;
784 break;
785 }
786 case HEX_INS_IF__CMP_GT__RT__NS_NEW___JUMP_NT__R9_2: {
787 // if (cmp.gt (Rt, Ns.new)) jump:nt #r9:2
788 op->type = R_ANAL_OP_TYPE_CJMP;
789 op->jump = op->addr + (st32) hi->ops[2].op.imm;
790 op->fail = op->addr + op->size;
791 break;
792 }
793 case HEX_INS_IF__CMP_GT__RT__NS_NEW___JUMP_T__R9_2: {
794 // if (cmp.gt (Rt, Ns.new)) jump:t #r9:2
795 op->type = R_ANAL_OP_TYPE_CJMP;
796 op->jump = op->addr + (st32) hi->ops[2].op.imm;
797 op->fail = op->addr + op->size;
798 break;
799 }
800 case HEX_INS_IF___NOT_CMP_GT__RT__NS_NEW___JUMP_NT__R9_2: {
801 // if (!cmp.gt (Rt, Ns.new)) jump:nt #r9:2
802 op->type = R_ANAL_OP_TYPE_CJMP;
803 op->jump = op->addr + (st32) hi->ops[2].op.imm;
804 op->fail = op->addr + op->size;
805 break;
806 }
807 case HEX_INS_IF___NOT_CMP_GT__RT__NS_NEW___JUMP_T__R9_2: {
808 // if (!cmp.gt (Rt, Ns.new)) jump:t #r9:2
809 op->type = R_ANAL_OP_TYPE_CJMP;
810 op->jump = op->addr + (st32) hi->ops[2].op.imm;
811 op->fail = op->addr + op->size;
812 break;
813 }
814 case HEX_INS_IF__CMP_GTU__RT__NS_NEW___JUMP_NT__R9_2: {
815 // if (cmp.gtu (Rt, Ns.new)) jump:nt #r9:2
816 op->type = R_ANAL_OP_TYPE_CJMP;
817 op->jump = op->addr + (st32) hi->ops[2].op.imm;
818 op->fail = op->addr + op->size;
819 break;
820 }
821 case HEX_INS_IF__CMP_GTU__RT__NS_NEW___JUMP_T__R9_2: {
822 // if (cmp.gtu (Rt, Ns.new)) jump:t #r9:2
823 op->type = R_ANAL_OP_TYPE_CJMP;
824 op->jump = op->addr + (st32) hi->ops[2].op.imm;
825 op->fail = op->addr + op->size;
826 break;
827 }
828 case HEX_INS_IF___NOT_CMP_GTU__RT__NS_NEW___JUMP_NT__R9_2: {
829 // if (!cmp.gtu (Rt, Ns.new)) jump:nt #r9:2
830 op->type = R_ANAL_OP_TYPE_CJMP;
831 op->jump = op->addr + (st32) hi->ops[2].op.imm;
832 op->fail = op->addr + op->size;
833 break;
834 }
835 case HEX_INS_IF___NOT_CMP_GTU__RT__NS_NEW___JUMP_T__R9_2: {
836 // if (!cmp.gtu (Rt, Ns.new)) jump:t #r9:2
837 op->type = R_ANAL_OP_TYPE_CJMP;
838 op->jump = op->addr + (st32) hi->ops[2].op.imm;
839 op->fail = op->addr + op->size;
840 break;
841 }
842 case HEX_INS_IF__CMP_EQ__NS_NEW___U5___JUMP_NT__R9_2: {
843 // if (cmp.eq (Ns.new, #U5)) jump:nt #r9:2
844 op->type = R_ANAL_OP_TYPE_CJMP;
845 op->jump = op->addr + (st32) hi->ops[2].op.imm;
846 op->fail = op->addr + op->size;
847 break;
848 }
849 case HEX_INS_IF__CMP_EQ__NS_NEW___U5___JUMP_T__R9_2: {
850 // if (cmp.eq (Ns.new, #U5)) jump:t #r9:2
851 op->type = R_ANAL_OP_TYPE_CJMP;
852 op->jump = op->addr + (st32) hi->ops[2].op.imm;
853 op->fail = op->addr + op->size;
854 break;
855 }
856 case HEX_INS_IF___NOT_CMP_EQ__NS_NEW___U5___JUMP_NT__R9_2: {
857 // if (!cmp.eq (Ns.new, #U5)) jump:nt #r9:2
858 op->type = R_ANAL_OP_TYPE_CJMP;
859 op->jump = op->addr + (st32) hi->ops[2].op.imm;
860 op->fail = op->addr + op->size;
861 break;
862 }
863 case HEX_INS_IF___NOT_CMP_EQ__NS_NEW___U5___JUMP_T__R9_2: {
864 // if (!cmp.eq (Ns.new, #U5)) jump:t #r9:2
865 op->type = R_ANAL_OP_TYPE_CJMP;
866 op->jump = op->addr + (st32) hi->ops[2].op.imm;
867 op->fail = op->addr + op->size;
868 break;
869 }
870 case HEX_INS_IF__CMP_GT__NS_NEW___U5___JUMP_NT__R9_2: {
871 // if (cmp.gt (Ns.new, #U5)) jump:nt #r9:2
872 op->type = R_ANAL_OP_TYPE_CJMP;
873 op->jump = op->addr + (st32) hi->ops[2].op.imm;
874 op->fail = op->addr + op->size;
875 break;
876 }
877 case HEX_INS_IF__CMP_GT__NS_NEW___U5___JUMP_T__R9_2: {
878 // if (cmp.gt (Ns.new, #U5)) jump:t #r9:2
879 op->type = R_ANAL_OP_TYPE_CJMP;
880 op->jump = op->addr + (st32) hi->ops[2].op.imm;
881 op->fail = op->addr + op->size;
882 break;
883 }
884 case HEX_INS_IF___NOT_CMP_GT__NS_NEW___U5___JUMP_NT__R9_2: {
885 // if (!cmp.gt (Ns.new, #U5)) jump:nt #r9:2
886 op->type = R_ANAL_OP_TYPE_CJMP;
887 op->jump = op->addr + (st32) hi->ops[2].op.imm;
888 op->fail = op->addr + op->size;
889 break;
890 }
891 case HEX_INS_IF___NOT_CMP_GT__NS_NEW___U5___JUMP_T__R9_2: {
892 // if (!cmp.gt (Ns.new, #U5)) jump:t #r9:2
893 op->type = R_ANAL_OP_TYPE_CJMP;
894 op->jump = op->addr + (st32) hi->ops[2].op.imm;
895 op->fail = op->addr + op->size;
896 break;
897 }
898 case HEX_INS_IF__CMP_GTU__NS_NEW___U5___JUMP_NT__R9_2: {
899 // if (cmp.gtu (Ns.new, #U5)) jump:nt #r9:2
900 op->type = R_ANAL_OP_TYPE_CJMP;
901 op->jump = op->addr + (st32) hi->ops[2].op.imm;
902 op->fail = op->addr + op->size;
903 break;
904 }
905 case HEX_INS_IF__CMP_GTU__NS_NEW___U5___JUMP_T__R9_2: {
906 // if (cmp.gtu (Ns.new, #U5)) jump:t #r9:2
907 op->type = R_ANAL_OP_TYPE_CJMP;
908 op->jump = op->addr + (st32) hi->ops[2].op.imm;
909 op->fail = op->addr + op->size;
910 break;
911 }
912 case HEX_INS_IF___NOT_CMP_GTU__NS_NEW___U5___JUMP_NT__R9_2: {
913 // if (!cmp.gtu (Ns.new, #U5)) jump:nt #r9:2
914 op->type = R_ANAL_OP_TYPE_CJMP;
915 op->jump = op->addr + (st32) hi->ops[2].op.imm;
916 op->fail = op->addr + op->size;
917 break;
918 }
919 case HEX_INS_IF___NOT_CMP_GTU__NS_NEW___U5___JUMP_T__R9_2: {
920 // if (!cmp.gtu (Ns.new, #U5)) jump:t #r9:2
921 op->type = R_ANAL_OP_TYPE_CJMP;
922 op->jump = op->addr + (st32) hi->ops[2].op.imm;
923 op->fail = op->addr + op->size;
924 break;
925 }
926 case HEX_INS_IF__TSTBIT__NS_NEW___0___JUMP_NT__R9_2: {
927 // if (tstbit (Ns.new, #0)) jump:nt #r9:2
928 op->type = R_ANAL_OP_TYPE_CJMP;
929 op->jump = op->addr + (st32) hi->ops[1].op.imm;
930 op->fail = op->addr + op->size;
931 break;
932 }
933 case HEX_INS_IF__TSTBIT__NS_NEW___0___JUMP_T__R9_2: {
934 // if (tstbit (Ns.new, #0)) jump:t #r9:2
935 op->type = R_ANAL_OP_TYPE_CJMP;
936 op->jump = op->addr + (st32) hi->ops[1].op.imm;
937 op->fail = op->addr + op->size;
938 break;
939 }
940 case HEX_INS_IF___NOT_TSTBIT__NS_NEW___0___JUMP_NT__R9_2: {
941 // if (!tstbit (Ns.new, #0)) jump:nt #r9:2
942 op->type = R_ANAL_OP_TYPE_CJMP;
943 op->jump = op->addr + (st32) hi->ops[1].op.imm;
944 op->fail = op->addr + op->size;
945 break;
946 }
947 case HEX_INS_IF___NOT_TSTBIT__NS_NEW___0___JUMP_T__R9_2: {
948 // if (!tstbit (Ns.new, #0)) jump:t #r9:2
949 op->type = R_ANAL_OP_TYPE_CJMP;
950 op->jump = op->addr + (st32) hi->ops[1].op.imm;
951 op->fail = op->addr + op->size;
952 break;
953 }
954 case HEX_INS_IF__CMP_EQ__NS_NEW____1___JUMP_NT__R9_2: {
955 // if (cmp.eq (Ns.new, #-1)) jump:nt #r9:2
956 op->type = R_ANAL_OP_TYPE_CJMP;
957 op->jump = op->addr + (st32) hi->ops[1].op.imm;
958 op->fail = op->addr + op->size;
959 break;
960 }
961 case HEX_INS_IF__CMP_EQ__NS_NEW____1___JUMP_T__R9_2: {
962 // if (cmp.eq (Ns.new, #-1)) jump:t #r9:2
963 op->type = R_ANAL_OP_TYPE_CJMP;
964 op->jump = op->addr + (st32) hi->ops[1].op.imm;
965 op->fail = op->addr + op->size;
966 break;
967 }
968 case HEX_INS_IF___NOT_CMP_EQ__NS_NEW____1___JUMP_NT__R9_2: {
969 // if (!cmp.eq (Ns.new, #-1)) jump:nt #r9:2
970 op->type = R_ANAL_OP_TYPE_CJMP;
971 op->jump = op->addr + (st32) hi->ops[1].op.imm;
972 op->fail = op->addr + op->size;
973 break;
974 }
975 case HEX_INS_IF___NOT_CMP_EQ__NS_NEW____1___JUMP_T__R9_2: {
976 // if (!cmp.eq (Ns.new, #-1)) jump:t #r9:2
977 op->type = R_ANAL_OP_TYPE_CJMP;
978 op->jump = op->addr + (st32) hi->ops[1].op.imm;
979 op->fail = op->addr + op->size;
980 break;
981 }
982 case HEX_INS_IF__CMP_GT__NS_NEW____1___JUMP_NT__R9_2: {
983 // if (cmp.gt (Ns.new, #-1)) jump:nt #r9:2
984 op->type = R_ANAL_OP_TYPE_CJMP;
985 op->jump = op->addr + (st32) hi->ops[1].op.imm;
986 op->fail = op->addr + op->size;
987 break;
988 }
989 case HEX_INS_IF__CMP_GT__NS_NEW____1___JUMP_T__R9_2: {
990 // if (cmp.gt (Ns.new, #-1)) jump:t #r9:2
991 op->type = R_ANAL_OP_TYPE_CJMP;
992 op->jump = op->addr + (st32) hi->ops[1].op.imm;
993 op->fail = op->addr + op->size;
994 break;
995 }
996 case HEX_INS_IF___NOT_CMP_GT__NS_NEW____1___JUMP_NT__R9_2: {
997 // if (!cmp.gt (Ns.new, #-1)) jump:nt #r9:2
998 op->type = R_ANAL_OP_TYPE_CJMP;
999 op->jump = op->addr + (st32) hi->ops[1].op.imm;
1000 op->fail = op->addr + op->size;
1001 break;
1002 }
1003 case HEX_INS_IF___NOT_CMP_GT__NS_NEW____1___JUMP_T__R9_2: {
1004 // if (!cmp.gt (Ns.new, #-1)) jump:t #r9:2
1005 op->type = R_ANAL_OP_TYPE_CJMP;
1006 op->jump = op->addr + (st32) hi->ops[1].op.imm;
1007 op->fail = op->addr + op->size;
1008 break;
1009 }
1010 case HEX_INS_DUPLEX_RD_____1___DEALLOC_RETURN: {
1011 // Rd = #-1 ; dealloc_return
1012 op->type = R_ANAL_OP_TYPE_RET;
1013 break;
1014 }
1015 case HEX_INS_DUPLEX_RD_____1___IF___NOT__P0__DEALLOC_RETURN: {
1016 // Rd = #-1 ; if (! p0) dealloc_return
1017 op->type = R_ANAL_OP_TYPE_RET;
1018 break;
1019 }
1020 case HEX_INS_DUPLEX_RD_____1___IF___NOT__P0_NEW__DEALLOC_RETURN_NT: {
1021 // Rd = #-1 ; if (! p0.new) dealloc_return:nt
1022 op->type = R_ANAL_OP_TYPE_RET;
1023 break;
1024 }
1025 case HEX_INS_DUPLEX_RD_____1___IF__P0__DEALLOC_RETURN: {
1026 // Rd = #-1 ; if (p0) dealloc_return
1027 op->type = R_ANAL_OP_TYPE_RET;
1028 break;
1029 }
1030 case HEX_INS_DUPLEX_RD_____1___IF__P0_NEW__DEALLOC_RETURN_NT: {
1031 // Rd = #-1 ; if (p0.new) dealloc_return:nt
1032 op->type = R_ANAL_OP_TYPE_RET;
1033 break;
1034 }
1035 case HEX_INS_DUPLEX_RD____U6___DEALLOC_RETURN: {
1036 // Rd = #u6 ; dealloc_return
1037 op->type = R_ANAL_OP_TYPE_RET;
1038 break;
1039 }
1040 case HEX_INS_DUPLEX_RD____U6___IF___NOT__P0__DEALLOC_RETURN: {
1041 // Rd = #u6 ; if (! p0) dealloc_return
1042 op->type = R_ANAL_OP_TYPE_RET;
1043 break;
1044 }
1045 case HEX_INS_DUPLEX_RD____U6___IF___NOT__P0_NEW__DEALLOC_RETURN_NT: {
1046 // Rd = #u6 ; if (! p0.new) dealloc_return:nt
1047 op->type = R_ANAL_OP_TYPE_RET;
1048 break;
1049 }
1050 case HEX_INS_DUPLEX_RD____U6___IF__P0__DEALLOC_RETURN: {
1051 // Rd = #u6 ; if (p0) dealloc_return
1052 op->type = R_ANAL_OP_TYPE_RET;
1053 break;
1054 }
1055 case HEX_INS_DUPLEX_RD____U6___IF__P0_NEW__DEALLOC_RETURN_NT: {
1056 // Rd = #u6 ; if (p0.new) dealloc_return:nt
1057 op->type = R_ANAL_OP_TYPE_RET;
1058 break;
1059 }
1060 case HEX_INS_DUPLEX_RD___RS___DEALLOC_RETURN: {
1061 // Rd = Rs ; dealloc_return
1062 op->type = R_ANAL_OP_TYPE_RET;
1063 break;
1064 }
1065 case HEX_INS_DUPLEX_RD___RS___IF___NOT__P0__DEALLOC_RETURN: {
1066 // Rd = Rs ; if (! p0) dealloc_return
1067 op->type = R_ANAL_OP_TYPE_RET;
1068 break;
1069 }
1070 case HEX_INS_DUPLEX_RD___RS___IF___NOT__P0_NEW__DEALLOC_RETURN_NT: {
1071 // Rd = Rs ; if (! p0.new) dealloc_return:nt
1072 op->type = R_ANAL_OP_TYPE_RET;
1073 break;
1074 }
1075 case HEX_INS_DUPLEX_RD___RS___IF__P0__DEALLOC_RETURN: {
1076 // Rd = Rs ; if (p0) dealloc_return
1077 op->type = R_ANAL_OP_TYPE_RET;
1078 break;
1079 }
1080 case HEX_INS_DUPLEX_RD___RS___IF__P0_NEW__DEALLOC_RETURN_NT: {
1081 // Rd = Rs ; if (p0.new) dealloc_return:nt
1082 op->type = R_ANAL_OP_TYPE_RET;
1083 break;
1084 }
1085 case HEX_INS_DUPLEX_RD___ADD__RS____1____DEALLOC_RETURN: {
1086 // Rd = add (Rs, #-1) ; dealloc_return
1087 op->type = R_ANAL_OP_TYPE_RET;
1088 break;
1089 }
1090 case HEX_INS_DUPLEX_RD___ADD__RS____1____IF___NOT__P0__DEALLOC_RETURN: {
1091 // Rd = add (Rs, #-1) ; if (! p0) dealloc_return
1092 op->type = R_ANAL_OP_TYPE_RET;
1093 break;
1094 }
1095 case HEX_INS_DUPLEX_RD___ADD__RS____1____IF___NOT__P0_NEW__DEALLOC_RETURN_NT: {
1096 // Rd = add (Rs, #-1) ; if (! p0.new) dealloc_return:nt
1097 op->type = R_ANAL_OP_TYPE_RET;
1098 break;
1099 }
1100 case HEX_INS_DUPLEX_RD___ADD__RS____1____IF__P0__DEALLOC_RETURN: {
1101 // Rd = add (Rs, #-1) ; if (p0) dealloc_return
1102 op->type = R_ANAL_OP_TYPE_RET;
1103 break;
1104 }
1105 case HEX_INS_DUPLEX_RD___ADD__RS____1____IF__P0_NEW__DEALLOC_RETURN_NT: {
1106 // Rd = add (Rs, #-1) ; if (p0.new) dealloc_return:nt
1107 op->type = R_ANAL_OP_TYPE_RET;
1108 break;
1109 }
1110 case HEX_INS_DUPLEX_RD___ADD__RS___1____DEALLOC_RETURN: {
1111 // Rd = add (Rs, #1) ; dealloc_return
1112 op->type = R_ANAL_OP_TYPE_RET;
1113 break;
1114 }
1115 case HEX_INS_DUPLEX_RD___ADD__RS___1____IF___NOT__P0__DEALLOC_RETURN: {
1116 // Rd = add (Rs, #1) ; if (! p0) dealloc_return
1117 op->type = R_ANAL_OP_TYPE_RET;
1118 break;
1119 }
1120 case HEX_INS_DUPLEX_RD___ADD__RS___1____IF___NOT__P0_NEW__DEALLOC_RETURN_NT: {
1121 // Rd = add (Rs, #1) ; if (! p0.new) dealloc_return:nt
1122 op->type = R_ANAL_OP_TYPE_RET;
1123 break;
1124 }
1125 case HEX_INS_DUPLEX_RD___ADD__RS___1____IF__P0__DEALLOC_RETURN: {
1126 // Rd = add (Rs, #1) ; if (p0) dealloc_return
1127 op->type = R_ANAL_OP_TYPE_RET;
1128 break;
1129 }
1130 case HEX_INS_DUPLEX_RD___ADD__RS___1____IF__P0_NEW__DEALLOC_RETURN_NT: {
1131 // Rd = add (Rs, #1) ; if (p0.new) dealloc_return:nt
1132 op->type = R_ANAL_OP_TYPE_RET;
1133 break;
1134 }
1135 case HEX_INS_DUPLEX_RD___ADD__SP___U6_2____DEALLOC_RETURN: {
1136 // Rd = add (Sp, #u6:2) ; dealloc_return
1137 op->type = R_ANAL_OP_TYPE_RET;
1138 break;
1139 }
1140 case HEX_INS_DUPLEX_RD___ADD__SP___U6_2____IF___NOT__P0__DEALLOC_RETURN: {
1141 // Rd = add (Sp, #u6:2) ; if (! p0) dealloc_return
1142 op->type = R_ANAL_OP_TYPE_RET;
1143 break;
1144 }
1145 case HEX_INS_DUPLEX_RD___ADD__SP___U6_2____IF___NOT__P0_NEW__DEALLOC_RETURN_NT: {
1146 // Rd = add (Sp, #u6:2) ; if (! p0.new) dealloc_return:nt
1147 op->type = R_ANAL_OP_TYPE_RET;
1148 break;
1149 }
1150 case HEX_INS_DUPLEX_RD___ADD__SP___U6_2____IF__P0__DEALLOC_RETURN: {
1151 // Rd = add (Sp, #u6:2) ; if (p0) dealloc_return
1152 op->type = R_ANAL_OP_TYPE_RET;
1153 break;
1154 }
1155 case HEX_INS_DUPLEX_RD___ADD__SP___U6_2____IF__P0_NEW__DEALLOC_RETURN_NT: {
1156 // Rd = add (Sp, #u6:2) ; if (p0.new) dealloc_return:nt
1157 op->type = R_ANAL_OP_TYPE_RET;
1158 break;
1159 }
1160 case HEX_INS_DUPLEX_RD___AND__RS___1____DEALLOC_RETURN: {
1161 // Rd = and (Rs, #1) ; dealloc_return
1162 op->type = R_ANAL_OP_TYPE_RET;
1163 break;
1164 }
1165 case HEX_INS_DUPLEX_RD___AND__RS___1____IF___NOT__P0__DEALLOC_RETURN: {
1166 // Rd = and (Rs, #1) ; if (! p0) dealloc_return
1167 op->type = R_ANAL_OP_TYPE_RET;
1168 break;
1169 }
1170 case HEX_INS_DUPLEX_RD___AND__RS___1____IF___NOT__P0_NEW__DEALLOC_RETURN_NT: {
1171 // Rd = and (Rs, #1) ; if (! p0.new) dealloc_return:nt
1172 op->type = R_ANAL_OP_TYPE_RET;
1173 break;
1174 }
1175 case HEX_INS_DUPLEX_RD___AND__RS___1____IF__P0__DEALLOC_RETURN: {
1176 // Rd = and (Rs, #1) ; if (p0) dealloc_return
1177 op->type = R_ANAL_OP_TYPE_RET;
1178 break;
1179 }
1180 case HEX_INS_DUPLEX_RD___AND__RS___1____IF__P0_NEW__DEALLOC_RETURN_NT: {
1181 // Rd = and (Rs, #1) ; if (p0.new) dealloc_return:nt
1182 op->type = R_ANAL_OP_TYPE_RET;
1183 break;
1184 }
1185 case HEX_INS_DUPLEX_RD___AND__RS___255____DEALLOC_RETURN: {
1186 // Rd = and (Rs, #255) ; dealloc_return
1187 op->type = R_ANAL_OP_TYPE_RET;
1188 break;
1189 }
1190 case HEX_INS_DUPLEX_RD___AND__RS___255____IF___NOT__P0__DEALLOC_RETURN: {
1191 // Rd = and (Rs, #255) ; if (! p0) dealloc_return
1192 op->type = R_ANAL_OP_TYPE_RET;
1193 break;
1194 }
1195 case HEX_INS_DUPLEX_RD___AND__RS___255____IF___NOT__P0_NEW__DEALLOC_RETURN_NT: {
1196 // Rd = and (Rs, #255) ; if (! p0.new) dealloc_return:nt
1197 op->type = R_ANAL_OP_TYPE_RET;
1198 break;
1199 }
1200 case HEX_INS_DUPLEX_RD___AND__RS___255____IF__P0__DEALLOC_RETURN: {
1201 // Rd = and (Rs, #255) ; if (p0) dealloc_return
1202 op->type = R_ANAL_OP_TYPE_RET;
1203 break;
1204 }
1205 case HEX_INS_DUPLEX_RD___AND__RS___255____IF__P0_NEW__DEALLOC_RETURN_NT: {
1206 // Rd = and (Rs, #255) ; if (p0.new) dealloc_return:nt
1207 op->type = R_ANAL_OP_TYPE_RET;
1208 break;
1209 }
1210 case HEX_INS_DUPLEX_RD___MEMB__RS____U3_0____DEALLOC_RETURN: {
1211 // Rd = memb (Rs + #u3:0) ; dealloc_return
1212 op->type = R_ANAL_OP_TYPE_RET;
1213 break;
1214 }
1215 case HEX_INS_DUPLEX_RD___MEMB__RS____U3_0____IF___NOT__P0__DEALLOC_RETURN: {
1216 // Rd = memb (Rs + #u3:0) ; if (! p0) dealloc_return
1217 op->type = R_ANAL_OP_TYPE_RET;
1218 break;
1219 }
1220 case HEX_INS_DUPLEX_RD___MEMB__RS____U3_0____IF___NOT__P0_NEW__DEALLOC_RETURN_NT: {
1221 // Rd = memb (Rs + #u3:0) ; if (! p0.new) dealloc_return:nt
1222 op->type = R_ANAL_OP_TYPE_RET;
1223 break;
1224 }
1225 case HEX_INS_DUPLEX_RD___MEMB__RS____U3_0____IF__P0__DEALLOC_RETURN: {
1226 // Rd = memb (Rs + #u3:0) ; if (p0) dealloc_return
1227 op->type = R_ANAL_OP_TYPE_RET;
1228 break;
1229 }
1230 case HEX_INS_DUPLEX_RD___MEMB__RS____U3_0____IF__P0_NEW__DEALLOC_RETURN_NT: {
1231 // Rd = memb (Rs + #u3:0) ; if (p0.new) dealloc_return:nt
1232 op->type = R_ANAL_OP_TYPE_RET;
1233 break;
1234 }
1235 case HEX_INS_DUPLEX_RD___MEMH__RS____U3_1____DEALLOC_RETURN: {
1236 // Rd = memh (Rs + #u3:1) ; dealloc_return
1237 op->type = R_ANAL_OP_TYPE_RET;
1238 break;
1239 }
1240 case HEX_INS_DUPLEX_RD___MEMH__RS____U3_1____IF___NOT__P0__DEALLOC_RETURN: {
1241 // Rd = memh (Rs + #u3:1) ; if (! p0) dealloc_return
1242 op->type = R_ANAL_OP_TYPE_RET;
1243 break;
1244 }
1245 case HEX_INS_DUPLEX_RD___MEMH__RS____U3_1____IF___NOT__P0_NEW__DEALLOC_RETURN_NT: {
1246 // Rd = memh (Rs + #u3:1) ; if (! p0.new) dealloc_return:nt
1247 op->type = R_ANAL_OP_TYPE_RET;
1248 break;
1249 }
1250 case HEX_INS_DUPLEX_RD___MEMH__RS____U3_1____IF__P0__DEALLOC_RETURN: {
1251 // Rd = memh (Rs + #u3:1) ; if (p0) dealloc_return
1252 op->type = R_ANAL_OP_TYPE_RET;
1253 break;
1254 }
1255 case HEX_INS_DUPLEX_RD___MEMH__RS____U3_1____IF__P0_NEW__DEALLOC_RETURN_NT: {
1256 // Rd = memh (Rs + #u3:1) ; if (p0.new) dealloc_return:nt
1257 op->type = R_ANAL_OP_TYPE_RET;
1258 break;
1259 }
1260 case HEX_INS_DUPLEX_RD___MEMUB__RS____U4_0____DEALLOC_RETURN: {
1261 // Rd = memub (Rs + #u4:0) ; dealloc_return
1262 op->type = R_ANAL_OP_TYPE_RET;
1263 break;
1264 }
1265 case HEX_INS_DUPLEX_RD___MEMUB__RS____U4_0____IF___NOT__P0__DEALLOC_RETURN: {
1266 // Rd = memub (Rs + #u4:0) ; if (! p0) dealloc_return
1267 op->type = R_ANAL_OP_TYPE_RET;
1268 break;
1269 }
1270 case HEX_INS_DUPLEX_RD___MEMUB__RS____U4_0____IF___NOT__P0_NEW__DEALLOC_RETURN_NT: {
1271 // Rd = memub (Rs + #u4:0) ; if (! p0.new) dealloc_return:nt
1272 op->type = R_ANAL_OP_TYPE_RET;
1273 break;
1274 }
1275 case HEX_INS_DUPLEX_RD___MEMUB__RS____U4_0____IF__P0__DEALLOC_RETURN: {
1276 // Rd = memub (Rs + #u4:0) ; if (p0) dealloc_return
1277 op->type = R_ANAL_OP_TYPE_RET;
1278 break;
1279 }
1280 case HEX_INS_DUPLEX_RD___MEMUB__RS____U4_0____IF__P0_NEW__DEALLOC_RETURN_NT: {
1281 // Rd = memub (Rs + #u4:0) ; if (p0.new) dealloc_return:nt
1282 op->type = R_ANAL_OP_TYPE_RET;
1283 break;
1284 }
1285 case HEX_INS_DUPLEX_RD___MEMUH__RS____U3_1____DEALLOC_RETURN: {
1286 // Rd = memuh (Rs + #u3:1) ; dealloc_return
1287 op->type = R_ANAL_OP_TYPE_RET;
1288 break;
1289 }
1290 case HEX_INS_DUPLEX_RD___MEMUH__RS____U3_1____IF___NOT__P0__DEALLOC_RETURN: {
1291 // Rd = memuh (Rs + #u3:1) ; if (! p0) dealloc_return
1292 op->type = R_ANAL_OP_TYPE_RET;
1293 break;
1294 }
1295 case HEX_INS_DUPLEX_RD___MEMUH__RS____U3_1____IF___NOT__P0_NEW__DEALLOC_RETURN_NT: {
1296 // Rd = memuh (Rs + #u3:1) ; if (! p0.new) dealloc_return:nt
1297 op->type = R_ANAL_OP_TYPE_RET;
1298 break;
1299 }
1300 case HEX_INS_DUPLEX_RD___MEMUH__RS____U3_1____IF__P0__DEALLOC_RETURN: {
1301 // Rd = memuh (Rs + #u3:1) ; if (p0) dealloc_return
1302 op->type = R_ANAL_OP_TYPE_RET;
1303 break;
1304 }
1305 case HEX_INS_DUPLEX_RD___MEMUH__RS____U3_1____IF__P0_NEW__DEALLOC_RETURN_NT: {
1306 // Rd = memuh (Rs + #u3:1) ; if (p0.new) dealloc_return:nt
1307 op->type = R_ANAL_OP_TYPE_RET;
1308 break;
1309 }
1310 case HEX_INS_DUPLEX_RD___MEMW__RS____U4_2____DEALLOC_RETURN: {
1311 // Rd = memw (Rs + #u4:2) ; dealloc_return
1312 op->type = R_ANAL_OP_TYPE_RET;
1313 break;
1314 }
1315 case HEX_INS_DUPLEX_RD___MEMW__RS____U4_2____IF___NOT__P0__DEALLOC_RETURN: {
1316 // Rd = memw (Rs + #u4:2) ; if (! p0) dealloc_return
1317 op->type = R_ANAL_OP_TYPE_RET;
1318 break;
1319 }
1320 case HEX_INS_DUPLEX_RD___MEMW__RS____U4_2____IF___NOT__P0_NEW__DEALLOC_RETURN_NT: {
1321 // Rd = memw (Rs + #u4:2) ; if (! p0.new) dealloc_return:nt
1322 op->type = R_ANAL_OP_TYPE_RET;
1323 break;
1324 }
1325 case HEX_INS_DUPLEX_RD___MEMW__RS____U4_2____IF__P0__DEALLOC_RETURN: {
1326 // Rd = memw (Rs + #u4:2) ; if (p0) dealloc_return
1327 op->type = R_ANAL_OP_TYPE_RET;
1328 break;
1329 }
1330 case HEX_INS_DUPLEX_RD___MEMW__RS____U4_2____IF__P0_NEW__DEALLOC_RETURN_NT: {
1331 // Rd = memw (Rs + #u4:2) ; if (p0.new) dealloc_return:nt
1332 op->type = R_ANAL_OP_TYPE_RET;
1333 break;
1334 }
1335 case HEX_INS_DUPLEX_RD___MEMW__SP____U5_2____DEALLOC_RETURN: {
1336 // Rd = memw (Sp + #u5:2) ; dealloc_return
1337 op->type = R_ANAL_OP_TYPE_RET;
1338 break;
1339 }
1340 case HEX_INS_DUPLEX_RD___MEMW__SP____U5_2____IF___NOT__P0__DEALLOC_RETURN: {
1341 // Rd = memw (Sp + #u5:2) ; if (! p0) dealloc_return
1342 op->type = R_ANAL_OP_TYPE_RET;
1343 break;
1344 }
1345 case HEX_INS_DUPLEX_RD___MEMW__SP____U5_2____IF___NOT__P0_NEW__DEALLOC_RETURN_NT: {
1346 // Rd = memw (Sp + #u5:2) ; if (! p0.new) dealloc_return:nt
1347 op->type = R_ANAL_OP_TYPE_RET;
1348 break;
1349 }
1350 case HEX_INS_DUPLEX_RD___MEMW__SP____U5_2____IF__P0__DEALLOC_RETURN: {
1351 // Rd = memw (Sp + #u5:2) ; if (p0) dealloc_return
1352 op->type = R_ANAL_OP_TYPE_RET;
1353 break;
1354 }
1355 case HEX_INS_DUPLEX_RD___MEMW__SP____U5_2____IF__P0_NEW__DEALLOC_RETURN_NT: {
1356 // Rd = memw (Sp + #u5:2) ; if (p0.new) dealloc_return:nt
1357 op->type = R_ANAL_OP_TYPE_RET;
1358 break;
1359 }
1360 case HEX_INS_DUPLEX_RD___SXTB__RS____DEALLOC_RETURN: {
1361 // Rd = sxtb (Rs) ; dealloc_return
1362 op->type = R_ANAL_OP_TYPE_RET;
1363 break;
1364 }
1365 case HEX_INS_DUPLEX_RD___SXTB__RS____IF___NOT__P0__DEALLOC_RETURN: {
1366 // Rd = sxtb (Rs) ; if (! p0) dealloc_return
1367 op->type = R_ANAL_OP_TYPE_RET;
1368 break;
1369 }
1370 case HEX_INS_DUPLEX_RD___SXTB__RS____IF___NOT__P0_NEW__DEALLOC_RETURN_NT: {
1371 // Rd = sxtb (Rs) ; if (! p0.new) dealloc_return:nt
1372 op->type = R_ANAL_OP_TYPE_RET;
1373 break;
1374 }
1375 case HEX_INS_DUPLEX_RD___SXTB__RS____IF__P0__DEALLOC_RETURN: {
1376 // Rd = sxtb (Rs) ; if (p0) dealloc_return
1377 op->type = R_ANAL_OP_TYPE_RET;
1378 break;
1379 }
1380 case HEX_INS_DUPLEX_RD___SXTB__RS____IF__P0_NEW__DEALLOC_RETURN_NT: {
1381 // Rd = sxtb (Rs) ; if (p0.new) dealloc_return:nt
1382 op->type = R_ANAL_OP_TYPE_RET;
1383 break;
1384 }
1385 case HEX_INS_DUPLEX_RD___SXTH__RS____DEALLOC_RETURN: {
1386 // Rd = sxth (Rs) ; dealloc_return
1387 op->type = R_ANAL_OP_TYPE_RET;
1388 break;
1389 }
1390 case HEX_INS_DUPLEX_RD___SXTH__RS____IF___NOT__P0__DEALLOC_RETURN: {
1391 // Rd = sxth (Rs) ; if (! p0) dealloc_return
1392 op->type = R_ANAL_OP_TYPE_RET;
1393 break;
1394 }
1395 case HEX_INS_DUPLEX_RD___SXTH__RS____IF___NOT__P0_NEW__DEALLOC_RETURN_NT: {
1396 // Rd = sxth (Rs) ; if (! p0.new) dealloc_return:nt
1397 op->type = R_ANAL_OP_TYPE_RET;
1398 break;
1399 }
1400 case HEX_INS_DUPLEX_RD___SXTH__RS____IF__P0__DEALLOC_RETURN: {
1401 // Rd = sxth (Rs) ; if (p0) dealloc_return
1402 op->type = R_ANAL_OP_TYPE_RET;
1403 break;
1404 }
1405 case HEX_INS_DUPLEX_RD___SXTH__RS____IF__P0_NEW__DEALLOC_RETURN_NT: {
1406 // Rd = sxth (Rs) ; if (p0.new) dealloc_return:nt
1407 op->type = R_ANAL_OP_TYPE_RET;
1408 break;
1409 }
1410 case HEX_INS_DUPLEX_RD___ZXTH__RS____DEALLOC_RETURN: {
1411 // Rd = zxth (Rs) ; dealloc_return
1412 op->type = R_ANAL_OP_TYPE_RET;
1413 break;
1414 }
1415 case HEX_INS_DUPLEX_RD___ZXTH__RS____IF___NOT__P0__DEALLOC_RETURN: {
1416 // Rd = zxth (Rs) ; if (! p0) dealloc_return
1417 op->type = R_ANAL_OP_TYPE_RET;
1418 break;
1419 }
1420 case HEX_INS_DUPLEX_RD___ZXTH__RS____IF___NOT__P0_NEW__DEALLOC_RETURN_NT: {
1421 // Rd = zxth (Rs) ; if (! p0.new) dealloc_return:nt
1422 op->type = R_ANAL_OP_TYPE_RET;
1423 break;
1424 }
1425 case HEX_INS_DUPLEX_RD___ZXTH__RS____IF__P0__DEALLOC_RETURN: {
1426 // Rd = zxth (Rs) ; if (p0) dealloc_return
1427 op->type = R_ANAL_OP_TYPE_RET;
1428 break;
1429 }
1430 case HEX_INS_DUPLEX_RD___ZXTH__RS____IF__P0_NEW__DEALLOC_RETURN_NT: {
1431 // Rd = zxth (Rs) ; if (p0.new) dealloc_return:nt
1432 op->type = R_ANAL_OP_TYPE_RET;
1433 break;
1434 }
1435 case HEX_INS_DUPLEX_RDD___COMBINE___0___U2____DEALLOC_RETURN: {
1436 // Rdd = combine (#0, #u2) ; dealloc_return
1437 op->type = R_ANAL_OP_TYPE_RET;
1438 break;
1439 }
1440 case HEX_INS_DUPLEX_RDD___COMBINE___0___U2____IF___NOT__P0__DEALLOC_RETURN: {
1441 // Rdd = combine (#0, #u2) ; if (! p0) dealloc_return
1442 op->type = R_ANAL_OP_TYPE_RET;
1443 break;
1444 }
1445 case HEX_INS_DUPLEX_RDD___COMBINE___0___U2____IF___NOT__P0_NEW__DEALLOC_RETURN_NT: {
1446 // Rdd = combine (#0, #u2) ; if (! p0.new) dealloc_return:nt
1447 op->type = R_ANAL_OP_TYPE_RET;
1448 break;
1449 }
1450 case HEX_INS_DUPLEX_RDD___COMBINE___0___U2____IF__P0__DEALLOC_RETURN: {
1451 // Rdd = combine (#0, #u2) ; if (p0) dealloc_return
1452 op->type = R_ANAL_OP_TYPE_RET;
1453 break;
1454 }
1455 case HEX_INS_DUPLEX_RDD___COMBINE___0___U2____IF__P0_NEW__DEALLOC_RETURN_NT: {
1456 // Rdd = combine (#0, #u2) ; if (p0.new) dealloc_return:nt
1457 op->type = R_ANAL_OP_TYPE_RET;
1458 break;
1459 }
1460 case HEX_INS_DUPLEX_RDD___COMBINE___0__RS____DEALLOC_RETURN: {
1461 // Rdd = combine (#0, Rs) ; dealloc_return
1462 op->type = R_ANAL_OP_TYPE_RET;
1463 break;
1464 }
1465 case HEX_INS_DUPLEX_RDD___COMBINE___0__RS____IF___NOT__P0__DEALLOC_RETURN: {
1466 // Rdd = combine (#0, Rs) ; if (! p0) dealloc_return
1467 op->type = R_ANAL_OP_TYPE_RET;
1468 break;
1469 }
1470 case HEX_INS_DUPLEX_RDD___COMBINE___0__RS____IF___NOT__P0_NEW__DEALLOC_RETURN_NT: {
1471 // Rdd = combine (#0, Rs) ; if (! p0.new) dealloc_return:nt
1472 op->type = R_ANAL_OP_TYPE_RET;
1473 break;
1474 }
1475 case HEX_INS_DUPLEX_RDD___COMBINE___0__RS____IF__P0__DEALLOC_RETURN: {
1476 // Rdd = combine (#0, Rs) ; if (p0) dealloc_return
1477 op->type = R_ANAL_OP_TYPE_RET;
1478 break;
1479 }
1480 case HEX_INS_DUPLEX_RDD___COMBINE___0__RS____IF__P0_NEW__DEALLOC_RETURN_NT: {
1481 // Rdd = combine (#0, Rs) ; if (p0.new) dealloc_return:nt
1482 op->type = R_ANAL_OP_TYPE_RET;
1483 break;
1484 }
1485 case HEX_INS_DUPLEX_RDD___COMBINE___1___U2____DEALLOC_RETURN: {
1486 // Rdd = combine (#1, #u2) ; dealloc_return
1487 op->type = R_ANAL_OP_TYPE_RET;
1488 break;
1489 }
1490 case HEX_INS_DUPLEX_RDD___COMBINE___1___U2____IF___NOT__P0__DEALLOC_RETURN: {
1491 // Rdd = combine (#1, #u2) ; if (! p0) dealloc_return
1492 op->type = R_ANAL_OP_TYPE_RET;
1493 break;
1494 }
1495 case HEX_INS_DUPLEX_RDD___COMBINE___1___U2____IF___NOT__P0_NEW__DEALLOC_RETURN_NT: {
1496 // Rdd = combine (#1, #u2) ; if (! p0.new) dealloc_return:nt
1497 op->type = R_ANAL_OP_TYPE_RET;
1498 break;
1499 }
1500 case HEX_INS_DUPLEX_RDD___COMBINE___1___U2____IF__P0__DEALLOC_RETURN: {
1501 // Rdd = combine (#1, #u2) ; if (p0) dealloc_return
1502 op->type = R_ANAL_OP_TYPE_RET;
1503 break;
1504 }
1505 case HEX_INS_DUPLEX_RDD___COMBINE___1___U2____IF__P0_NEW__DEALLOC_RETURN_NT: {
1506 // Rdd = combine (#1, #u2) ; if (p0.new) dealloc_return:nt
1507 op->type = R_ANAL_OP_TYPE_RET;
1508 break;
1509 }
1510 case HEX_INS_DUPLEX_RDD___COMBINE___2___U2____DEALLOC_RETURN: {
1511 // Rdd = combine (#2, #u2) ; dealloc_return
1512 op->type = R_ANAL_OP_TYPE_RET;
1513 break;
1514 }
1515 case HEX_INS_DUPLEX_RDD___COMBINE___2___U2____IF___NOT__P0__DEALLOC_RETURN: {
1516 // Rdd = combine (#2, #u2) ; if (! p0) dealloc_return
1517 op->type = R_ANAL_OP_TYPE_RET;
1518 break;
1519 }
1520 case HEX_INS_DUPLEX_RDD___COMBINE___2___U2____IF___NOT__P0_NEW__DEALLOC_RETURN_NT: {
1521 // Rdd = combine (#2, #u2) ; if (! p0.new) dealloc_return:nt
1522 op->type = R_ANAL_OP_TYPE_RET;
1523 break;
1524 }
1525 case HEX_INS_DUPLEX_RDD___COMBINE___2___U2____IF__P0__DEALLOC_RETURN: {
1526 // Rdd = combine (#2, #u2) ; if (p0) dealloc_return
1527 op->type = R_ANAL_OP_TYPE_RET;
1528 break;
1529 }
1530 case HEX_INS_DUPLEX_RDD___COMBINE___2___U2____IF__P0_NEW__DEALLOC_RETURN_NT: {
1531 // Rdd = combine (#2, #u2) ; if (p0.new) dealloc_return:nt
1532 op->type = R_ANAL_OP_TYPE_RET;
1533 break;
1534 }
1535 case HEX_INS_DUPLEX_RDD___COMBINE___3___U2____DEALLOC_RETURN: {
1536 // Rdd = combine (#3, #u2) ; dealloc_return
1537 op->type = R_ANAL_OP_TYPE_RET;
1538 break;
1539 }
1540 case HEX_INS_DUPLEX_RDD___COMBINE___3___U2____IF___NOT__P0__DEALLOC_RETURN: {
1541 // Rdd = combine (#3, #u2) ; if (! p0) dealloc_return
1542 op->type = R_ANAL_OP_TYPE_RET;
1543 break;
1544 }
1545 case HEX_INS_DUPLEX_RDD___COMBINE___3___U2____IF___NOT__P0_NEW__DEALLOC_RETURN_NT: {
1546 // Rdd = combine (#3, #u2) ; if (! p0.new) dealloc_return:nt
1547 op->type = R_ANAL_OP_TYPE_RET;
1548 break;
1549 }
1550 case HEX_INS_DUPLEX_RDD___COMBINE___3___U2____IF__P0__DEALLOC_RETURN: {
1551 // Rdd = combine (#3, #u2) ; if (p0) dealloc_return
1552 op->type = R_ANAL_OP_TYPE_RET;
1553 break;
1554 }
1555 case HEX_INS_DUPLEX_RDD___COMBINE___3___U2____IF__P0_NEW__DEALLOC_RETURN_NT: {
1556 // Rdd = combine (#3, #u2) ; if (p0.new) dealloc_return:nt
1557 op->type = R_ANAL_OP_TYPE_RET;
1558 break;
1559 }
1560 case HEX_INS_DUPLEX_RDD___COMBINE__RS___0____DEALLOC_RETURN: {
1561 // Rdd = combine (Rs, #0) ; dealloc_return
1562 op->type = R_ANAL_OP_TYPE_RET;
1563 break;
1564 }
1565 case HEX_INS_DUPLEX_RDD___COMBINE__RS___0____IF___NOT__P0__DEALLOC_RETURN: {
1566 // Rdd = combine (Rs, #0) ; if (! p0) dealloc_return
1567 op->type = R_ANAL_OP_TYPE_RET;
1568 break;
1569 }
1570 case HEX_INS_DUPLEX_RDD___COMBINE__RS___0____IF___NOT__P0_NEW__DEALLOC_RETURN_NT: {
1571 // Rdd = combine (Rs, #0) ; if (! p0.new) dealloc_return:nt
1572 op->type = R_ANAL_OP_TYPE_RET;
1573 break;
1574 }
1575 case HEX_INS_DUPLEX_RDD___COMBINE__RS___0____IF__P0__DEALLOC_RETURN: {
1576 // Rdd = combine (Rs, #0) ; if (p0) dealloc_return
1577 op->type = R_ANAL_OP_TYPE_RET;
1578 break;
1579 }
1580 case HEX_INS_DUPLEX_RDD___COMBINE__RS___0____IF__P0_NEW__DEALLOC_RETURN_NT: {
1581 // Rdd = combine (Rs, #0) ; if (p0.new) dealloc_return:nt
1582 op->type = R_ANAL_OP_TYPE_RET;
1583 break;
1584 }
1585 case HEX_INS_DUPLEX_RDD___MEMD__SP____U5_3____DEALLOC_RETURN: {
1586 // Rdd = memd (Sp + #u5:3) ; dealloc_return
1587 op->type = R_ANAL_OP_TYPE_RET;
1588 break;
1589 }
1590 case HEX_INS_DUPLEX_RDD___MEMD__SP____U5_3____IF___NOT__P0__DEALLOC_RETURN: {
1591 // Rdd = memd (Sp + #u5:3) ; if (! p0) dealloc_return
1592 op->type = R_ANAL_OP_TYPE_RET;
1593 break;
1594 }
1595 case HEX_INS_DUPLEX_RDD___MEMD__SP____U5_3____IF___NOT__P0_NEW__DEALLOC_RETURN_NT: {
1596 // Rdd = memd (Sp + #u5:3) ; if (! p0.new) dealloc_return:nt
1597 op->type = R_ANAL_OP_TYPE_RET;
1598 break;
1599 }
1600 case HEX_INS_DUPLEX_RDD___MEMD__SP____U5_3____IF__P0__DEALLOC_RETURN: {
1601 // Rdd = memd (Sp + #u5:3) ; if (p0) dealloc_return
1602 op->type = R_ANAL_OP_TYPE_RET;
1603 break;
1604 }
1605 case HEX_INS_DUPLEX_RDD___MEMD__SP____U5_3____IF__P0_NEW__DEALLOC_RETURN_NT: {
1606 // Rdd = memd (Sp + #u5:3) ; if (p0.new) dealloc_return:nt
1607 op->type = R_ANAL_OP_TYPE_RET;
1608 break;
1609 }
1610 case HEX_INS_DUPLEX_RX___ADD__RS__RX____DEALLOC_RETURN: {
1611 // Rx = add (Rs, Rx) ; dealloc_return
1612 op->type = R_ANAL_OP_TYPE_RET;
1613 break;
1614 }
1615 case HEX_INS_DUPLEX_RX___ADD__RS__RX____IF___NOT__P0__DEALLOC_RETURN: {
1616 // Rx = add (Rs, Rx) ; if (! p0) dealloc_return
1617 op->type = R_ANAL_OP_TYPE_RET;
1618 break;
1619 }
1620 case HEX_INS_DUPLEX_RX___ADD__RS__RX____IF___NOT__P0_NEW__DEALLOC_RETURN_NT: {
1621 // Rx = add (Rs, Rx) ; if (! p0.new) dealloc_return:nt
1622 op->type = R_ANAL_OP_TYPE_RET;
1623 break;
1624 }
1625 case HEX_INS_DUPLEX_RX___ADD__RS__RX____IF__P0__DEALLOC_RETURN: {
1626 // Rx = add (Rs, Rx) ; if (p0) dealloc_return
1627 op->type = R_ANAL_OP_TYPE_RET;
1628 break;
1629 }
1630 case HEX_INS_DUPLEX_RX___ADD__RS__RX____IF__P0_NEW__DEALLOC_RETURN_NT: {
1631 // Rx = add (Rs, Rx) ; if (p0.new) dealloc_return:nt
1632 op->type = R_ANAL_OP_TYPE_RET;
1633 break;
1634 }
1635 case HEX_INS_DUPLEX_RX___ADD__RX___S7____DEALLOC_RETURN: {
1636 // Rx = add (Rx, #s7) ; dealloc_return
1637 op->type = R_ANAL_OP_TYPE_RET;
1638 break;
1639 }
1640 case HEX_INS_DUPLEX_RX___ADD__RX___S7____IF___NOT__P0__DEALLOC_RETURN: {
1641 // Rx = add (Rx, #s7) ; if (! p0) dealloc_return
1642 op->type = R_ANAL_OP_TYPE_RET;
1643 break;
1644 }
1645 case HEX_INS_DUPLEX_RX___ADD__RX___S7____IF___NOT__P0_NEW__DEALLOC_RETURN_NT: {
1646 // Rx = add (Rx, #s7) ; if (! p0.new) dealloc_return:nt
1647 op->type = R_ANAL_OP_TYPE_RET;
1648 break;
1649 }
1650 case HEX_INS_DUPLEX_RX___ADD__RX___S7____IF__P0__DEALLOC_RETURN: {
1651 // Rx = add (Rx, #s7) ; if (p0) dealloc_return
1652 op->type = R_ANAL_OP_TYPE_RET;
1653 break;
1654 }
1655 case HEX_INS_DUPLEX_RX___ADD__RX___S7____IF__P0_NEW__DEALLOC_RETURN_NT: {
1656 // Rx = add (Rx, #s7) ; if (p0.new) dealloc_return:nt
1657 op->type = R_ANAL_OP_TYPE_RET;
1658 break;
1659 }
1660 case HEX_INS_DUPLEX_RX___ADD__RX__RS____DEALLOC_RETURN: {
1661 // Rx = add (Rx, Rs) ; dealloc_return
1662 op->type = R_ANAL_OP_TYPE_RET;
1663 break;
1664 }
1665 case HEX_INS_DUPLEX_RX___ADD__RX__RS____IF___NOT__P0__DEALLOC_RETURN: {
1666 // Rx = add (Rx, Rs) ; if (! p0) dealloc_return
1667 op->type = R_ANAL_OP_TYPE_RET;
1668 break;
1669 }
1670 case HEX_INS_DUPLEX_RX___ADD__RX__RS____IF___NOT__P0_NEW__DEALLOC_RETURN_NT: {
1671 // Rx = add (Rx, Rs) ; if (! p0.new) dealloc_return:nt
1672 op->type = R_ANAL_OP_TYPE_RET;
1673 break;
1674 }
1675 case HEX_INS_DUPLEX_RX___ADD__RX__RS____IF__P0__DEALLOC_RETURN: {
1676 // Rx = add (Rx, Rs) ; if (p0) dealloc_return
1677 op->type = R_ANAL_OP_TYPE_RET;
1678 break;
1679 }
1680 case HEX_INS_DUPLEX_RX___ADD__RX__RS____IF__P0_NEW__DEALLOC_RETURN_NT: {
1681 // Rx = add (Rx, Rs) ; if (p0.new) dealloc_return:nt
1682 op->type = R_ANAL_OP_TYPE_RET;
1683 break;
1684 }
1685 case HEX_INS_DUPLEX_IF___NOT__P0__RD____0___DEALLOC_RETURN: {
1686 // if (! p0) Rd = #0 ; dealloc_return
1687 op->type = R_ANAL_OP_TYPE_RET;
1688 break;
1689 }
1690 case HEX_INS_DUPLEX_IF___NOT__P0__RD____0___IF___NOT__P0__DEALLOC_RETURN: {
1691 // if (! p0) Rd = #0 ; if (! p0) dealloc_return
1692 op->type = R_ANAL_OP_TYPE_RET;
1693 break;
1694 }
1695 case HEX_INS_DUPLEX_IF___NOT__P0__RD____0___IF___NOT__P0_NEW__DEALLOC_RETURN_NT: {
1696 // if (! p0) Rd = #0 ; if (! p0.new) dealloc_return:nt
1697 op->type = R_ANAL_OP_TYPE_RET;
1698 break;
1699 }
1700 case HEX_INS_DUPLEX_IF___NOT__P0__RD____0___IF__P0__DEALLOC_RETURN: {
1701 // if (! p0) Rd = #0 ; if (p0) dealloc_return
1702 op->type = R_ANAL_OP_TYPE_RET;
1703 break;
1704 }
1705 case HEX_INS_DUPLEX_IF___NOT__P0__RD____0___IF__P0_NEW__DEALLOC_RETURN_NT: {
1706 // if (! p0) Rd = #0 ; if (p0.new) dealloc_return:nt
1707 op->type = R_ANAL_OP_TYPE_RET;
1708 break;
1709 }
1710 case HEX_INS_DUPLEX_IF___NOT__P0_NEW__RD____0___DEALLOC_RETURN: {
1711 // if (! p0.new) Rd = #0 ; dealloc_return
1712 op->type = R_ANAL_OP_TYPE_RET;
1713 break;
1714 }
1715 case HEX_INS_DUPLEX_IF___NOT__P0_NEW__RD____0___IF___NOT__P0__DEALLOC_RETURN: {
1716 // if (! p0.new) Rd = #0 ; if (! p0) dealloc_return
1717 op->type = R_ANAL_OP_TYPE_RET;
1718 break;
1719 }
1720 case HEX_INS_DUPLEX_IF___NOT__P0_NEW__RD____0___IF___NOT__P0_NEW__DEALLOC_RETURN_NT: {
1721 // if (! p0.new) Rd = #0 ; if (! p0.new) dealloc_return:nt
1722 op->type = R_ANAL_OP_TYPE_RET;
1723 break;
1724 }
1725 case HEX_INS_DUPLEX_IF___NOT__P0_NEW__RD____0___IF__P0__DEALLOC_RETURN: {
1726 // if (! p0.new) Rd = #0 ; if (p0) dealloc_return
1727 op->type = R_ANAL_OP_TYPE_RET;
1728 break;
1729 }
1730 case HEX_INS_DUPLEX_IF___NOT__P0_NEW__RD____0___IF__P0_NEW__DEALLOC_RETURN_NT: {
1731 // if (! p0.new) Rd = #0 ; if (p0.new) dealloc_return:nt
1732 op->type = R_ANAL_OP_TYPE_RET;
1733 break;
1734 }
1735 case HEX_INS_DUPLEX_IF__P0__RD____0___DEALLOC_RETURN: {
1736 // if (p0) Rd = #0 ; dealloc_return
1737 op->type = R_ANAL_OP_TYPE_RET;
1738 break;
1739 }
1740 case HEX_INS_DUPLEX_IF__P0__RD____0___IF___NOT__P0__DEALLOC_RETURN: {
1741 // if (p0) Rd = #0 ; if (! p0) dealloc_return
1742 op->type = R_ANAL_OP_TYPE_RET;
1743 break;
1744 }
1745 case HEX_INS_DUPLEX_IF__P0__RD____0___IF___NOT__P0_NEW__DEALLOC_RETURN_NT: {
1746 // if (p0) Rd = #0 ; if (! p0.new) dealloc_return:nt
1747 op->type = R_ANAL_OP_TYPE_RET;
1748 break;
1749 }
1750 case HEX_INS_DUPLEX_IF__P0__RD____0___IF__P0__DEALLOC_RETURN: {
1751 // if (p0) Rd = #0 ; if (p0) dealloc_return
1752 op->type = R_ANAL_OP_TYPE_RET;
1753 break;
1754 }
1755 case HEX_INS_DUPLEX_IF__P0__RD____0___IF__P0_NEW__DEALLOC_RETURN_NT: {
1756 // if (p0) Rd = #0 ; if (p0.new) dealloc_return:nt
1757 op->type = R_ANAL_OP_TYPE_RET;
1758 break;
1759 }
1760 case HEX_INS_DUPLEX_IF__P0_NEW__RD____0___DEALLOC_RETURN: {
1761 // if (p0.new) Rd = #0 ; dealloc_return
1762 op->type = R_ANAL_OP_TYPE_RET;
1763 break;
1764 }
1765 case HEX_INS_DUPLEX_IF__P0_NEW__RD____0___IF___NOT__P0__DEALLOC_RETURN: {
1766 // if (p0.new) Rd = #0 ; if (! p0) dealloc_return
1767 op->type = R_ANAL_OP_TYPE_RET;
1768 break;
1769 }
1770 case HEX_INS_DUPLEX_IF__P0_NEW__RD____0___IF___NOT__P0_NEW__DEALLOC_RETURN_NT: {
1771 // if (p0.new) Rd = #0 ; if (! p0.new) dealloc_return:nt
1772 op->type = R_ANAL_OP_TYPE_RET;
1773 break;
1774 }
1775 case HEX_INS_DUPLEX_IF__P0_NEW__RD____0___IF__P0__DEALLOC_RETURN: {
1776 // if (p0.new) Rd = #0 ; if (p0) dealloc_return
1777 op->type = R_ANAL_OP_TYPE_RET;
1778 break;
1779 }
1780 case HEX_INS_DUPLEX_IF__P0_NEW__RD____0___IF__P0_NEW__DEALLOC_RETURN_NT: {
1781 // if (p0.new) Rd = #0 ; if (p0.new) dealloc_return:nt
1782 op->type = R_ANAL_OP_TYPE_RET;
1783 break;
1784 }
1785 case HEX_INS_DUPLEX_P0___CMP_EQ__RS___U2____DEALLOC_RETURN: {
1786 // p0 = cmp.eq (Rs, #u2) ; dealloc_return
1787 op->type = R_ANAL_OP_TYPE_RET;
1788 break;
1789 }
1790 case HEX_INS_DUPLEX_P0___CMP_EQ__RS___U2____IF___NOT__P0__DEALLOC_RETURN: {
1791 // p0 = cmp.eq (Rs, #u2) ; if (! p0) dealloc_return
1792 op->type = R_ANAL_OP_TYPE_RET;
1793 break;
1794 }
1795 case HEX_INS_DUPLEX_P0___CMP_EQ__RS___U2____IF___NOT__P0_NEW__DEALLOC_RETURN_NT: {
1796 // p0 = cmp.eq (Rs, #u2) ; if (! p0.new) dealloc_return:nt
1797 op->type = R_ANAL_OP_TYPE_RET;
1798 break;
1799 }
1800 case HEX_INS_DUPLEX_P0___CMP_EQ__RS___U2____IF__P0__DEALLOC_RETURN: {
1801 // p0 = cmp.eq (Rs, #u2) ; if (p0) dealloc_return
1802 op->type = R_ANAL_OP_TYPE_RET;
1803 break;
1804 }
1805 case HEX_INS_DUPLEX_P0___CMP_EQ__RS___U2____IF__P0_NEW__DEALLOC_RETURN_NT: {
1806 // p0 = cmp.eq (Rs, #u2) ; if (p0.new) dealloc_return:nt
1807 op->type = R_ANAL_OP_TYPE_RET;
1808 break;
1809 }
1810 }
1811 return op->size;
1812 }
1813