include/
[deliverable/binutils-gdb.git] / bfd / xtensa-modules.c
1 /* Xtensa configuration-specific ISA information.
2 Copyright 2003, 2004, 2005, 2007, 2008 Free Software Foundation, Inc.
3
4 This file is part of BFD, the Binary File Descriptor library.
5
6 This program is free software; you can redistribute it and/or
7 modify it under the terms of the GNU General Public License as
8 published by the Free Software Foundation; either version 3 of the
9 License, or (at your option) any later version.
10
11 This program is distributed in the hope that it will be useful,
12 but WITHOUT ANY WARRANTY; without even the implied warranty of
13 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
14 General Public License for more details.
15
16 You should have received a copy of the GNU General Public License
17 along with this program; if not, write to the Free Software
18 Foundation, Inc., 51 Franklin Street - Fifth Floor, Boston, MA
19 02110-1301, USA. */
20
21 #include "ansidecl.h"
22 #include <xtensa-isa.h>
23 #include "xtensa-isa-internal.h"
24
25 \f
26 /* Sysregs. */
27
28 static xtensa_sysreg_internal sysregs[] = {
29 { "LBEG", 0, 0 },
30 { "LEND", 1, 0 },
31 { "LCOUNT", 2, 0 },
32 { "PTEVADDR", 83, 0 },
33 { "MMID", 89, 0 },
34 { "DDR", 104, 0 },
35 { "176", 176, 0 },
36 { "208", 208, 0 },
37 { "INTERRUPT", 226, 0 },
38 { "INTCLEAR", 227, 0 },
39 { "CCOUNT", 234, 0 },
40 { "PRID", 235, 0 },
41 { "ICOUNT", 236, 0 },
42 { "CCOMPARE0", 240, 0 },
43 { "CCOMPARE1", 241, 0 },
44 { "CCOMPARE2", 242, 0 },
45 { "VECBASE", 231, 0 },
46 { "EPC1", 177, 0 },
47 { "EPC2", 178, 0 },
48 { "EPC3", 179, 0 },
49 { "EPC4", 180, 0 },
50 { "EPC5", 181, 0 },
51 { "EPC6", 182, 0 },
52 { "EPC7", 183, 0 },
53 { "EXCSAVE1", 209, 0 },
54 { "EXCSAVE2", 210, 0 },
55 { "EXCSAVE3", 211, 0 },
56 { "EXCSAVE4", 212, 0 },
57 { "EXCSAVE5", 213, 0 },
58 { "EXCSAVE6", 214, 0 },
59 { "EXCSAVE7", 215, 0 },
60 { "EPS2", 194, 0 },
61 { "EPS3", 195, 0 },
62 { "EPS4", 196, 0 },
63 { "EPS5", 197, 0 },
64 { "EPS6", 198, 0 },
65 { "EPS7", 199, 0 },
66 { "EXCCAUSE", 232, 0 },
67 { "DEPC", 192, 0 },
68 { "EXCVADDR", 238, 0 },
69 { "WINDOWBASE", 72, 0 },
70 { "WINDOWSTART", 73, 0 },
71 { "SAR", 3, 0 },
72 { "LITBASE", 5, 0 },
73 { "PS", 230, 0 },
74 { "MISC0", 244, 0 },
75 { "MISC1", 245, 0 },
76 { "INTENABLE", 228, 0 },
77 { "DBREAKA0", 144, 0 },
78 { "DBREAKC0", 160, 0 },
79 { "DBREAKA1", 145, 0 },
80 { "DBREAKC1", 161, 0 },
81 { "IBREAKA0", 128, 0 },
82 { "IBREAKA1", 129, 0 },
83 { "IBREAKENABLE", 96, 0 },
84 { "ICOUNTLEVEL", 237, 0 },
85 { "DEBUGCAUSE", 233, 0 },
86 { "RASID", 90, 0 },
87 { "ITLBCFG", 91, 0 },
88 { "DTLBCFG", 92, 0 },
89 { "CPENABLE", 224, 0 },
90 { "SCOMPARE1", 12, 0 },
91 { "THREADPTR", 231, 1 }
92 };
93
94 #define NUM_SYSREGS 63
95 #define MAX_SPECIAL_REG 245
96 #define MAX_USER_REG 231
97
98 \f
99 /* Processor states. */
100
101 static xtensa_state_internal states[] = {
102 { "LCOUNT", 32, 0 },
103 { "PC", 32, 0 },
104 { "ICOUNT", 32, 0 },
105 { "DDR", 32, 0 },
106 { "INTERRUPT", 22, 0 },
107 { "CCOUNT", 32, 0 },
108 { "XTSYNC", 1, 0 },
109 { "VECBASE", 22, 0 },
110 { "EPC1", 32, 0 },
111 { "EPC2", 32, 0 },
112 { "EPC3", 32, 0 },
113 { "EPC4", 32, 0 },
114 { "EPC5", 32, 0 },
115 { "EPC6", 32, 0 },
116 { "EPC7", 32, 0 },
117 { "EXCSAVE1", 32, 0 },
118 { "EXCSAVE2", 32, 0 },
119 { "EXCSAVE3", 32, 0 },
120 { "EXCSAVE4", 32, 0 },
121 { "EXCSAVE5", 32, 0 },
122 { "EXCSAVE6", 32, 0 },
123 { "EXCSAVE7", 32, 0 },
124 { "EPS2", 15, 0 },
125 { "EPS3", 15, 0 },
126 { "EPS4", 15, 0 },
127 { "EPS5", 15, 0 },
128 { "EPS6", 15, 0 },
129 { "EPS7", 15, 0 },
130 { "EXCCAUSE", 6, 0 },
131 { "PSINTLEVEL", 4, 0 },
132 { "PSUM", 1, 0 },
133 { "PSWOE", 1, 0 },
134 { "PSRING", 2, 0 },
135 { "PSEXCM", 1, 0 },
136 { "DEPC", 32, 0 },
137 { "EXCVADDR", 32, 0 },
138 { "WindowBase", 3, 0 },
139 { "WindowStart", 8, 0 },
140 { "PSCALLINC", 2, 0 },
141 { "PSOWB", 4, 0 },
142 { "LBEG", 32, 0 },
143 { "LEND", 32, 0 },
144 { "SAR", 6, 0 },
145 { "THREADPTR", 32, 0 },
146 { "LITBADDR", 20, 0 },
147 { "LITBEN", 1, 0 },
148 { "MISC0", 32, 0 },
149 { "MISC1", 32, 0 },
150 { "InOCDMode", 1, 0 },
151 { "INTENABLE", 22, 0 },
152 { "DBREAKA0", 32, 0 },
153 { "DBREAKC0", 8, 0 },
154 { "DBREAKA1", 32, 0 },
155 { "DBREAKC1", 8, 0 },
156 { "IBREAKA0", 32, 0 },
157 { "IBREAKA1", 32, 0 },
158 { "IBREAKENABLE", 2, 0 },
159 { "ICOUNTLEVEL", 4, 0 },
160 { "DEBUGCAUSE", 6, 0 },
161 { "DBNUM", 4, 0 },
162 { "CCOMPARE0", 32, 0 },
163 { "CCOMPARE1", 32, 0 },
164 { "CCOMPARE2", 32, 0 },
165 { "ASID3", 8, 0 },
166 { "ASID2", 8, 0 },
167 { "ASID1", 8, 0 },
168 { "INSTPGSZID4", 2, 0 },
169 { "DATAPGSZID4", 2, 0 },
170 { "PTBASE", 10, 0 },
171 { "CPENABLE", 8, 0 },
172 { "SCOMPARE1", 32, 0 }
173 };
174
175 #define NUM_STATES 71
176
177 enum xtensa_state_id {
178 STATE_LCOUNT,
179 STATE_PC,
180 STATE_ICOUNT,
181 STATE_DDR,
182 STATE_INTERRUPT,
183 STATE_CCOUNT,
184 STATE_XTSYNC,
185 STATE_VECBASE,
186 STATE_EPC1,
187 STATE_EPC2,
188 STATE_EPC3,
189 STATE_EPC4,
190 STATE_EPC5,
191 STATE_EPC6,
192 STATE_EPC7,
193 STATE_EXCSAVE1,
194 STATE_EXCSAVE2,
195 STATE_EXCSAVE3,
196 STATE_EXCSAVE4,
197 STATE_EXCSAVE5,
198 STATE_EXCSAVE6,
199 STATE_EXCSAVE7,
200 STATE_EPS2,
201 STATE_EPS3,
202 STATE_EPS4,
203 STATE_EPS5,
204 STATE_EPS6,
205 STATE_EPS7,
206 STATE_EXCCAUSE,
207 STATE_PSINTLEVEL,
208 STATE_PSUM,
209 STATE_PSWOE,
210 STATE_PSRING,
211 STATE_PSEXCM,
212 STATE_DEPC,
213 STATE_EXCVADDR,
214 STATE_WindowBase,
215 STATE_WindowStart,
216 STATE_PSCALLINC,
217 STATE_PSOWB,
218 STATE_LBEG,
219 STATE_LEND,
220 STATE_SAR,
221 STATE_THREADPTR,
222 STATE_LITBADDR,
223 STATE_LITBEN,
224 STATE_MISC0,
225 STATE_MISC1,
226 STATE_InOCDMode,
227 STATE_INTENABLE,
228 STATE_DBREAKA0,
229 STATE_DBREAKC0,
230 STATE_DBREAKA1,
231 STATE_DBREAKC1,
232 STATE_IBREAKA0,
233 STATE_IBREAKA1,
234 STATE_IBREAKENABLE,
235 STATE_ICOUNTLEVEL,
236 STATE_DEBUGCAUSE,
237 STATE_DBNUM,
238 STATE_CCOMPARE0,
239 STATE_CCOMPARE1,
240 STATE_CCOMPARE2,
241 STATE_ASID3,
242 STATE_ASID2,
243 STATE_ASID1,
244 STATE_INSTPGSZID4,
245 STATE_DATAPGSZID4,
246 STATE_PTBASE,
247 STATE_CPENABLE,
248 STATE_SCOMPARE1
249 };
250
251 \f
252 /* Field definitions. */
253
254 static unsigned
255 Field_t_Slot_inst_get (const xtensa_insnbuf insn)
256 {
257 unsigned tie_t = 0;
258 tie_t = (tie_t << 4) | ((insn[0] << 12) >> 28);
259 return tie_t;
260 }
261
262 static void
263 Field_t_Slot_inst_set (xtensa_insnbuf insn, uint32 val)
264 {
265 uint32 tie_t;
266 tie_t = (val << 28) >> 28;
267 insn[0] = (insn[0] & ~0xf0000) | (tie_t << 16);
268 }
269
270 static unsigned
271 Field_s_Slot_inst_get (const xtensa_insnbuf insn)
272 {
273 unsigned tie_t = 0;
274 tie_t = (tie_t << 4) | ((insn[0] << 16) >> 28);
275 return tie_t;
276 }
277
278 static void
279 Field_s_Slot_inst_set (xtensa_insnbuf insn, uint32 val)
280 {
281 uint32 tie_t;
282 tie_t = (val << 28) >> 28;
283 insn[0] = (insn[0] & ~0xf000) | (tie_t << 12);
284 }
285
286 static unsigned
287 Field_r_Slot_inst_get (const xtensa_insnbuf insn)
288 {
289 unsigned tie_t = 0;
290 tie_t = (tie_t << 4) | ((insn[0] << 20) >> 28);
291 return tie_t;
292 }
293
294 static void
295 Field_r_Slot_inst_set (xtensa_insnbuf insn, uint32 val)
296 {
297 uint32 tie_t;
298 tie_t = (val << 28) >> 28;
299 insn[0] = (insn[0] & ~0xf00) | (tie_t << 8);
300 }
301
302 static unsigned
303 Field_op2_Slot_inst_get (const xtensa_insnbuf insn)
304 {
305 unsigned tie_t = 0;
306 tie_t = (tie_t << 4) | ((insn[0] << 28) >> 28);
307 return tie_t;
308 }
309
310 static void
311 Field_op2_Slot_inst_set (xtensa_insnbuf insn, uint32 val)
312 {
313 uint32 tie_t;
314 tie_t = (val << 28) >> 28;
315 insn[0] = (insn[0] & ~0xf) | (tie_t << 0);
316 }
317
318 static unsigned
319 Field_op1_Slot_inst_get (const xtensa_insnbuf insn)
320 {
321 unsigned tie_t = 0;
322 tie_t = (tie_t << 4) | ((insn[0] << 24) >> 28);
323 return tie_t;
324 }
325
326 static void
327 Field_op1_Slot_inst_set (xtensa_insnbuf insn, uint32 val)
328 {
329 uint32 tie_t;
330 tie_t = (val << 28) >> 28;
331 insn[0] = (insn[0] & ~0xf0) | (tie_t << 4);
332 }
333
334 static unsigned
335 Field_op0_Slot_inst_get (const xtensa_insnbuf insn)
336 {
337 unsigned tie_t = 0;
338 tie_t = (tie_t << 4) | ((insn[0] << 8) >> 28);
339 return tie_t;
340 }
341
342 static void
343 Field_op0_Slot_inst_set (xtensa_insnbuf insn, uint32 val)
344 {
345 uint32 tie_t;
346 tie_t = (val << 28) >> 28;
347 insn[0] = (insn[0] & ~0xf00000) | (tie_t << 20);
348 }
349
350 static unsigned
351 Field_n_Slot_inst_get (const xtensa_insnbuf insn)
352 {
353 unsigned tie_t = 0;
354 tie_t = (tie_t << 2) | ((insn[0] << 12) >> 30);
355 return tie_t;
356 }
357
358 static void
359 Field_n_Slot_inst_set (xtensa_insnbuf insn, uint32 val)
360 {
361 uint32 tie_t;
362 tie_t = (val << 30) >> 30;
363 insn[0] = (insn[0] & ~0xc0000) | (tie_t << 18);
364 }
365
366 static unsigned
367 Field_m_Slot_inst_get (const xtensa_insnbuf insn)
368 {
369 unsigned tie_t = 0;
370 tie_t = (tie_t << 2) | ((insn[0] << 14) >> 30);
371 return tie_t;
372 }
373
374 static void
375 Field_m_Slot_inst_set (xtensa_insnbuf insn, uint32 val)
376 {
377 uint32 tie_t;
378 tie_t = (val << 30) >> 30;
379 insn[0] = (insn[0] & ~0x30000) | (tie_t << 16);
380 }
381
382 static unsigned
383 Field_sr_Slot_inst_get (const xtensa_insnbuf insn)
384 {
385 unsigned tie_t = 0;
386 tie_t = (tie_t << 4) | ((insn[0] << 16) >> 28);
387 tie_t = (tie_t << 4) | ((insn[0] << 20) >> 28);
388 return tie_t;
389 }
390
391 static void
392 Field_sr_Slot_inst_set (xtensa_insnbuf insn, uint32 val)
393 {
394 uint32 tie_t;
395 tie_t = (val << 28) >> 28;
396 insn[0] = (insn[0] & ~0xf00) | (tie_t << 8);
397 tie_t = (val << 24) >> 28;
398 insn[0] = (insn[0] & ~0xf000) | (tie_t << 12);
399 }
400
401 static unsigned
402 Field_st_Slot_inst_get (const xtensa_insnbuf insn)
403 {
404 unsigned tie_t = 0;
405 tie_t = (tie_t << 4) | ((insn[0] << 16) >> 28);
406 tie_t = (tie_t << 4) | ((insn[0] << 12) >> 28);
407 return tie_t;
408 }
409
410 static void
411 Field_st_Slot_inst_set (xtensa_insnbuf insn, uint32 val)
412 {
413 uint32 tie_t;
414 tie_t = (val << 28) >> 28;
415 insn[0] = (insn[0] & ~0xf0000) | (tie_t << 16);
416 tie_t = (val << 24) >> 28;
417 insn[0] = (insn[0] & ~0xf000) | (tie_t << 12);
418 }
419
420 static unsigned
421 Field_thi3_Slot_inst_get (const xtensa_insnbuf insn)
422 {
423 unsigned tie_t = 0;
424 tie_t = (tie_t << 3) | ((insn[0] << 12) >> 29);
425 return tie_t;
426 }
427
428 static void
429 Field_thi3_Slot_inst_set (xtensa_insnbuf insn, uint32 val)
430 {
431 uint32 tie_t;
432 tie_t = (val << 29) >> 29;
433 insn[0] = (insn[0] & ~0xe0000) | (tie_t << 17);
434 }
435
436 static unsigned
437 Field_op0_Slot_inst16a_get (const xtensa_insnbuf insn)
438 {
439 unsigned tie_t = 0;
440 tie_t = (tie_t << 4) | ((insn[0] << 16) >> 28);
441 return tie_t;
442 }
443
444 static void
445 Field_op0_Slot_inst16a_set (xtensa_insnbuf insn, uint32 val)
446 {
447 uint32 tie_t;
448 tie_t = (val << 28) >> 28;
449 insn[0] = (insn[0] & ~0xf000) | (tie_t << 12);
450 }
451
452 static unsigned
453 Field_t_Slot_inst16b_get (const xtensa_insnbuf insn)
454 {
455 unsigned tie_t = 0;
456 tie_t = (tie_t << 4) | ((insn[0] << 20) >> 28);
457 return tie_t;
458 }
459
460 static void
461 Field_t_Slot_inst16b_set (xtensa_insnbuf insn, uint32 val)
462 {
463 uint32 tie_t;
464 tie_t = (val << 28) >> 28;
465 insn[0] = (insn[0] & ~0xf00) | (tie_t << 8);
466 }
467
468 static unsigned
469 Field_r_Slot_inst16b_get (const xtensa_insnbuf insn)
470 {
471 unsigned tie_t = 0;
472 tie_t = (tie_t << 4) | ((insn[0] << 28) >> 28);
473 return tie_t;
474 }
475
476 static void
477 Field_r_Slot_inst16b_set (xtensa_insnbuf insn, uint32 val)
478 {
479 uint32 tie_t;
480 tie_t = (val << 28) >> 28;
481 insn[0] = (insn[0] & ~0xf) | (tie_t << 0);
482 }
483
484 static unsigned
485 Field_op0_Slot_inst16b_get (const xtensa_insnbuf insn)
486 {
487 unsigned tie_t = 0;
488 tie_t = (tie_t << 4) | ((insn[0] << 16) >> 28);
489 return tie_t;
490 }
491
492 static void
493 Field_op0_Slot_inst16b_set (xtensa_insnbuf insn, uint32 val)
494 {
495 uint32 tie_t;
496 tie_t = (val << 28) >> 28;
497 insn[0] = (insn[0] & ~0xf000) | (tie_t << 12);
498 }
499
500 static unsigned
501 Field_z_Slot_inst16b_get (const xtensa_insnbuf insn)
502 {
503 unsigned tie_t = 0;
504 tie_t = (tie_t << 1) | ((insn[0] << 21) >> 31);
505 return tie_t;
506 }
507
508 static void
509 Field_z_Slot_inst16b_set (xtensa_insnbuf insn, uint32 val)
510 {
511 uint32 tie_t;
512 tie_t = (val << 31) >> 31;
513 insn[0] = (insn[0] & ~0x400) | (tie_t << 10);
514 }
515
516 static unsigned
517 Field_i_Slot_inst16b_get (const xtensa_insnbuf insn)
518 {
519 unsigned tie_t = 0;
520 tie_t = (tie_t << 1) | ((insn[0] << 20) >> 31);
521 return tie_t;
522 }
523
524 static void
525 Field_i_Slot_inst16b_set (xtensa_insnbuf insn, uint32 val)
526 {
527 uint32 tie_t;
528 tie_t = (val << 31) >> 31;
529 insn[0] = (insn[0] & ~0x800) | (tie_t << 11);
530 }
531
532 static unsigned
533 Field_s_Slot_inst16b_get (const xtensa_insnbuf insn)
534 {
535 unsigned tie_t = 0;
536 tie_t = (tie_t << 4) | ((insn[0] << 24) >> 28);
537 return tie_t;
538 }
539
540 static void
541 Field_s_Slot_inst16b_set (xtensa_insnbuf insn, uint32 val)
542 {
543 uint32 tie_t;
544 tie_t = (val << 28) >> 28;
545 insn[0] = (insn[0] & ~0xf0) | (tie_t << 4);
546 }
547
548 static unsigned
549 Field_t_Slot_inst16a_get (const xtensa_insnbuf insn)
550 {
551 unsigned tie_t = 0;
552 tie_t = (tie_t << 4) | ((insn[0] << 20) >> 28);
553 return tie_t;
554 }
555
556 static void
557 Field_t_Slot_inst16a_set (xtensa_insnbuf insn, uint32 val)
558 {
559 uint32 tie_t;
560 tie_t = (val << 28) >> 28;
561 insn[0] = (insn[0] & ~0xf00) | (tie_t << 8);
562 }
563
564 static unsigned
565 Field_bbi4_Slot_inst_get (const xtensa_insnbuf insn)
566 {
567 unsigned tie_t = 0;
568 tie_t = (tie_t << 1) | ((insn[0] << 23) >> 31);
569 return tie_t;
570 }
571
572 static void
573 Field_bbi4_Slot_inst_set (xtensa_insnbuf insn, uint32 val)
574 {
575 uint32 tie_t;
576 tie_t = (val << 31) >> 31;
577 insn[0] = (insn[0] & ~0x100) | (tie_t << 8);
578 }
579
580 static unsigned
581 Field_bbi_Slot_inst_get (const xtensa_insnbuf insn)
582 {
583 unsigned tie_t = 0;
584 tie_t = (tie_t << 1) | ((insn[0] << 23) >> 31);
585 tie_t = (tie_t << 4) | ((insn[0] << 12) >> 28);
586 return tie_t;
587 }
588
589 static void
590 Field_bbi_Slot_inst_set (xtensa_insnbuf insn, uint32 val)
591 {
592 uint32 tie_t;
593 tie_t = (val << 28) >> 28;
594 insn[0] = (insn[0] & ~0xf0000) | (tie_t << 16);
595 tie_t = (val << 27) >> 31;
596 insn[0] = (insn[0] & ~0x100) | (tie_t << 8);
597 }
598
599 static unsigned
600 Field_imm12_Slot_inst_get (const xtensa_insnbuf insn)
601 {
602 unsigned tie_t = 0;
603 tie_t = (tie_t << 12) | ((insn[0] << 20) >> 20);
604 return tie_t;
605 }
606
607 static void
608 Field_imm12_Slot_inst_set (xtensa_insnbuf insn, uint32 val)
609 {
610 uint32 tie_t;
611 tie_t = (val << 20) >> 20;
612 insn[0] = (insn[0] & ~0xfff) | (tie_t << 0);
613 }
614
615 static unsigned
616 Field_imm8_Slot_inst_get (const xtensa_insnbuf insn)
617 {
618 unsigned tie_t = 0;
619 tie_t = (tie_t << 8) | ((insn[0] << 24) >> 24);
620 return tie_t;
621 }
622
623 static void
624 Field_imm8_Slot_inst_set (xtensa_insnbuf insn, uint32 val)
625 {
626 uint32 tie_t;
627 tie_t = (val << 24) >> 24;
628 insn[0] = (insn[0] & ~0xff) | (tie_t << 0);
629 }
630
631 static unsigned
632 Field_s_Slot_inst16a_get (const xtensa_insnbuf insn)
633 {
634 unsigned tie_t = 0;
635 tie_t = (tie_t << 4) | ((insn[0] << 24) >> 28);
636 return tie_t;
637 }
638
639 static void
640 Field_s_Slot_inst16a_set (xtensa_insnbuf insn, uint32 val)
641 {
642 uint32 tie_t;
643 tie_t = (val << 28) >> 28;
644 insn[0] = (insn[0] & ~0xf0) | (tie_t << 4);
645 }
646
647 static unsigned
648 Field_imm12b_Slot_inst_get (const xtensa_insnbuf insn)
649 {
650 unsigned tie_t = 0;
651 tie_t = (tie_t << 4) | ((insn[0] << 16) >> 28);
652 tie_t = (tie_t << 8) | ((insn[0] << 24) >> 24);
653 return tie_t;
654 }
655
656 static void
657 Field_imm12b_Slot_inst_set (xtensa_insnbuf insn, uint32 val)
658 {
659 uint32 tie_t;
660 tie_t = (val << 24) >> 24;
661 insn[0] = (insn[0] & ~0xff) | (tie_t << 0);
662 tie_t = (val << 20) >> 28;
663 insn[0] = (insn[0] & ~0xf000) | (tie_t << 12);
664 }
665
666 static unsigned
667 Field_imm16_Slot_inst_get (const xtensa_insnbuf insn)
668 {
669 unsigned tie_t = 0;
670 tie_t = (tie_t << 16) | ((insn[0] << 16) >> 16);
671 return tie_t;
672 }
673
674 static void
675 Field_imm16_Slot_inst_set (xtensa_insnbuf insn, uint32 val)
676 {
677 uint32 tie_t;
678 tie_t = (val << 16) >> 16;
679 insn[0] = (insn[0] & ~0xffff) | (tie_t << 0);
680 }
681
682 static unsigned
683 Field_offset_Slot_inst_get (const xtensa_insnbuf insn)
684 {
685 unsigned tie_t = 0;
686 tie_t = (tie_t << 18) | ((insn[0] << 14) >> 14);
687 return tie_t;
688 }
689
690 static void
691 Field_offset_Slot_inst_set (xtensa_insnbuf insn, uint32 val)
692 {
693 uint32 tie_t;
694 tie_t = (val << 14) >> 14;
695 insn[0] = (insn[0] & ~0x3ffff) | (tie_t << 0);
696 }
697
698 static unsigned
699 Field_r_Slot_inst16a_get (const xtensa_insnbuf insn)
700 {
701 unsigned tie_t = 0;
702 tie_t = (tie_t << 4) | ((insn[0] << 28) >> 28);
703 return tie_t;
704 }
705
706 static void
707 Field_r_Slot_inst16a_set (xtensa_insnbuf insn, uint32 val)
708 {
709 uint32 tie_t;
710 tie_t = (val << 28) >> 28;
711 insn[0] = (insn[0] & ~0xf) | (tie_t << 0);
712 }
713
714 static unsigned
715 Field_sa4_Slot_inst_get (const xtensa_insnbuf insn)
716 {
717 unsigned tie_t = 0;
718 tie_t = (tie_t << 1) | ((insn[0] << 31) >> 31);
719 return tie_t;
720 }
721
722 static void
723 Field_sa4_Slot_inst_set (xtensa_insnbuf insn, uint32 val)
724 {
725 uint32 tie_t;
726 tie_t = (val << 31) >> 31;
727 insn[0] = (insn[0] & ~0x1) | (tie_t << 0);
728 }
729
730 static unsigned
731 Field_sae4_Slot_inst_get (const xtensa_insnbuf insn)
732 {
733 unsigned tie_t = 0;
734 tie_t = (tie_t << 1) | ((insn[0] << 27) >> 31);
735 return tie_t;
736 }
737
738 static void
739 Field_sae4_Slot_inst_set (xtensa_insnbuf insn, uint32 val)
740 {
741 uint32 tie_t;
742 tie_t = (val << 31) >> 31;
743 insn[0] = (insn[0] & ~0x10) | (tie_t << 4);
744 }
745
746 static unsigned
747 Field_sae_Slot_inst_get (const xtensa_insnbuf insn)
748 {
749 unsigned tie_t = 0;
750 tie_t = (tie_t << 1) | ((insn[0] << 27) >> 31);
751 tie_t = (tie_t << 4) | ((insn[0] << 16) >> 28);
752 return tie_t;
753 }
754
755 static void
756 Field_sae_Slot_inst_set (xtensa_insnbuf insn, uint32 val)
757 {
758 uint32 tie_t;
759 tie_t = (val << 28) >> 28;
760 insn[0] = (insn[0] & ~0xf000) | (tie_t << 12);
761 tie_t = (val << 27) >> 31;
762 insn[0] = (insn[0] & ~0x10) | (tie_t << 4);
763 }
764
765 static unsigned
766 Field_sal_Slot_inst_get (const xtensa_insnbuf insn)
767 {
768 unsigned tie_t = 0;
769 tie_t = (tie_t << 1) | ((insn[0] << 31) >> 31);
770 tie_t = (tie_t << 4) | ((insn[0] << 12) >> 28);
771 return tie_t;
772 }
773
774 static void
775 Field_sal_Slot_inst_set (xtensa_insnbuf insn, uint32 val)
776 {
777 uint32 tie_t;
778 tie_t = (val << 28) >> 28;
779 insn[0] = (insn[0] & ~0xf0000) | (tie_t << 16);
780 tie_t = (val << 27) >> 31;
781 insn[0] = (insn[0] & ~0x1) | (tie_t << 0);
782 }
783
784 static unsigned
785 Field_sargt_Slot_inst_get (const xtensa_insnbuf insn)
786 {
787 unsigned tie_t = 0;
788 tie_t = (tie_t << 1) | ((insn[0] << 31) >> 31);
789 tie_t = (tie_t << 4) | ((insn[0] << 16) >> 28);
790 return tie_t;
791 }
792
793 static void
794 Field_sargt_Slot_inst_set (xtensa_insnbuf insn, uint32 val)
795 {
796 uint32 tie_t;
797 tie_t = (val << 28) >> 28;
798 insn[0] = (insn[0] & ~0xf000) | (tie_t << 12);
799 tie_t = (val << 27) >> 31;
800 insn[0] = (insn[0] & ~0x1) | (tie_t << 0);
801 }
802
803 static unsigned
804 Field_sas4_Slot_inst_get (const xtensa_insnbuf insn)
805 {
806 unsigned tie_t = 0;
807 tie_t = (tie_t << 1) | ((insn[0] << 15) >> 31);
808 return tie_t;
809 }
810
811 static void
812 Field_sas4_Slot_inst_set (xtensa_insnbuf insn, uint32 val)
813 {
814 uint32 tie_t;
815 tie_t = (val << 31) >> 31;
816 insn[0] = (insn[0] & ~0x10000) | (tie_t << 16);
817 }
818
819 static unsigned
820 Field_sas_Slot_inst_get (const xtensa_insnbuf insn)
821 {
822 unsigned tie_t = 0;
823 tie_t = (tie_t << 1) | ((insn[0] << 15) >> 31);
824 tie_t = (tie_t << 4) | ((insn[0] << 16) >> 28);
825 return tie_t;
826 }
827
828 static void
829 Field_sas_Slot_inst_set (xtensa_insnbuf insn, uint32 val)
830 {
831 uint32 tie_t;
832 tie_t = (val << 28) >> 28;
833 insn[0] = (insn[0] & ~0xf000) | (tie_t << 12);
834 tie_t = (val << 27) >> 31;
835 insn[0] = (insn[0] & ~0x10000) | (tie_t << 16);
836 }
837
838 static unsigned
839 Field_sr_Slot_inst16a_get (const xtensa_insnbuf insn)
840 {
841 unsigned tie_t = 0;
842 tie_t = (tie_t << 4) | ((insn[0] << 24) >> 28);
843 tie_t = (tie_t << 4) | ((insn[0] << 28) >> 28);
844 return tie_t;
845 }
846
847 static void
848 Field_sr_Slot_inst16a_set (xtensa_insnbuf insn, uint32 val)
849 {
850 uint32 tie_t;
851 tie_t = (val << 28) >> 28;
852 insn[0] = (insn[0] & ~0xf) | (tie_t << 0);
853 tie_t = (val << 24) >> 28;
854 insn[0] = (insn[0] & ~0xf0) | (tie_t << 4);
855 }
856
857 static unsigned
858 Field_sr_Slot_inst16b_get (const xtensa_insnbuf insn)
859 {
860 unsigned tie_t = 0;
861 tie_t = (tie_t << 4) | ((insn[0] << 24) >> 28);
862 tie_t = (tie_t << 4) | ((insn[0] << 28) >> 28);
863 return tie_t;
864 }
865
866 static void
867 Field_sr_Slot_inst16b_set (xtensa_insnbuf insn, uint32 val)
868 {
869 uint32 tie_t;
870 tie_t = (val << 28) >> 28;
871 insn[0] = (insn[0] & ~0xf) | (tie_t << 0);
872 tie_t = (val << 24) >> 28;
873 insn[0] = (insn[0] & ~0xf0) | (tie_t << 4);
874 }
875
876 static unsigned
877 Field_st_Slot_inst16a_get (const xtensa_insnbuf insn)
878 {
879 unsigned tie_t = 0;
880 tie_t = (tie_t << 4) | ((insn[0] << 24) >> 28);
881 tie_t = (tie_t << 4) | ((insn[0] << 20) >> 28);
882 return tie_t;
883 }
884
885 static void
886 Field_st_Slot_inst16a_set (xtensa_insnbuf insn, uint32 val)
887 {
888 uint32 tie_t;
889 tie_t = (val << 28) >> 28;
890 insn[0] = (insn[0] & ~0xf00) | (tie_t << 8);
891 tie_t = (val << 24) >> 28;
892 insn[0] = (insn[0] & ~0xf0) | (tie_t << 4);
893 }
894
895 static unsigned
896 Field_st_Slot_inst16b_get (const xtensa_insnbuf insn)
897 {
898 unsigned tie_t = 0;
899 tie_t = (tie_t << 4) | ((insn[0] << 24) >> 28);
900 tie_t = (tie_t << 4) | ((insn[0] << 20) >> 28);
901 return tie_t;
902 }
903
904 static void
905 Field_st_Slot_inst16b_set (xtensa_insnbuf insn, uint32 val)
906 {
907 uint32 tie_t;
908 tie_t = (val << 28) >> 28;
909 insn[0] = (insn[0] & ~0xf00) | (tie_t << 8);
910 tie_t = (val << 24) >> 28;
911 insn[0] = (insn[0] & ~0xf0) | (tie_t << 4);
912 }
913
914 static unsigned
915 Field_imm4_Slot_inst_get (const xtensa_insnbuf insn)
916 {
917 unsigned tie_t = 0;
918 tie_t = (tie_t << 4) | ((insn[0] << 20) >> 28);
919 return tie_t;
920 }
921
922 static void
923 Field_imm4_Slot_inst_set (xtensa_insnbuf insn, uint32 val)
924 {
925 uint32 tie_t;
926 tie_t = (val << 28) >> 28;
927 insn[0] = (insn[0] & ~0xf00) | (tie_t << 8);
928 }
929
930 static unsigned
931 Field_imm4_Slot_inst16a_get (const xtensa_insnbuf insn)
932 {
933 unsigned tie_t = 0;
934 tie_t = (tie_t << 4) | ((insn[0] << 28) >> 28);
935 return tie_t;
936 }
937
938 static void
939 Field_imm4_Slot_inst16a_set (xtensa_insnbuf insn, uint32 val)
940 {
941 uint32 tie_t;
942 tie_t = (val << 28) >> 28;
943 insn[0] = (insn[0] & ~0xf) | (tie_t << 0);
944 }
945
946 static unsigned
947 Field_imm4_Slot_inst16b_get (const xtensa_insnbuf insn)
948 {
949 unsigned tie_t = 0;
950 tie_t = (tie_t << 4) | ((insn[0] << 28) >> 28);
951 return tie_t;
952 }
953
954 static void
955 Field_imm4_Slot_inst16b_set (xtensa_insnbuf insn, uint32 val)
956 {
957 uint32 tie_t;
958 tie_t = (val << 28) >> 28;
959 insn[0] = (insn[0] & ~0xf) | (tie_t << 0);
960 }
961
962 static unsigned
963 Field_mn_Slot_inst_get (const xtensa_insnbuf insn)
964 {
965 unsigned tie_t = 0;
966 tie_t = (tie_t << 2) | ((insn[0] << 12) >> 30);
967 tie_t = (tie_t << 2) | ((insn[0] << 14) >> 30);
968 return tie_t;
969 }
970
971 static void
972 Field_mn_Slot_inst_set (xtensa_insnbuf insn, uint32 val)
973 {
974 uint32 tie_t;
975 tie_t = (val << 30) >> 30;
976 insn[0] = (insn[0] & ~0x30000) | (tie_t << 16);
977 tie_t = (val << 28) >> 30;
978 insn[0] = (insn[0] & ~0xc0000) | (tie_t << 18);
979 }
980
981 static unsigned
982 Field_i_Slot_inst16a_get (const xtensa_insnbuf insn)
983 {
984 unsigned tie_t = 0;
985 tie_t = (tie_t << 1) | ((insn[0] << 20) >> 31);
986 return tie_t;
987 }
988
989 static void
990 Field_i_Slot_inst16a_set (xtensa_insnbuf insn, uint32 val)
991 {
992 uint32 tie_t;
993 tie_t = (val << 31) >> 31;
994 insn[0] = (insn[0] & ~0x800) | (tie_t << 11);
995 }
996
997 static unsigned
998 Field_imm6lo_Slot_inst16a_get (const xtensa_insnbuf insn)
999 {
1000 unsigned tie_t = 0;
1001 tie_t = (tie_t << 4) | ((insn[0] << 28) >> 28);
1002 return tie_t;
1003 }
1004
1005 static void
1006 Field_imm6lo_Slot_inst16a_set (xtensa_insnbuf insn, uint32 val)
1007 {
1008 uint32 tie_t;
1009 tie_t = (val << 28) >> 28;
1010 insn[0] = (insn[0] & ~0xf) | (tie_t << 0);
1011 }
1012
1013 static unsigned
1014 Field_imm6lo_Slot_inst16b_get (const xtensa_insnbuf insn)
1015 {
1016 unsigned tie_t = 0;
1017 tie_t = (tie_t << 4) | ((insn[0] << 28) >> 28);
1018 return tie_t;
1019 }
1020
1021 static void
1022 Field_imm6lo_Slot_inst16b_set (xtensa_insnbuf insn, uint32 val)
1023 {
1024 uint32 tie_t;
1025 tie_t = (val << 28) >> 28;
1026 insn[0] = (insn[0] & ~0xf) | (tie_t << 0);
1027 }
1028
1029 static unsigned
1030 Field_imm6hi_Slot_inst16a_get (const xtensa_insnbuf insn)
1031 {
1032 unsigned tie_t = 0;
1033 tie_t = (tie_t << 2) | ((insn[0] << 22) >> 30);
1034 return tie_t;
1035 }
1036
1037 static void
1038 Field_imm6hi_Slot_inst16a_set (xtensa_insnbuf insn, uint32 val)
1039 {
1040 uint32 tie_t;
1041 tie_t = (val << 30) >> 30;
1042 insn[0] = (insn[0] & ~0x300) | (tie_t << 8);
1043 }
1044
1045 static unsigned
1046 Field_imm6hi_Slot_inst16b_get (const xtensa_insnbuf insn)
1047 {
1048 unsigned tie_t = 0;
1049 tie_t = (tie_t << 2) | ((insn[0] << 22) >> 30);
1050 return tie_t;
1051 }
1052
1053 static void
1054 Field_imm6hi_Slot_inst16b_set (xtensa_insnbuf insn, uint32 val)
1055 {
1056 uint32 tie_t;
1057 tie_t = (val << 30) >> 30;
1058 insn[0] = (insn[0] & ~0x300) | (tie_t << 8);
1059 }
1060
1061 static unsigned
1062 Field_imm7lo_Slot_inst16a_get (const xtensa_insnbuf insn)
1063 {
1064 unsigned tie_t = 0;
1065 tie_t = (tie_t << 4) | ((insn[0] << 28) >> 28);
1066 return tie_t;
1067 }
1068
1069 static void
1070 Field_imm7lo_Slot_inst16a_set (xtensa_insnbuf insn, uint32 val)
1071 {
1072 uint32 tie_t;
1073 tie_t = (val << 28) >> 28;
1074 insn[0] = (insn[0] & ~0xf) | (tie_t << 0);
1075 }
1076
1077 static unsigned
1078 Field_imm7lo_Slot_inst16b_get (const xtensa_insnbuf insn)
1079 {
1080 unsigned tie_t = 0;
1081 tie_t = (tie_t << 4) | ((insn[0] << 28) >> 28);
1082 return tie_t;
1083 }
1084
1085 static void
1086 Field_imm7lo_Slot_inst16b_set (xtensa_insnbuf insn, uint32 val)
1087 {
1088 uint32 tie_t;
1089 tie_t = (val << 28) >> 28;
1090 insn[0] = (insn[0] & ~0xf) | (tie_t << 0);
1091 }
1092
1093 static unsigned
1094 Field_imm7hi_Slot_inst16a_get (const xtensa_insnbuf insn)
1095 {
1096 unsigned tie_t = 0;
1097 tie_t = (tie_t << 3) | ((insn[0] << 21) >> 29);
1098 return tie_t;
1099 }
1100
1101 static void
1102 Field_imm7hi_Slot_inst16a_set (xtensa_insnbuf insn, uint32 val)
1103 {
1104 uint32 tie_t;
1105 tie_t = (val << 29) >> 29;
1106 insn[0] = (insn[0] & ~0x700) | (tie_t << 8);
1107 }
1108
1109 static unsigned
1110 Field_imm7hi_Slot_inst16b_get (const xtensa_insnbuf insn)
1111 {
1112 unsigned tie_t = 0;
1113 tie_t = (tie_t << 3) | ((insn[0] << 21) >> 29);
1114 return tie_t;
1115 }
1116
1117 static void
1118 Field_imm7hi_Slot_inst16b_set (xtensa_insnbuf insn, uint32 val)
1119 {
1120 uint32 tie_t;
1121 tie_t = (val << 29) >> 29;
1122 insn[0] = (insn[0] & ~0x700) | (tie_t << 8);
1123 }
1124
1125 static unsigned
1126 Field_z_Slot_inst16a_get (const xtensa_insnbuf insn)
1127 {
1128 unsigned tie_t = 0;
1129 tie_t = (tie_t << 1) | ((insn[0] << 21) >> 31);
1130 return tie_t;
1131 }
1132
1133 static void
1134 Field_z_Slot_inst16a_set (xtensa_insnbuf insn, uint32 val)
1135 {
1136 uint32 tie_t;
1137 tie_t = (val << 31) >> 31;
1138 insn[0] = (insn[0] & ~0x400) | (tie_t << 10);
1139 }
1140
1141 static unsigned
1142 Field_imm6_Slot_inst16a_get (const xtensa_insnbuf insn)
1143 {
1144 unsigned tie_t = 0;
1145 tie_t = (tie_t << 2) | ((insn[0] << 22) >> 30);
1146 tie_t = (tie_t << 4) | ((insn[0] << 28) >> 28);
1147 return tie_t;
1148 }
1149
1150 static void
1151 Field_imm6_Slot_inst16a_set (xtensa_insnbuf insn, uint32 val)
1152 {
1153 uint32 tie_t;
1154 tie_t = (val << 28) >> 28;
1155 insn[0] = (insn[0] & ~0xf) | (tie_t << 0);
1156 tie_t = (val << 26) >> 30;
1157 insn[0] = (insn[0] & ~0x300) | (tie_t << 8);
1158 }
1159
1160 static unsigned
1161 Field_imm6_Slot_inst16b_get (const xtensa_insnbuf insn)
1162 {
1163 unsigned tie_t = 0;
1164 tie_t = (tie_t << 2) | ((insn[0] << 22) >> 30);
1165 tie_t = (tie_t << 4) | ((insn[0] << 28) >> 28);
1166 return tie_t;
1167 }
1168
1169 static void
1170 Field_imm6_Slot_inst16b_set (xtensa_insnbuf insn, uint32 val)
1171 {
1172 uint32 tie_t;
1173 tie_t = (val << 28) >> 28;
1174 insn[0] = (insn[0] & ~0xf) | (tie_t << 0);
1175 tie_t = (val << 26) >> 30;
1176 insn[0] = (insn[0] & ~0x300) | (tie_t << 8);
1177 }
1178
1179 static unsigned
1180 Field_imm7_Slot_inst16a_get (const xtensa_insnbuf insn)
1181 {
1182 unsigned tie_t = 0;
1183 tie_t = (tie_t << 3) | ((insn[0] << 21) >> 29);
1184 tie_t = (tie_t << 4) | ((insn[0] << 28) >> 28);
1185 return tie_t;
1186 }
1187
1188 static void
1189 Field_imm7_Slot_inst16a_set (xtensa_insnbuf insn, uint32 val)
1190 {
1191 uint32 tie_t;
1192 tie_t = (val << 28) >> 28;
1193 insn[0] = (insn[0] & ~0xf) | (tie_t << 0);
1194 tie_t = (val << 25) >> 29;
1195 insn[0] = (insn[0] & ~0x700) | (tie_t << 8);
1196 }
1197
1198 static unsigned
1199 Field_imm7_Slot_inst16b_get (const xtensa_insnbuf insn)
1200 {
1201 unsigned tie_t = 0;
1202 tie_t = (tie_t << 3) | ((insn[0] << 21) >> 29);
1203 tie_t = (tie_t << 4) | ((insn[0] << 28) >> 28);
1204 return tie_t;
1205 }
1206
1207 static void
1208 Field_imm7_Slot_inst16b_set (xtensa_insnbuf insn, uint32 val)
1209 {
1210 uint32 tie_t;
1211 tie_t = (val << 28) >> 28;
1212 insn[0] = (insn[0] & ~0xf) | (tie_t << 0);
1213 tie_t = (val << 25) >> 29;
1214 insn[0] = (insn[0] & ~0x700) | (tie_t << 8);
1215 }
1216
1217 static unsigned
1218 Field_xt_wbr15_imm_Slot_inst_get (const xtensa_insnbuf insn)
1219 {
1220 unsigned tie_t = 0;
1221 tie_t = (tie_t << 15) | ((insn[0] << 8) >> 17);
1222 return tie_t;
1223 }
1224
1225 static void
1226 Field_xt_wbr15_imm_Slot_inst_set (xtensa_insnbuf insn, uint32 val)
1227 {
1228 uint32 tie_t;
1229 tie_t = (val << 17) >> 17;
1230 insn[0] = (insn[0] & ~0xfffe00) | (tie_t << 9);
1231 }
1232
1233 static unsigned
1234 Field_xt_wbr18_imm_Slot_inst_get (const xtensa_insnbuf insn)
1235 {
1236 unsigned tie_t = 0;
1237 tie_t = (tie_t << 18) | ((insn[0] << 8) >> 14);
1238 return tie_t;
1239 }
1240
1241 static void
1242 Field_xt_wbr18_imm_Slot_inst_set (xtensa_insnbuf insn, uint32 val)
1243 {
1244 uint32 tie_t;
1245 tie_t = (val << 14) >> 14;
1246 insn[0] = (insn[0] & ~0xffffc0) | (tie_t << 6);
1247 }
1248
1249 static void
1250 Implicit_Field_set (xtensa_insnbuf insn ATTRIBUTE_UNUSED,
1251 uint32 val ATTRIBUTE_UNUSED)
1252 {
1253 /* Do nothing. */
1254 }
1255
1256 static unsigned
1257 Implicit_Field_ar0_get (const xtensa_insnbuf insn ATTRIBUTE_UNUSED)
1258 {
1259 return 0;
1260 }
1261
1262 static unsigned
1263 Implicit_Field_ar4_get (const xtensa_insnbuf insn ATTRIBUTE_UNUSED)
1264 {
1265 return 4;
1266 }
1267
1268 static unsigned
1269 Implicit_Field_ar8_get (const xtensa_insnbuf insn ATTRIBUTE_UNUSED)
1270 {
1271 return 8;
1272 }
1273
1274 static unsigned
1275 Implicit_Field_ar12_get (const xtensa_insnbuf insn ATTRIBUTE_UNUSED)
1276 {
1277 return 12;
1278 }
1279
1280 enum xtensa_field_id {
1281 FIELD_t,
1282 FIELD_bbi4,
1283 FIELD_bbi,
1284 FIELD_imm12,
1285 FIELD_imm8,
1286 FIELD_s,
1287 FIELD_imm12b,
1288 FIELD_imm16,
1289 FIELD_m,
1290 FIELD_n,
1291 FIELD_offset,
1292 FIELD_op0,
1293 FIELD_op1,
1294 FIELD_op2,
1295 FIELD_r,
1296 FIELD_sa4,
1297 FIELD_sae4,
1298 FIELD_sae,
1299 FIELD_sal,
1300 FIELD_sargt,
1301 FIELD_sas4,
1302 FIELD_sas,
1303 FIELD_sr,
1304 FIELD_st,
1305 FIELD_thi3,
1306 FIELD_imm4,
1307 FIELD_mn,
1308 FIELD_i,
1309 FIELD_imm6lo,
1310 FIELD_imm6hi,
1311 FIELD_imm7lo,
1312 FIELD_imm7hi,
1313 FIELD_z,
1314 FIELD_imm6,
1315 FIELD_imm7,
1316 FIELD_xt_wbr15_imm,
1317 FIELD_xt_wbr18_imm,
1318 FIELD__ar0,
1319 FIELD__ar4,
1320 FIELD__ar8,
1321 FIELD__ar12
1322 };
1323
1324 \f
1325 /* Functional units. */
1326
1327 static xtensa_funcUnit_internal funcUnits[] = {
1328
1329 };
1330
1331 \f
1332 /* Register files. */
1333
1334 enum xtensa_regfile_id {
1335 REGFILE_AR
1336 };
1337
1338 static xtensa_regfile_internal regfiles[] = {
1339 { "AR", "a", REGFILE_AR, 32, 32 }
1340 };
1341
1342 \f
1343 /* Interfaces. */
1344
1345 static xtensa_interface_internal interfaces[] = {
1346
1347 };
1348
1349 \f
1350 /* Constant tables. */
1351
1352 /* constant table ai4c */
1353 static const unsigned CONST_TBL_ai4c_0[] = {
1354 0xffffffff,
1355 0x1,
1356 0x2,
1357 0x3,
1358 0x4,
1359 0x5,
1360 0x6,
1361 0x7,
1362 0x8,
1363 0x9,
1364 0xa,
1365 0xb,
1366 0xc,
1367 0xd,
1368 0xe,
1369 0xf,
1370 0
1371 };
1372
1373 /* constant table b4c */
1374 static const unsigned CONST_TBL_b4c_0[] = {
1375 0xffffffff,
1376 0x1,
1377 0x2,
1378 0x3,
1379 0x4,
1380 0x5,
1381 0x6,
1382 0x7,
1383 0x8,
1384 0xa,
1385 0xc,
1386 0x10,
1387 0x20,
1388 0x40,
1389 0x80,
1390 0x100,
1391 0
1392 };
1393
1394 /* constant table b4cu */
1395 static const unsigned CONST_TBL_b4cu_0[] = {
1396 0x8000,
1397 0x10000,
1398 0x2,
1399 0x3,
1400 0x4,
1401 0x5,
1402 0x6,
1403 0x7,
1404 0x8,
1405 0xa,
1406 0xc,
1407 0x10,
1408 0x20,
1409 0x40,
1410 0x80,
1411 0x100,
1412 0
1413 };
1414
1415 \f
1416 /* Instruction operands. */
1417
1418 static int
1419 Operand_soffsetx4_decode (uint32 *valp)
1420 {
1421 unsigned soffsetx4_0, offset_0;
1422 offset_0 = *valp & 0x3ffff;
1423 soffsetx4_0 = 0x4 + ((((int) offset_0 << 14) >> 14) << 2);
1424 *valp = soffsetx4_0;
1425 return 0;
1426 }
1427
1428 static int
1429 Operand_soffsetx4_encode (uint32 *valp)
1430 {
1431 unsigned offset_0, soffsetx4_0;
1432 soffsetx4_0 = *valp;
1433 offset_0 = ((soffsetx4_0 - 0x4) >> 2) & 0x3ffff;
1434 *valp = offset_0;
1435 return 0;
1436 }
1437
1438 static int
1439 Operand_soffsetx4_ator (uint32 *valp, uint32 pc)
1440 {
1441 *valp -= (pc & ~0x3);
1442 return 0;
1443 }
1444
1445 static int
1446 Operand_soffsetx4_rtoa (uint32 *valp, uint32 pc)
1447 {
1448 *valp += (pc & ~0x3);
1449 return 0;
1450 }
1451
1452 static int
1453 Operand_uimm12x8_decode (uint32 *valp)
1454 {
1455 unsigned uimm12x8_0, imm12_0;
1456 imm12_0 = *valp & 0xfff;
1457 uimm12x8_0 = imm12_0 << 3;
1458 *valp = uimm12x8_0;
1459 return 0;
1460 }
1461
1462 static int
1463 Operand_uimm12x8_encode (uint32 *valp)
1464 {
1465 unsigned imm12_0, uimm12x8_0;
1466 uimm12x8_0 = *valp;
1467 imm12_0 = ((uimm12x8_0 >> 3) & 0xfff);
1468 *valp = imm12_0;
1469 return 0;
1470 }
1471
1472 static int
1473 Operand_simm4_decode (uint32 *valp)
1474 {
1475 unsigned simm4_0, mn_0;
1476 mn_0 = *valp & 0xf;
1477 simm4_0 = ((int) mn_0 << 28) >> 28;
1478 *valp = simm4_0;
1479 return 0;
1480 }
1481
1482 static int
1483 Operand_simm4_encode (uint32 *valp)
1484 {
1485 unsigned mn_0, simm4_0;
1486 simm4_0 = *valp;
1487 mn_0 = (simm4_0 & 0xf);
1488 *valp = mn_0;
1489 return 0;
1490 }
1491
1492 static int
1493 Operand_arr_decode (uint32 *valp ATTRIBUTE_UNUSED)
1494 {
1495 return 0;
1496 }
1497
1498 static int
1499 Operand_arr_encode (uint32 *valp)
1500 {
1501 int error;
1502 error = (*valp & ~0xf) != 0;
1503 return error;
1504 }
1505
1506 static int
1507 Operand_ars_decode (uint32 *valp ATTRIBUTE_UNUSED)
1508 {
1509 return 0;
1510 }
1511
1512 static int
1513 Operand_ars_encode (uint32 *valp)
1514 {
1515 int error;
1516 error = (*valp & ~0xf) != 0;
1517 return error;
1518 }
1519
1520 static int
1521 Operand_art_decode (uint32 *valp ATTRIBUTE_UNUSED)
1522 {
1523 return 0;
1524 }
1525
1526 static int
1527 Operand_art_encode (uint32 *valp)
1528 {
1529 int error;
1530 error = (*valp & ~0xf) != 0;
1531 return error;
1532 }
1533
1534 static int
1535 Operand_ar0_decode (uint32 *valp ATTRIBUTE_UNUSED)
1536 {
1537 return 0;
1538 }
1539
1540 static int
1541 Operand_ar0_encode (uint32 *valp)
1542 {
1543 int error;
1544 error = (*valp & ~0x1f) != 0;
1545 return error;
1546 }
1547
1548 static int
1549 Operand_ar4_decode (uint32 *valp ATTRIBUTE_UNUSED)
1550 {
1551 return 0;
1552 }
1553
1554 static int
1555 Operand_ar4_encode (uint32 *valp)
1556 {
1557 int error;
1558 error = (*valp & ~0x1f) != 0;
1559 return error;
1560 }
1561
1562 static int
1563 Operand_ar8_decode (uint32 *valp ATTRIBUTE_UNUSED)
1564 {
1565 return 0;
1566 }
1567
1568 static int
1569 Operand_ar8_encode (uint32 *valp)
1570 {
1571 int error;
1572 error = (*valp & ~0x1f) != 0;
1573 return error;
1574 }
1575
1576 static int
1577 Operand_ar12_decode (uint32 *valp ATTRIBUTE_UNUSED)
1578 {
1579 return 0;
1580 }
1581
1582 static int
1583 Operand_ar12_encode (uint32 *valp)
1584 {
1585 int error;
1586 error = (*valp & ~0x1f) != 0;
1587 return error;
1588 }
1589
1590 static int
1591 Operand_ars_entry_decode (uint32 *valp ATTRIBUTE_UNUSED)
1592 {
1593 return 0;
1594 }
1595
1596 static int
1597 Operand_ars_entry_encode (uint32 *valp)
1598 {
1599 int error;
1600 error = (*valp & ~0x1f) != 0;
1601 return error;
1602 }
1603
1604 static int
1605 Operand_immrx4_decode (uint32 *valp)
1606 {
1607 unsigned immrx4_0, r_0;
1608 r_0 = *valp & 0xf;
1609 immrx4_0 = (((0xfffffff) << 4) | r_0) << 2;
1610 *valp = immrx4_0;
1611 return 0;
1612 }
1613
1614 static int
1615 Operand_immrx4_encode (uint32 *valp)
1616 {
1617 unsigned r_0, immrx4_0;
1618 immrx4_0 = *valp;
1619 r_0 = ((immrx4_0 >> 2) & 0xf);
1620 *valp = r_0;
1621 return 0;
1622 }
1623
1624 static int
1625 Operand_lsi4x4_decode (uint32 *valp)
1626 {
1627 unsigned lsi4x4_0, r_0;
1628 r_0 = *valp & 0xf;
1629 lsi4x4_0 = r_0 << 2;
1630 *valp = lsi4x4_0;
1631 return 0;
1632 }
1633
1634 static int
1635 Operand_lsi4x4_encode (uint32 *valp)
1636 {
1637 unsigned r_0, lsi4x4_0;
1638 lsi4x4_0 = *valp;
1639 r_0 = ((lsi4x4_0 >> 2) & 0xf);
1640 *valp = r_0;
1641 return 0;
1642 }
1643
1644 static int
1645 Operand_simm7_decode (uint32 *valp)
1646 {
1647 unsigned simm7_0, imm7_0;
1648 imm7_0 = *valp & 0x7f;
1649 simm7_0 = ((((-((((imm7_0 >> 6) & 1)) & (((imm7_0 >> 5) & 1)))) & 0x1ffffff)) << 7) | imm7_0;
1650 *valp = simm7_0;
1651 return 0;
1652 }
1653
1654 static int
1655 Operand_simm7_encode (uint32 *valp)
1656 {
1657 unsigned imm7_0, simm7_0;
1658 simm7_0 = *valp;
1659 imm7_0 = (simm7_0 & 0x7f);
1660 *valp = imm7_0;
1661 return 0;
1662 }
1663
1664 static int
1665 Operand_uimm6_decode (uint32 *valp)
1666 {
1667 unsigned uimm6_0, imm6_0;
1668 imm6_0 = *valp & 0x3f;
1669 uimm6_0 = 0x4 + (((0) << 6) | imm6_0);
1670 *valp = uimm6_0;
1671 return 0;
1672 }
1673
1674 static int
1675 Operand_uimm6_encode (uint32 *valp)
1676 {
1677 unsigned imm6_0, uimm6_0;
1678 uimm6_0 = *valp;
1679 imm6_0 = (uimm6_0 - 0x4) & 0x3f;
1680 *valp = imm6_0;
1681 return 0;
1682 }
1683
1684 static int
1685 Operand_uimm6_ator (uint32 *valp, uint32 pc)
1686 {
1687 *valp -= pc;
1688 return 0;
1689 }
1690
1691 static int
1692 Operand_uimm6_rtoa (uint32 *valp, uint32 pc)
1693 {
1694 *valp += pc;
1695 return 0;
1696 }
1697
1698 static int
1699 Operand_ai4const_decode (uint32 *valp)
1700 {
1701 unsigned ai4const_0, t_0;
1702 t_0 = *valp & 0xf;
1703 ai4const_0 = CONST_TBL_ai4c_0[t_0 & 0xf];
1704 *valp = ai4const_0;
1705 return 0;
1706 }
1707
1708 static int
1709 Operand_ai4const_encode (uint32 *valp)
1710 {
1711 unsigned t_0, ai4const_0;
1712 ai4const_0 = *valp;
1713 switch (ai4const_0)
1714 {
1715 case 0xffffffff: t_0 = 0; break;
1716 case 0x1: t_0 = 0x1; break;
1717 case 0x2: t_0 = 0x2; break;
1718 case 0x3: t_0 = 0x3; break;
1719 case 0x4: t_0 = 0x4; break;
1720 case 0x5: t_0 = 0x5; break;
1721 case 0x6: t_0 = 0x6; break;
1722 case 0x7: t_0 = 0x7; break;
1723 case 0x8: t_0 = 0x8; break;
1724 case 0x9: t_0 = 0x9; break;
1725 case 0xa: t_0 = 0xa; break;
1726 case 0xb: t_0 = 0xb; break;
1727 case 0xc: t_0 = 0xc; break;
1728 case 0xd: t_0 = 0xd; break;
1729 case 0xe: t_0 = 0xe; break;
1730 default: t_0 = 0xf; break;
1731 }
1732 *valp = t_0;
1733 return 0;
1734 }
1735
1736 static int
1737 Operand_b4const_decode (uint32 *valp)
1738 {
1739 unsigned b4const_0, r_0;
1740 r_0 = *valp & 0xf;
1741 b4const_0 = CONST_TBL_b4c_0[r_0 & 0xf];
1742 *valp = b4const_0;
1743 return 0;
1744 }
1745
1746 static int
1747 Operand_b4const_encode (uint32 *valp)
1748 {
1749 unsigned r_0, b4const_0;
1750 b4const_0 = *valp;
1751 switch (b4const_0)
1752 {
1753 case 0xffffffff: r_0 = 0; break;
1754 case 0x1: r_0 = 0x1; break;
1755 case 0x2: r_0 = 0x2; break;
1756 case 0x3: r_0 = 0x3; break;
1757 case 0x4: r_0 = 0x4; break;
1758 case 0x5: r_0 = 0x5; break;
1759 case 0x6: r_0 = 0x6; break;
1760 case 0x7: r_0 = 0x7; break;
1761 case 0x8: r_0 = 0x8; break;
1762 case 0xa: r_0 = 0x9; break;
1763 case 0xc: r_0 = 0xa; break;
1764 case 0x10: r_0 = 0xb; break;
1765 case 0x20: r_0 = 0xc; break;
1766 case 0x40: r_0 = 0xd; break;
1767 case 0x80: r_0 = 0xe; break;
1768 default: r_0 = 0xf; break;
1769 }
1770 *valp = r_0;
1771 return 0;
1772 }
1773
1774 static int
1775 Operand_b4constu_decode (uint32 *valp)
1776 {
1777 unsigned b4constu_0, r_0;
1778 r_0 = *valp & 0xf;
1779 b4constu_0 = CONST_TBL_b4cu_0[r_0 & 0xf];
1780 *valp = b4constu_0;
1781 return 0;
1782 }
1783
1784 static int
1785 Operand_b4constu_encode (uint32 *valp)
1786 {
1787 unsigned r_0, b4constu_0;
1788 b4constu_0 = *valp;
1789 switch (b4constu_0)
1790 {
1791 case 0x8000: r_0 = 0; break;
1792 case 0x10000: r_0 = 0x1; break;
1793 case 0x2: r_0 = 0x2; break;
1794 case 0x3: r_0 = 0x3; break;
1795 case 0x4: r_0 = 0x4; break;
1796 case 0x5: r_0 = 0x5; break;
1797 case 0x6: r_0 = 0x6; break;
1798 case 0x7: r_0 = 0x7; break;
1799 case 0x8: r_0 = 0x8; break;
1800 case 0xa: r_0 = 0x9; break;
1801 case 0xc: r_0 = 0xa; break;
1802 case 0x10: r_0 = 0xb; break;
1803 case 0x20: r_0 = 0xc; break;
1804 case 0x40: r_0 = 0xd; break;
1805 case 0x80: r_0 = 0xe; break;
1806 default: r_0 = 0xf; break;
1807 }
1808 *valp = r_0;
1809 return 0;
1810 }
1811
1812 static int
1813 Operand_uimm8_decode (uint32 *valp)
1814 {
1815 unsigned uimm8_0, imm8_0;
1816 imm8_0 = *valp & 0xff;
1817 uimm8_0 = imm8_0;
1818 *valp = uimm8_0;
1819 return 0;
1820 }
1821
1822 static int
1823 Operand_uimm8_encode (uint32 *valp)
1824 {
1825 unsigned imm8_0, uimm8_0;
1826 uimm8_0 = *valp;
1827 imm8_0 = (uimm8_0 & 0xff);
1828 *valp = imm8_0;
1829 return 0;
1830 }
1831
1832 static int
1833 Operand_uimm8x2_decode (uint32 *valp)
1834 {
1835 unsigned uimm8x2_0, imm8_0;
1836 imm8_0 = *valp & 0xff;
1837 uimm8x2_0 = imm8_0 << 1;
1838 *valp = uimm8x2_0;
1839 return 0;
1840 }
1841
1842 static int
1843 Operand_uimm8x2_encode (uint32 *valp)
1844 {
1845 unsigned imm8_0, uimm8x2_0;
1846 uimm8x2_0 = *valp;
1847 imm8_0 = ((uimm8x2_0 >> 1) & 0xff);
1848 *valp = imm8_0;
1849 return 0;
1850 }
1851
1852 static int
1853 Operand_uimm8x4_decode (uint32 *valp)
1854 {
1855 unsigned uimm8x4_0, imm8_0;
1856 imm8_0 = *valp & 0xff;
1857 uimm8x4_0 = imm8_0 << 2;
1858 *valp = uimm8x4_0;
1859 return 0;
1860 }
1861
1862 static int
1863 Operand_uimm8x4_encode (uint32 *valp)
1864 {
1865 unsigned imm8_0, uimm8x4_0;
1866 uimm8x4_0 = *valp;
1867 imm8_0 = ((uimm8x4_0 >> 2) & 0xff);
1868 *valp = imm8_0;
1869 return 0;
1870 }
1871
1872 static int
1873 Operand_uimm4x16_decode (uint32 *valp)
1874 {
1875 unsigned uimm4x16_0, op2_0;
1876 op2_0 = *valp & 0xf;
1877 uimm4x16_0 = op2_0 << 4;
1878 *valp = uimm4x16_0;
1879 return 0;
1880 }
1881
1882 static int
1883 Operand_uimm4x16_encode (uint32 *valp)
1884 {
1885 unsigned op2_0, uimm4x16_0;
1886 uimm4x16_0 = *valp;
1887 op2_0 = ((uimm4x16_0 >> 4) & 0xf);
1888 *valp = op2_0;
1889 return 0;
1890 }
1891
1892 static int
1893 Operand_simm8_decode (uint32 *valp)
1894 {
1895 unsigned simm8_0, imm8_0;
1896 imm8_0 = *valp & 0xff;
1897 simm8_0 = ((int) imm8_0 << 24) >> 24;
1898 *valp = simm8_0;
1899 return 0;
1900 }
1901
1902 static int
1903 Operand_simm8_encode (uint32 *valp)
1904 {
1905 unsigned imm8_0, simm8_0;
1906 simm8_0 = *valp;
1907 imm8_0 = (simm8_0 & 0xff);
1908 *valp = imm8_0;
1909 return 0;
1910 }
1911
1912 static int
1913 Operand_simm8x256_decode (uint32 *valp)
1914 {
1915 unsigned simm8x256_0, imm8_0;
1916 imm8_0 = *valp & 0xff;
1917 simm8x256_0 = (((int) imm8_0 << 24) >> 24) << 8;
1918 *valp = simm8x256_0;
1919 return 0;
1920 }
1921
1922 static int
1923 Operand_simm8x256_encode (uint32 *valp)
1924 {
1925 unsigned imm8_0, simm8x256_0;
1926 simm8x256_0 = *valp;
1927 imm8_0 = ((simm8x256_0 >> 8) & 0xff);
1928 *valp = imm8_0;
1929 return 0;
1930 }
1931
1932 static int
1933 Operand_simm12b_decode (uint32 *valp)
1934 {
1935 unsigned simm12b_0, imm12b_0;
1936 imm12b_0 = *valp & 0xfff;
1937 simm12b_0 = ((int) imm12b_0 << 20) >> 20;
1938 *valp = simm12b_0;
1939 return 0;
1940 }
1941
1942 static int
1943 Operand_simm12b_encode (uint32 *valp)
1944 {
1945 unsigned imm12b_0, simm12b_0;
1946 simm12b_0 = *valp;
1947 imm12b_0 = (simm12b_0 & 0xfff);
1948 *valp = imm12b_0;
1949 return 0;
1950 }
1951
1952 static int
1953 Operand_msalp32_decode (uint32 *valp)
1954 {
1955 unsigned msalp32_0, sal_0;
1956 sal_0 = *valp & 0x1f;
1957 msalp32_0 = 0x20 - sal_0;
1958 *valp = msalp32_0;
1959 return 0;
1960 }
1961
1962 static int
1963 Operand_msalp32_encode (uint32 *valp)
1964 {
1965 unsigned sal_0, msalp32_0;
1966 msalp32_0 = *valp;
1967 sal_0 = (0x20 - msalp32_0) & 0x1f;
1968 *valp = sal_0;
1969 return 0;
1970 }
1971
1972 static int
1973 Operand_op2p1_decode (uint32 *valp)
1974 {
1975 unsigned op2p1_0, op2_0;
1976 op2_0 = *valp & 0xf;
1977 op2p1_0 = op2_0 + 0x1;
1978 *valp = op2p1_0;
1979 return 0;
1980 }
1981
1982 static int
1983 Operand_op2p1_encode (uint32 *valp)
1984 {
1985 unsigned op2_0, op2p1_0;
1986 op2p1_0 = *valp;
1987 op2_0 = (op2p1_0 - 0x1) & 0xf;
1988 *valp = op2_0;
1989 return 0;
1990 }
1991
1992 static int
1993 Operand_label8_decode (uint32 *valp)
1994 {
1995 unsigned label8_0, imm8_0;
1996 imm8_0 = *valp & 0xff;
1997 label8_0 = 0x4 + (((int) imm8_0 << 24) >> 24);
1998 *valp = label8_0;
1999 return 0;
2000 }
2001
2002 static int
2003 Operand_label8_encode (uint32 *valp)
2004 {
2005 unsigned imm8_0, label8_0;
2006 label8_0 = *valp;
2007 imm8_0 = (label8_0 - 0x4) & 0xff;
2008 *valp = imm8_0;
2009 return 0;
2010 }
2011
2012 static int
2013 Operand_label8_ator (uint32 *valp, uint32 pc)
2014 {
2015 *valp -= pc;
2016 return 0;
2017 }
2018
2019 static int
2020 Operand_label8_rtoa (uint32 *valp, uint32 pc)
2021 {
2022 *valp += pc;
2023 return 0;
2024 }
2025
2026 static int
2027 Operand_ulabel8_decode (uint32 *valp)
2028 {
2029 unsigned ulabel8_0, imm8_0;
2030 imm8_0 = *valp & 0xff;
2031 ulabel8_0 = 0x4 + (((0) << 8) | imm8_0);
2032 *valp = ulabel8_0;
2033 return 0;
2034 }
2035
2036 static int
2037 Operand_ulabel8_encode (uint32 *valp)
2038 {
2039 unsigned imm8_0, ulabel8_0;
2040 ulabel8_0 = *valp;
2041 imm8_0 = (ulabel8_0 - 0x4) & 0xff;
2042 *valp = imm8_0;
2043 return 0;
2044 }
2045
2046 static int
2047 Operand_ulabel8_ator (uint32 *valp, uint32 pc)
2048 {
2049 *valp -= pc;
2050 return 0;
2051 }
2052
2053 static int
2054 Operand_ulabel8_rtoa (uint32 *valp, uint32 pc)
2055 {
2056 *valp += pc;
2057 return 0;
2058 }
2059
2060 static int
2061 Operand_label12_decode (uint32 *valp)
2062 {
2063 unsigned label12_0, imm12_0;
2064 imm12_0 = *valp & 0xfff;
2065 label12_0 = 0x4 + (((int) imm12_0 << 20) >> 20);
2066 *valp = label12_0;
2067 return 0;
2068 }
2069
2070 static int
2071 Operand_label12_encode (uint32 *valp)
2072 {
2073 unsigned imm12_0, label12_0;
2074 label12_0 = *valp;
2075 imm12_0 = (label12_0 - 0x4) & 0xfff;
2076 *valp = imm12_0;
2077 return 0;
2078 }
2079
2080 static int
2081 Operand_label12_ator (uint32 *valp, uint32 pc)
2082 {
2083 *valp -= pc;
2084 return 0;
2085 }
2086
2087 static int
2088 Operand_label12_rtoa (uint32 *valp, uint32 pc)
2089 {
2090 *valp += pc;
2091 return 0;
2092 }
2093
2094 static int
2095 Operand_soffset_decode (uint32 *valp)
2096 {
2097 unsigned soffset_0, offset_0;
2098 offset_0 = *valp & 0x3ffff;
2099 soffset_0 = 0x4 + (((int) offset_0 << 14) >> 14);
2100 *valp = soffset_0;
2101 return 0;
2102 }
2103
2104 static int
2105 Operand_soffset_encode (uint32 *valp)
2106 {
2107 unsigned offset_0, soffset_0;
2108 soffset_0 = *valp;
2109 offset_0 = (soffset_0 - 0x4) & 0x3ffff;
2110 *valp = offset_0;
2111 return 0;
2112 }
2113
2114 static int
2115 Operand_soffset_ator (uint32 *valp, uint32 pc)
2116 {
2117 *valp -= pc;
2118 return 0;
2119 }
2120
2121 static int
2122 Operand_soffset_rtoa (uint32 *valp, uint32 pc)
2123 {
2124 *valp += pc;
2125 return 0;
2126 }
2127
2128 static int
2129 Operand_uimm16x4_decode (uint32 *valp)
2130 {
2131 unsigned uimm16x4_0, imm16_0;
2132 imm16_0 = *valp & 0xffff;
2133 uimm16x4_0 = (((0xffff) << 16) | imm16_0) << 2;
2134 *valp = uimm16x4_0;
2135 return 0;
2136 }
2137
2138 static int
2139 Operand_uimm16x4_encode (uint32 *valp)
2140 {
2141 unsigned imm16_0, uimm16x4_0;
2142 uimm16x4_0 = *valp;
2143 imm16_0 = (uimm16x4_0 >> 2) & 0xffff;
2144 *valp = imm16_0;
2145 return 0;
2146 }
2147
2148 static int
2149 Operand_uimm16x4_ator (uint32 *valp, uint32 pc)
2150 {
2151 *valp -= ((pc + 3) & ~0x3);
2152 return 0;
2153 }
2154
2155 static int
2156 Operand_uimm16x4_rtoa (uint32 *valp, uint32 pc)
2157 {
2158 *valp += ((pc + 3) & ~0x3);
2159 return 0;
2160 }
2161
2162 static int
2163 Operand_immt_decode (uint32 *valp)
2164 {
2165 unsigned immt_0, t_0;
2166 t_0 = *valp & 0xf;
2167 immt_0 = t_0;
2168 *valp = immt_0;
2169 return 0;
2170 }
2171
2172 static int
2173 Operand_immt_encode (uint32 *valp)
2174 {
2175 unsigned t_0, immt_0;
2176 immt_0 = *valp;
2177 t_0 = immt_0 & 0xf;
2178 *valp = t_0;
2179 return 0;
2180 }
2181
2182 static int
2183 Operand_imms_decode (uint32 *valp)
2184 {
2185 unsigned imms_0, s_0;
2186 s_0 = *valp & 0xf;
2187 imms_0 = s_0;
2188 *valp = imms_0;
2189 return 0;
2190 }
2191
2192 static int
2193 Operand_imms_encode (uint32 *valp)
2194 {
2195 unsigned s_0, imms_0;
2196 imms_0 = *valp;
2197 s_0 = imms_0 & 0xf;
2198 *valp = s_0;
2199 return 0;
2200 }
2201
2202 static int
2203 Operand_tp7_decode (uint32 *valp)
2204 {
2205 unsigned tp7_0, t_0;
2206 t_0 = *valp & 0xf;
2207 tp7_0 = t_0 + 0x7;
2208 *valp = tp7_0;
2209 return 0;
2210 }
2211
2212 static int
2213 Operand_tp7_encode (uint32 *valp)
2214 {
2215 unsigned t_0, tp7_0;
2216 tp7_0 = *valp;
2217 t_0 = (tp7_0 - 0x7) & 0xf;
2218 *valp = t_0;
2219 return 0;
2220 }
2221
2222 static int
2223 Operand_xt_wbr15_label_decode (uint32 *valp)
2224 {
2225 unsigned xt_wbr15_label_0, xt_wbr15_imm_0;
2226 xt_wbr15_imm_0 = *valp & 0x7fff;
2227 xt_wbr15_label_0 = 0x4 + (((int) xt_wbr15_imm_0 << 17) >> 17);
2228 *valp = xt_wbr15_label_0;
2229 return 0;
2230 }
2231
2232 static int
2233 Operand_xt_wbr15_label_encode (uint32 *valp)
2234 {
2235 unsigned xt_wbr15_imm_0, xt_wbr15_label_0;
2236 xt_wbr15_label_0 = *valp;
2237 xt_wbr15_imm_0 = (xt_wbr15_label_0 - 0x4) & 0x7fff;
2238 *valp = xt_wbr15_imm_0;
2239 return 0;
2240 }
2241
2242 static int
2243 Operand_xt_wbr15_label_ator (uint32 *valp, uint32 pc)
2244 {
2245 *valp -= pc;
2246 return 0;
2247 }
2248
2249 static int
2250 Operand_xt_wbr15_label_rtoa (uint32 *valp, uint32 pc)
2251 {
2252 *valp += pc;
2253 return 0;
2254 }
2255
2256 static int
2257 Operand_xt_wbr18_label_decode (uint32 *valp)
2258 {
2259 unsigned xt_wbr18_label_0, xt_wbr18_imm_0;
2260 xt_wbr18_imm_0 = *valp & 0x3ffff;
2261 xt_wbr18_label_0 = 0x4 + (((int) xt_wbr18_imm_0 << 14) >> 14);
2262 *valp = xt_wbr18_label_0;
2263 return 0;
2264 }
2265
2266 static int
2267 Operand_xt_wbr18_label_encode (uint32 *valp)
2268 {
2269 unsigned xt_wbr18_imm_0, xt_wbr18_label_0;
2270 xt_wbr18_label_0 = *valp;
2271 xt_wbr18_imm_0 = (xt_wbr18_label_0 - 0x4) & 0x3ffff;
2272 *valp = xt_wbr18_imm_0;
2273 return 0;
2274 }
2275
2276 static int
2277 Operand_xt_wbr18_label_ator (uint32 *valp, uint32 pc)
2278 {
2279 *valp -= pc;
2280 return 0;
2281 }
2282
2283 static int
2284 Operand_xt_wbr18_label_rtoa (uint32 *valp, uint32 pc)
2285 {
2286 *valp += pc;
2287 return 0;
2288 }
2289
2290 static xtensa_operand_internal operands[] = {
2291 { "soffsetx4", FIELD_offset, -1, 0,
2292 XTENSA_OPERAND_IS_PCRELATIVE,
2293 Operand_soffsetx4_encode, Operand_soffsetx4_decode,
2294 Operand_soffsetx4_ator, Operand_soffsetx4_rtoa },
2295 { "uimm12x8", FIELD_imm12, -1, 0,
2296 0,
2297 Operand_uimm12x8_encode, Operand_uimm12x8_decode,
2298 0, 0 },
2299 { "simm4", FIELD_mn, -1, 0,
2300 0,
2301 Operand_simm4_encode, Operand_simm4_decode,
2302 0, 0 },
2303 { "arr", FIELD_r, REGFILE_AR, 1,
2304 XTENSA_OPERAND_IS_REGISTER,
2305 Operand_arr_encode, Operand_arr_decode,
2306 0, 0 },
2307 { "ars", FIELD_s, REGFILE_AR, 1,
2308 XTENSA_OPERAND_IS_REGISTER,
2309 Operand_ars_encode, Operand_ars_decode,
2310 0, 0 },
2311 { "*ars_invisible", FIELD_s, REGFILE_AR, 1,
2312 XTENSA_OPERAND_IS_REGISTER | XTENSA_OPERAND_IS_INVISIBLE,
2313 Operand_ars_encode, Operand_ars_decode,
2314 0, 0 },
2315 { "art", FIELD_t, REGFILE_AR, 1,
2316 XTENSA_OPERAND_IS_REGISTER,
2317 Operand_art_encode, Operand_art_decode,
2318 0, 0 },
2319 { "ar0", FIELD__ar0, REGFILE_AR, 1,
2320 XTENSA_OPERAND_IS_REGISTER | XTENSA_OPERAND_IS_INVISIBLE,
2321 Operand_ar0_encode, Operand_ar0_decode,
2322 0, 0 },
2323 { "ar4", FIELD__ar4, REGFILE_AR, 1,
2324 XTENSA_OPERAND_IS_REGISTER | XTENSA_OPERAND_IS_INVISIBLE,
2325 Operand_ar4_encode, Operand_ar4_decode,
2326 0, 0 },
2327 { "ar8", FIELD__ar8, REGFILE_AR, 1,
2328 XTENSA_OPERAND_IS_REGISTER | XTENSA_OPERAND_IS_INVISIBLE,
2329 Operand_ar8_encode, Operand_ar8_decode,
2330 0, 0 },
2331 { "ar12", FIELD__ar12, REGFILE_AR, 1,
2332 XTENSA_OPERAND_IS_REGISTER | XTENSA_OPERAND_IS_INVISIBLE,
2333 Operand_ar12_encode, Operand_ar12_decode,
2334 0, 0 },
2335 { "ars_entry", FIELD_s, REGFILE_AR, 1,
2336 XTENSA_OPERAND_IS_REGISTER,
2337 Operand_ars_entry_encode, Operand_ars_entry_decode,
2338 0, 0 },
2339 { "immrx4", FIELD_r, -1, 0,
2340 0,
2341 Operand_immrx4_encode, Operand_immrx4_decode,
2342 0, 0 },
2343 { "lsi4x4", FIELD_r, -1, 0,
2344 0,
2345 Operand_lsi4x4_encode, Operand_lsi4x4_decode,
2346 0, 0 },
2347 { "simm7", FIELD_imm7, -1, 0,
2348 0,
2349 Operand_simm7_encode, Operand_simm7_decode,
2350 0, 0 },
2351 { "uimm6", FIELD_imm6, -1, 0,
2352 XTENSA_OPERAND_IS_PCRELATIVE,
2353 Operand_uimm6_encode, Operand_uimm6_decode,
2354 Operand_uimm6_ator, Operand_uimm6_rtoa },
2355 { "ai4const", FIELD_t, -1, 0,
2356 0,
2357 Operand_ai4const_encode, Operand_ai4const_decode,
2358 0, 0 },
2359 { "b4const", FIELD_r, -1, 0,
2360 0,
2361 Operand_b4const_encode, Operand_b4const_decode,
2362 0, 0 },
2363 { "b4constu", FIELD_r, -1, 0,
2364 0,
2365 Operand_b4constu_encode, Operand_b4constu_decode,
2366 0, 0 },
2367 { "uimm8", FIELD_imm8, -1, 0,
2368 0,
2369 Operand_uimm8_encode, Operand_uimm8_decode,
2370 0, 0 },
2371 { "uimm8x2", FIELD_imm8, -1, 0,
2372 0,
2373 Operand_uimm8x2_encode, Operand_uimm8x2_decode,
2374 0, 0 },
2375 { "uimm8x4", FIELD_imm8, -1, 0,
2376 0,
2377 Operand_uimm8x4_encode, Operand_uimm8x4_decode,
2378 0, 0 },
2379 { "uimm4x16", FIELD_op2, -1, 0,
2380 0,
2381 Operand_uimm4x16_encode, Operand_uimm4x16_decode,
2382 0, 0 },
2383 { "simm8", FIELD_imm8, -1, 0,
2384 0,
2385 Operand_simm8_encode, Operand_simm8_decode,
2386 0, 0 },
2387 { "simm8x256", FIELD_imm8, -1, 0,
2388 0,
2389 Operand_simm8x256_encode, Operand_simm8x256_decode,
2390 0, 0 },
2391 { "simm12b", FIELD_imm12b, -1, 0,
2392 0,
2393 Operand_simm12b_encode, Operand_simm12b_decode,
2394 0, 0 },
2395 { "msalp32", FIELD_sal, -1, 0,
2396 0,
2397 Operand_msalp32_encode, Operand_msalp32_decode,
2398 0, 0 },
2399 { "op2p1", FIELD_op2, -1, 0,
2400 0,
2401 Operand_op2p1_encode, Operand_op2p1_decode,
2402 0, 0 },
2403 { "label8", FIELD_imm8, -1, 0,
2404 XTENSA_OPERAND_IS_PCRELATIVE,
2405 Operand_label8_encode, Operand_label8_decode,
2406 Operand_label8_ator, Operand_label8_rtoa },
2407 { "ulabel8", FIELD_imm8, -1, 0,
2408 XTENSA_OPERAND_IS_PCRELATIVE,
2409 Operand_ulabel8_encode, Operand_ulabel8_decode,
2410 Operand_ulabel8_ator, Operand_ulabel8_rtoa },
2411 { "label12", FIELD_imm12, -1, 0,
2412 XTENSA_OPERAND_IS_PCRELATIVE,
2413 Operand_label12_encode, Operand_label12_decode,
2414 Operand_label12_ator, Operand_label12_rtoa },
2415 { "soffset", FIELD_offset, -1, 0,
2416 XTENSA_OPERAND_IS_PCRELATIVE,
2417 Operand_soffset_encode, Operand_soffset_decode,
2418 Operand_soffset_ator, Operand_soffset_rtoa },
2419 { "uimm16x4", FIELD_imm16, -1, 0,
2420 XTENSA_OPERAND_IS_PCRELATIVE,
2421 Operand_uimm16x4_encode, Operand_uimm16x4_decode,
2422 Operand_uimm16x4_ator, Operand_uimm16x4_rtoa },
2423 { "immt", FIELD_t, -1, 0,
2424 0,
2425 Operand_immt_encode, Operand_immt_decode,
2426 0, 0 },
2427 { "imms", FIELD_s, -1, 0,
2428 0,
2429 Operand_imms_encode, Operand_imms_decode,
2430 0, 0 },
2431 { "tp7", FIELD_t, -1, 0,
2432 0,
2433 Operand_tp7_encode, Operand_tp7_decode,
2434 0, 0 },
2435 { "xt_wbr15_label", FIELD_xt_wbr15_imm, -1, 0,
2436 XTENSA_OPERAND_IS_PCRELATIVE,
2437 Operand_xt_wbr15_label_encode, Operand_xt_wbr15_label_decode,
2438 Operand_xt_wbr15_label_ator, Operand_xt_wbr15_label_rtoa },
2439 { "xt_wbr18_label", FIELD_xt_wbr18_imm, -1, 0,
2440 XTENSA_OPERAND_IS_PCRELATIVE,
2441 Operand_xt_wbr18_label_encode, Operand_xt_wbr18_label_decode,
2442 Operand_xt_wbr18_label_ator, Operand_xt_wbr18_label_rtoa },
2443 { "t", FIELD_t, -1, 0, 0, 0, 0, 0, 0 },
2444 { "bbi4", FIELD_bbi4, -1, 0, 0, 0, 0, 0, 0 },
2445 { "bbi", FIELD_bbi, -1, 0, 0, 0, 0, 0, 0 },
2446 { "imm12", FIELD_imm12, -1, 0, 0, 0, 0, 0, 0 },
2447 { "imm8", FIELD_imm8, -1, 0, 0, 0, 0, 0, 0 },
2448 { "s", FIELD_s, -1, 0, 0, 0, 0, 0, 0 },
2449 { "imm12b", FIELD_imm12b, -1, 0, 0, 0, 0, 0, 0 },
2450 { "imm16", FIELD_imm16, -1, 0, 0, 0, 0, 0, 0 },
2451 { "m", FIELD_m, -1, 0, 0, 0, 0, 0, 0 },
2452 { "n", FIELD_n, -1, 0, 0, 0, 0, 0, 0 },
2453 { "offset", FIELD_offset, -1, 0, 0, 0, 0, 0, 0 },
2454 { "op0", FIELD_op0, -1, 0, 0, 0, 0, 0, 0 },
2455 { "op1", FIELD_op1, -1, 0, 0, 0, 0, 0, 0 },
2456 { "op2", FIELD_op2, -1, 0, 0, 0, 0, 0, 0 },
2457 { "r", FIELD_r, -1, 0, 0, 0, 0, 0, 0 },
2458 { "sa4", FIELD_sa4, -1, 0, 0, 0, 0, 0, 0 },
2459 { "sae4", FIELD_sae4, -1, 0, 0, 0, 0, 0, 0 },
2460 { "sae", FIELD_sae, -1, 0, 0, 0, 0, 0, 0 },
2461 { "sal", FIELD_sal, -1, 0, 0, 0, 0, 0, 0 },
2462 { "sargt", FIELD_sargt, -1, 0, 0, 0, 0, 0, 0 },
2463 { "sas4", FIELD_sas4, -1, 0, 0, 0, 0, 0, 0 },
2464 { "sas", FIELD_sas, -1, 0, 0, 0, 0, 0, 0 },
2465 { "sr", FIELD_sr, -1, 0, 0, 0, 0, 0, 0 },
2466 { "st", FIELD_st, -1, 0, 0, 0, 0, 0, 0 },
2467 { "thi3", FIELD_thi3, -1, 0, 0, 0, 0, 0, 0 },
2468 { "imm4", FIELD_imm4, -1, 0, 0, 0, 0, 0, 0 },
2469 { "mn", FIELD_mn, -1, 0, 0, 0, 0, 0, 0 },
2470 { "i", FIELD_i, -1, 0, 0, 0, 0, 0, 0 },
2471 { "imm6lo", FIELD_imm6lo, -1, 0, 0, 0, 0, 0, 0 },
2472 { "imm6hi", FIELD_imm6hi, -1, 0, 0, 0, 0, 0, 0 },
2473 { "imm7lo", FIELD_imm7lo, -1, 0, 0, 0, 0, 0, 0 },
2474 { "imm7hi", FIELD_imm7hi, -1, 0, 0, 0, 0, 0, 0 },
2475 { "z", FIELD_z, -1, 0, 0, 0, 0, 0, 0 },
2476 { "imm6", FIELD_imm6, -1, 0, 0, 0, 0, 0, 0 },
2477 { "imm7", FIELD_imm7, -1, 0, 0, 0, 0, 0, 0 },
2478 { "xt_wbr15_imm", FIELD_xt_wbr15_imm, -1, 0, 0, 0, 0, 0, 0 },
2479 { "xt_wbr18_imm", FIELD_xt_wbr18_imm, -1, 0, 0, 0, 0, 0, 0 }
2480 };
2481
2482 enum xtensa_operand_id {
2483 OPERAND_soffsetx4,
2484 OPERAND_uimm12x8,
2485 OPERAND_simm4,
2486 OPERAND_arr,
2487 OPERAND_ars,
2488 OPERAND__ars_invisible,
2489 OPERAND_art,
2490 OPERAND_ar0,
2491 OPERAND_ar4,
2492 OPERAND_ar8,
2493 OPERAND_ar12,
2494 OPERAND_ars_entry,
2495 OPERAND_immrx4,
2496 OPERAND_lsi4x4,
2497 OPERAND_simm7,
2498 OPERAND_uimm6,
2499 OPERAND_ai4const,
2500 OPERAND_b4const,
2501 OPERAND_b4constu,
2502 OPERAND_uimm8,
2503 OPERAND_uimm8x2,
2504 OPERAND_uimm8x4,
2505 OPERAND_uimm4x16,
2506 OPERAND_simm8,
2507 OPERAND_simm8x256,
2508 OPERAND_simm12b,
2509 OPERAND_msalp32,
2510 OPERAND_op2p1,
2511 OPERAND_label8,
2512 OPERAND_ulabel8,
2513 OPERAND_label12,
2514 OPERAND_soffset,
2515 OPERAND_uimm16x4,
2516 OPERAND_immt,
2517 OPERAND_imms,
2518 OPERAND_tp7,
2519 OPERAND_xt_wbr15_label,
2520 OPERAND_xt_wbr18_label,
2521 OPERAND_t,
2522 OPERAND_bbi4,
2523 OPERAND_bbi,
2524 OPERAND_imm12,
2525 OPERAND_imm8,
2526 OPERAND_s,
2527 OPERAND_imm12b,
2528 OPERAND_imm16,
2529 OPERAND_m,
2530 OPERAND_n,
2531 OPERAND_offset,
2532 OPERAND_op0,
2533 OPERAND_op1,
2534 OPERAND_op2,
2535 OPERAND_r,
2536 OPERAND_sa4,
2537 OPERAND_sae4,
2538 OPERAND_sae,
2539 OPERAND_sal,
2540 OPERAND_sargt,
2541 OPERAND_sas4,
2542 OPERAND_sas,
2543 OPERAND_sr,
2544 OPERAND_st,
2545 OPERAND_thi3,
2546 OPERAND_imm4,
2547 OPERAND_mn,
2548 OPERAND_i,
2549 OPERAND_imm6lo,
2550 OPERAND_imm6hi,
2551 OPERAND_imm7lo,
2552 OPERAND_imm7hi,
2553 OPERAND_z,
2554 OPERAND_imm6,
2555 OPERAND_imm7,
2556 OPERAND_xt_wbr15_imm,
2557 OPERAND_xt_wbr18_imm
2558 };
2559
2560 \f
2561 /* Iclass table. */
2562
2563 static xtensa_arg_internal Iclass_xt_iclass_rfe_stateArgs[] = {
2564 { { STATE_PSRING }, 'i' },
2565 { { STATE_PSEXCM }, 'm' },
2566 { { STATE_EPC1 }, 'i' }
2567 };
2568
2569 static xtensa_arg_internal Iclass_xt_iclass_rfde_stateArgs[] = {
2570 { { STATE_PSEXCM }, 'i' },
2571 { { STATE_PSRING }, 'i' },
2572 { { STATE_DEPC }, 'i' }
2573 };
2574
2575 static xtensa_arg_internal Iclass_xt_iclass_call12_args[] = {
2576 { { OPERAND_soffsetx4 }, 'i' },
2577 { { OPERAND_ar12 }, 'o' }
2578 };
2579
2580 static xtensa_arg_internal Iclass_xt_iclass_call12_stateArgs[] = {
2581 { { STATE_PSCALLINC }, 'o' }
2582 };
2583
2584 static xtensa_arg_internal Iclass_xt_iclass_call8_args[] = {
2585 { { OPERAND_soffsetx4 }, 'i' },
2586 { { OPERAND_ar8 }, 'o' }
2587 };
2588
2589 static xtensa_arg_internal Iclass_xt_iclass_call8_stateArgs[] = {
2590 { { STATE_PSCALLINC }, 'o' }
2591 };
2592
2593 static xtensa_arg_internal Iclass_xt_iclass_call4_args[] = {
2594 { { OPERAND_soffsetx4 }, 'i' },
2595 { { OPERAND_ar4 }, 'o' }
2596 };
2597
2598 static xtensa_arg_internal Iclass_xt_iclass_call4_stateArgs[] = {
2599 { { STATE_PSCALLINC }, 'o' }
2600 };
2601
2602 static xtensa_arg_internal Iclass_xt_iclass_callx12_args[] = {
2603 { { OPERAND_ars }, 'i' },
2604 { { OPERAND_ar12 }, 'o' }
2605 };
2606
2607 static xtensa_arg_internal Iclass_xt_iclass_callx12_stateArgs[] = {
2608 { { STATE_PSCALLINC }, 'o' }
2609 };
2610
2611 static xtensa_arg_internal Iclass_xt_iclass_callx8_args[] = {
2612 { { OPERAND_ars }, 'i' },
2613 { { OPERAND_ar8 }, 'o' }
2614 };
2615
2616 static xtensa_arg_internal Iclass_xt_iclass_callx8_stateArgs[] = {
2617 { { STATE_PSCALLINC }, 'o' }
2618 };
2619
2620 static xtensa_arg_internal Iclass_xt_iclass_callx4_args[] = {
2621 { { OPERAND_ars }, 'i' },
2622 { { OPERAND_ar4 }, 'o' }
2623 };
2624
2625 static xtensa_arg_internal Iclass_xt_iclass_callx4_stateArgs[] = {
2626 { { STATE_PSCALLINC }, 'o' }
2627 };
2628
2629 static xtensa_arg_internal Iclass_xt_iclass_entry_args[] = {
2630 { { OPERAND_ars_entry }, 's' },
2631 { { OPERAND_ars }, 'i' },
2632 { { OPERAND_uimm12x8 }, 'i' }
2633 };
2634
2635 static xtensa_arg_internal Iclass_xt_iclass_entry_stateArgs[] = {
2636 { { STATE_PSCALLINC }, 'i' },
2637 { { STATE_PSEXCM }, 'i' },
2638 { { STATE_PSWOE }, 'i' },
2639 { { STATE_WindowBase }, 'm' },
2640 { { STATE_WindowStart }, 'm' }
2641 };
2642
2643 static xtensa_arg_internal Iclass_xt_iclass_movsp_args[] = {
2644 { { OPERAND_art }, 'o' },
2645 { { OPERAND_ars }, 'i' }
2646 };
2647
2648 static xtensa_arg_internal Iclass_xt_iclass_movsp_stateArgs[] = {
2649 { { STATE_WindowBase }, 'i' },
2650 { { STATE_WindowStart }, 'i' }
2651 };
2652
2653 static xtensa_arg_internal Iclass_xt_iclass_rotw_args[] = {
2654 { { OPERAND_simm4 }, 'i' }
2655 };
2656
2657 static xtensa_arg_internal Iclass_xt_iclass_rotw_stateArgs[] = {
2658 { { STATE_PSEXCM }, 'i' },
2659 { { STATE_PSRING }, 'i' },
2660 { { STATE_WindowBase }, 'm' }
2661 };
2662
2663 static xtensa_arg_internal Iclass_xt_iclass_retw_args[] = {
2664 { { OPERAND__ars_invisible }, 'i' }
2665 };
2666
2667 static xtensa_arg_internal Iclass_xt_iclass_retw_stateArgs[] = {
2668 { { STATE_WindowBase }, 'm' },
2669 { { STATE_WindowStart }, 'm' },
2670 { { STATE_PSEXCM }, 'i' },
2671 { { STATE_PSWOE }, 'i' }
2672 };
2673
2674 static xtensa_arg_internal Iclass_xt_iclass_rfwou_stateArgs[] = {
2675 { { STATE_EPC1 }, 'i' },
2676 { { STATE_PSEXCM }, 'm' },
2677 { { STATE_PSRING }, 'i' },
2678 { { STATE_WindowBase }, 'm' },
2679 { { STATE_WindowStart }, 'm' },
2680 { { STATE_PSOWB }, 'i' }
2681 };
2682
2683 static xtensa_arg_internal Iclass_xt_iclass_l32e_args[] = {
2684 { { OPERAND_art }, 'o' },
2685 { { OPERAND_ars }, 'i' },
2686 { { OPERAND_immrx4 }, 'i' }
2687 };
2688
2689 static xtensa_arg_internal Iclass_xt_iclass_l32e_stateArgs[] = {
2690 { { STATE_PSEXCM }, 'i' },
2691 { { STATE_PSRING }, 'i' }
2692 };
2693
2694 static xtensa_arg_internal Iclass_xt_iclass_s32e_args[] = {
2695 { { OPERAND_art }, 'i' },
2696 { { OPERAND_ars }, 'i' },
2697 { { OPERAND_immrx4 }, 'i' }
2698 };
2699
2700 static xtensa_arg_internal Iclass_xt_iclass_s32e_stateArgs[] = {
2701 { { STATE_PSEXCM }, 'i' },
2702 { { STATE_PSRING }, 'i' }
2703 };
2704
2705 static xtensa_arg_internal Iclass_xt_iclass_rsr_windowbase_args[] = {
2706 { { OPERAND_art }, 'o' }
2707 };
2708
2709 static xtensa_arg_internal Iclass_xt_iclass_rsr_windowbase_stateArgs[] = {
2710 { { STATE_PSEXCM }, 'i' },
2711 { { STATE_PSRING }, 'i' },
2712 { { STATE_WindowBase }, 'i' }
2713 };
2714
2715 static xtensa_arg_internal Iclass_xt_iclass_wsr_windowbase_args[] = {
2716 { { OPERAND_art }, 'i' }
2717 };
2718
2719 static xtensa_arg_internal Iclass_xt_iclass_wsr_windowbase_stateArgs[] = {
2720 { { STATE_PSEXCM }, 'i' },
2721 { { STATE_PSRING }, 'i' },
2722 { { STATE_WindowBase }, 'o' }
2723 };
2724
2725 static xtensa_arg_internal Iclass_xt_iclass_xsr_windowbase_args[] = {
2726 { { OPERAND_art }, 'm' }
2727 };
2728
2729 static xtensa_arg_internal Iclass_xt_iclass_xsr_windowbase_stateArgs[] = {
2730 { { STATE_PSEXCM }, 'i' },
2731 { { STATE_PSRING }, 'i' },
2732 { { STATE_WindowBase }, 'm' }
2733 };
2734
2735 static xtensa_arg_internal Iclass_xt_iclass_rsr_windowstart_args[] = {
2736 { { OPERAND_art }, 'o' }
2737 };
2738
2739 static xtensa_arg_internal Iclass_xt_iclass_rsr_windowstart_stateArgs[] = {
2740 { { STATE_PSEXCM }, 'i' },
2741 { { STATE_PSRING }, 'i' },
2742 { { STATE_WindowStart }, 'i' }
2743 };
2744
2745 static xtensa_arg_internal Iclass_xt_iclass_wsr_windowstart_args[] = {
2746 { { OPERAND_art }, 'i' }
2747 };
2748
2749 static xtensa_arg_internal Iclass_xt_iclass_wsr_windowstart_stateArgs[] = {
2750 { { STATE_PSEXCM }, 'i' },
2751 { { STATE_PSRING }, 'i' },
2752 { { STATE_WindowStart }, 'o' }
2753 };
2754
2755 static xtensa_arg_internal Iclass_xt_iclass_xsr_windowstart_args[] = {
2756 { { OPERAND_art }, 'm' }
2757 };
2758
2759 static xtensa_arg_internal Iclass_xt_iclass_xsr_windowstart_stateArgs[] = {
2760 { { STATE_PSEXCM }, 'i' },
2761 { { STATE_PSRING }, 'i' },
2762 { { STATE_WindowStart }, 'm' }
2763 };
2764
2765 static xtensa_arg_internal Iclass_xt_iclass_add_n_args[] = {
2766 { { OPERAND_arr }, 'o' },
2767 { { OPERAND_ars }, 'i' },
2768 { { OPERAND_art }, 'i' }
2769 };
2770
2771 static xtensa_arg_internal Iclass_xt_iclass_addi_n_args[] = {
2772 { { OPERAND_arr }, 'o' },
2773 { { OPERAND_ars }, 'i' },
2774 { { OPERAND_ai4const }, 'i' }
2775 };
2776
2777 static xtensa_arg_internal Iclass_xt_iclass_bz6_args[] = {
2778 { { OPERAND_ars }, 'i' },
2779 { { OPERAND_uimm6 }, 'i' }
2780 };
2781
2782 static xtensa_arg_internal Iclass_xt_iclass_loadi4_args[] = {
2783 { { OPERAND_art }, 'o' },
2784 { { OPERAND_ars }, 'i' },
2785 { { OPERAND_lsi4x4 }, 'i' }
2786 };
2787
2788 static xtensa_arg_internal Iclass_xt_iclass_mov_n_args[] = {
2789 { { OPERAND_art }, 'o' },
2790 { { OPERAND_ars }, 'i' }
2791 };
2792
2793 static xtensa_arg_internal Iclass_xt_iclass_movi_n_args[] = {
2794 { { OPERAND_ars }, 'o' },
2795 { { OPERAND_simm7 }, 'i' }
2796 };
2797
2798 static xtensa_arg_internal Iclass_xt_iclass_retn_args[] = {
2799 { { OPERAND__ars_invisible }, 'i' }
2800 };
2801
2802 static xtensa_arg_internal Iclass_xt_iclass_storei4_args[] = {
2803 { { OPERAND_art }, 'i' },
2804 { { OPERAND_ars }, 'i' },
2805 { { OPERAND_lsi4x4 }, 'i' }
2806 };
2807
2808 static xtensa_arg_internal Iclass_rur_threadptr_args[] = {
2809 { { OPERAND_arr }, 'o' }
2810 };
2811
2812 static xtensa_arg_internal Iclass_rur_threadptr_stateArgs[] = {
2813 { { STATE_THREADPTR }, 'i' }
2814 };
2815
2816 static xtensa_arg_internal Iclass_wur_threadptr_args[] = {
2817 { { OPERAND_art }, 'i' }
2818 };
2819
2820 static xtensa_arg_internal Iclass_wur_threadptr_stateArgs[] = {
2821 { { STATE_THREADPTR }, 'o' }
2822 };
2823
2824 static xtensa_arg_internal Iclass_xt_iclass_addi_args[] = {
2825 { { OPERAND_art }, 'o' },
2826 { { OPERAND_ars }, 'i' },
2827 { { OPERAND_simm8 }, 'i' }
2828 };
2829
2830 static xtensa_arg_internal Iclass_xt_iclass_addmi_args[] = {
2831 { { OPERAND_art }, 'o' },
2832 { { OPERAND_ars }, 'i' },
2833 { { OPERAND_simm8x256 }, 'i' }
2834 };
2835
2836 static xtensa_arg_internal Iclass_xt_iclass_addsub_args[] = {
2837 { { OPERAND_arr }, 'o' },
2838 { { OPERAND_ars }, 'i' },
2839 { { OPERAND_art }, 'i' }
2840 };
2841
2842 static xtensa_arg_internal Iclass_xt_iclass_bit_args[] = {
2843 { { OPERAND_arr }, 'o' },
2844 { { OPERAND_ars }, 'i' },
2845 { { OPERAND_art }, 'i' }
2846 };
2847
2848 static xtensa_arg_internal Iclass_xt_iclass_bsi8_args[] = {
2849 { { OPERAND_ars }, 'i' },
2850 { { OPERAND_b4const }, 'i' },
2851 { { OPERAND_label8 }, 'i' }
2852 };
2853
2854 static xtensa_arg_internal Iclass_xt_iclass_bsi8b_args[] = {
2855 { { OPERAND_ars }, 'i' },
2856 { { OPERAND_bbi }, 'i' },
2857 { { OPERAND_label8 }, 'i' }
2858 };
2859
2860 static xtensa_arg_internal Iclass_xt_iclass_bsi8u_args[] = {
2861 { { OPERAND_ars }, 'i' },
2862 { { OPERAND_b4constu }, 'i' },
2863 { { OPERAND_label8 }, 'i' }
2864 };
2865
2866 static xtensa_arg_internal Iclass_xt_iclass_bst8_args[] = {
2867 { { OPERAND_ars }, 'i' },
2868 { { OPERAND_art }, 'i' },
2869 { { OPERAND_label8 }, 'i' }
2870 };
2871
2872 static xtensa_arg_internal Iclass_xt_iclass_bsz12_args[] = {
2873 { { OPERAND_ars }, 'i' },
2874 { { OPERAND_label12 }, 'i' }
2875 };
2876
2877 static xtensa_arg_internal Iclass_xt_iclass_call0_args[] = {
2878 { { OPERAND_soffsetx4 }, 'i' },
2879 { { OPERAND_ar0 }, 'o' }
2880 };
2881
2882 static xtensa_arg_internal Iclass_xt_iclass_callx0_args[] = {
2883 { { OPERAND_ars }, 'i' },
2884 { { OPERAND_ar0 }, 'o' }
2885 };
2886
2887 static xtensa_arg_internal Iclass_xt_iclass_exti_args[] = {
2888 { { OPERAND_arr }, 'o' },
2889 { { OPERAND_art }, 'i' },
2890 { { OPERAND_sae }, 'i' },
2891 { { OPERAND_op2p1 }, 'i' }
2892 };
2893
2894 static xtensa_arg_internal Iclass_xt_iclass_jump_args[] = {
2895 { { OPERAND_soffset }, 'i' }
2896 };
2897
2898 static xtensa_arg_internal Iclass_xt_iclass_jumpx_args[] = {
2899 { { OPERAND_ars }, 'i' }
2900 };
2901
2902 static xtensa_arg_internal Iclass_xt_iclass_l16ui_args[] = {
2903 { { OPERAND_art }, 'o' },
2904 { { OPERAND_ars }, 'i' },
2905 { { OPERAND_uimm8x2 }, 'i' }
2906 };
2907
2908 static xtensa_arg_internal Iclass_xt_iclass_l16si_args[] = {
2909 { { OPERAND_art }, 'o' },
2910 { { OPERAND_ars }, 'i' },
2911 { { OPERAND_uimm8x2 }, 'i' }
2912 };
2913
2914 static xtensa_arg_internal Iclass_xt_iclass_l32i_args[] = {
2915 { { OPERAND_art }, 'o' },
2916 { { OPERAND_ars }, 'i' },
2917 { { OPERAND_uimm8x4 }, 'i' }
2918 };
2919
2920 static xtensa_arg_internal Iclass_xt_iclass_l32r_args[] = {
2921 { { OPERAND_art }, 'o' },
2922 { { OPERAND_uimm16x4 }, 'i' }
2923 };
2924
2925 static xtensa_arg_internal Iclass_xt_iclass_l32r_stateArgs[] = {
2926 { { STATE_LITBADDR }, 'i' },
2927 { { STATE_LITBEN }, 'i' }
2928 };
2929
2930 static xtensa_arg_internal Iclass_xt_iclass_l8i_args[] = {
2931 { { OPERAND_art }, 'o' },
2932 { { OPERAND_ars }, 'i' },
2933 { { OPERAND_uimm8 }, 'i' }
2934 };
2935
2936 static xtensa_arg_internal Iclass_xt_iclass_loop_args[] = {
2937 { { OPERAND_ars }, 'i' },
2938 { { OPERAND_ulabel8 }, 'i' }
2939 };
2940
2941 static xtensa_arg_internal Iclass_xt_iclass_loop_stateArgs[] = {
2942 { { STATE_LBEG }, 'o' },
2943 { { STATE_LEND }, 'o' },
2944 { { STATE_LCOUNT }, 'o' }
2945 };
2946
2947 static xtensa_arg_internal Iclass_xt_iclass_loopz_args[] = {
2948 { { OPERAND_ars }, 'i' },
2949 { { OPERAND_ulabel8 }, 'i' }
2950 };
2951
2952 static xtensa_arg_internal Iclass_xt_iclass_loopz_stateArgs[] = {
2953 { { STATE_LBEG }, 'o' },
2954 { { STATE_LEND }, 'o' },
2955 { { STATE_LCOUNT }, 'o' }
2956 };
2957
2958 static xtensa_arg_internal Iclass_xt_iclass_movi_args[] = {
2959 { { OPERAND_art }, 'o' },
2960 { { OPERAND_simm12b }, 'i' }
2961 };
2962
2963 static xtensa_arg_internal Iclass_xt_iclass_movz_args[] = {
2964 { { OPERAND_arr }, 'm' },
2965 { { OPERAND_ars }, 'i' },
2966 { { OPERAND_art }, 'i' }
2967 };
2968
2969 static xtensa_arg_internal Iclass_xt_iclass_neg_args[] = {
2970 { { OPERAND_arr }, 'o' },
2971 { { OPERAND_art }, 'i' }
2972 };
2973
2974 static xtensa_arg_internal Iclass_xt_iclass_return_args[] = {
2975 { { OPERAND__ars_invisible }, 'i' }
2976 };
2977
2978 static xtensa_arg_internal Iclass_xt_iclass_s16i_args[] = {
2979 { { OPERAND_art }, 'i' },
2980 { { OPERAND_ars }, 'i' },
2981 { { OPERAND_uimm8x2 }, 'i' }
2982 };
2983
2984 static xtensa_arg_internal Iclass_xt_iclass_s32i_args[] = {
2985 { { OPERAND_art }, 'i' },
2986 { { OPERAND_ars }, 'i' },
2987 { { OPERAND_uimm8x4 }, 'i' }
2988 };
2989
2990 static xtensa_arg_internal Iclass_xt_iclass_s8i_args[] = {
2991 { { OPERAND_art }, 'i' },
2992 { { OPERAND_ars }, 'i' },
2993 { { OPERAND_uimm8 }, 'i' }
2994 };
2995
2996 static xtensa_arg_internal Iclass_xt_iclass_sar_args[] = {
2997 { { OPERAND_ars }, 'i' }
2998 };
2999
3000 static xtensa_arg_internal Iclass_xt_iclass_sar_stateArgs[] = {
3001 { { STATE_SAR }, 'o' }
3002 };
3003
3004 static xtensa_arg_internal Iclass_xt_iclass_sari_args[] = {
3005 { { OPERAND_sas }, 'i' }
3006 };
3007
3008 static xtensa_arg_internal Iclass_xt_iclass_sari_stateArgs[] = {
3009 { { STATE_SAR }, 'o' }
3010 };
3011
3012 static xtensa_arg_internal Iclass_xt_iclass_shifts_args[] = {
3013 { { OPERAND_arr }, 'o' },
3014 { { OPERAND_ars }, 'i' }
3015 };
3016
3017 static xtensa_arg_internal Iclass_xt_iclass_shifts_stateArgs[] = {
3018 { { STATE_SAR }, 'i' }
3019 };
3020
3021 static xtensa_arg_internal Iclass_xt_iclass_shiftst_args[] = {
3022 { { OPERAND_arr }, 'o' },
3023 { { OPERAND_ars }, 'i' },
3024 { { OPERAND_art }, 'i' }
3025 };
3026
3027 static xtensa_arg_internal Iclass_xt_iclass_shiftst_stateArgs[] = {
3028 { { STATE_SAR }, 'i' }
3029 };
3030
3031 static xtensa_arg_internal Iclass_xt_iclass_shiftt_args[] = {
3032 { { OPERAND_arr }, 'o' },
3033 { { OPERAND_art }, 'i' }
3034 };
3035
3036 static xtensa_arg_internal Iclass_xt_iclass_shiftt_stateArgs[] = {
3037 { { STATE_SAR }, 'i' }
3038 };
3039
3040 static xtensa_arg_internal Iclass_xt_iclass_slli_args[] = {
3041 { { OPERAND_arr }, 'o' },
3042 { { OPERAND_ars }, 'i' },
3043 { { OPERAND_msalp32 }, 'i' }
3044 };
3045
3046 static xtensa_arg_internal Iclass_xt_iclass_srai_args[] = {
3047 { { OPERAND_arr }, 'o' },
3048 { { OPERAND_art }, 'i' },
3049 { { OPERAND_sargt }, 'i' }
3050 };
3051
3052 static xtensa_arg_internal Iclass_xt_iclass_srli_args[] = {
3053 { { OPERAND_arr }, 'o' },
3054 { { OPERAND_art }, 'i' },
3055 { { OPERAND_s }, 'i' }
3056 };
3057
3058 static xtensa_arg_internal Iclass_xt_iclass_sync_stateArgs[] = {
3059 { { STATE_XTSYNC }, 'i' }
3060 };
3061
3062 static xtensa_arg_internal Iclass_xt_iclass_rsil_args[] = {
3063 { { OPERAND_art }, 'o' },
3064 { { OPERAND_s }, 'i' }
3065 };
3066
3067 static xtensa_arg_internal Iclass_xt_iclass_rsil_stateArgs[] = {
3068 { { STATE_PSWOE }, 'i' },
3069 { { STATE_PSCALLINC }, 'i' },
3070 { { STATE_PSOWB }, 'i' },
3071 { { STATE_PSRING }, 'i' },
3072 { { STATE_PSUM }, 'i' },
3073 { { STATE_PSEXCM }, 'i' },
3074 { { STATE_PSINTLEVEL }, 'm' }
3075 };
3076
3077 static xtensa_arg_internal Iclass_xt_iclass_rsr_lend_args[] = {
3078 { { OPERAND_art }, 'o' }
3079 };
3080
3081 static xtensa_arg_internal Iclass_xt_iclass_rsr_lend_stateArgs[] = {
3082 { { STATE_LEND }, 'i' }
3083 };
3084
3085 static xtensa_arg_internal Iclass_xt_iclass_wsr_lend_args[] = {
3086 { { OPERAND_art }, 'i' }
3087 };
3088
3089 static xtensa_arg_internal Iclass_xt_iclass_wsr_lend_stateArgs[] = {
3090 { { STATE_LEND }, 'o' }
3091 };
3092
3093 static xtensa_arg_internal Iclass_xt_iclass_xsr_lend_args[] = {
3094 { { OPERAND_art }, 'm' }
3095 };
3096
3097 static xtensa_arg_internal Iclass_xt_iclass_xsr_lend_stateArgs[] = {
3098 { { STATE_LEND }, 'm' }
3099 };
3100
3101 static xtensa_arg_internal Iclass_xt_iclass_rsr_lcount_args[] = {
3102 { { OPERAND_art }, 'o' }
3103 };
3104
3105 static xtensa_arg_internal Iclass_xt_iclass_rsr_lcount_stateArgs[] = {
3106 { { STATE_LCOUNT }, 'i' }
3107 };
3108
3109 static xtensa_arg_internal Iclass_xt_iclass_wsr_lcount_args[] = {
3110 { { OPERAND_art }, 'i' }
3111 };
3112
3113 static xtensa_arg_internal Iclass_xt_iclass_wsr_lcount_stateArgs[] = {
3114 { { STATE_XTSYNC }, 'o' },
3115 { { STATE_LCOUNT }, 'o' }
3116 };
3117
3118 static xtensa_arg_internal Iclass_xt_iclass_xsr_lcount_args[] = {
3119 { { OPERAND_art }, 'm' }
3120 };
3121
3122 static xtensa_arg_internal Iclass_xt_iclass_xsr_lcount_stateArgs[] = {
3123 { { STATE_XTSYNC }, 'o' },
3124 { { STATE_LCOUNT }, 'm' }
3125 };
3126
3127 static xtensa_arg_internal Iclass_xt_iclass_rsr_lbeg_args[] = {
3128 { { OPERAND_art }, 'o' }
3129 };
3130
3131 static xtensa_arg_internal Iclass_xt_iclass_rsr_lbeg_stateArgs[] = {
3132 { { STATE_LBEG }, 'i' }
3133 };
3134
3135 static xtensa_arg_internal Iclass_xt_iclass_wsr_lbeg_args[] = {
3136 { { OPERAND_art }, 'i' }
3137 };
3138
3139 static xtensa_arg_internal Iclass_xt_iclass_wsr_lbeg_stateArgs[] = {
3140 { { STATE_LBEG }, 'o' }
3141 };
3142
3143 static xtensa_arg_internal Iclass_xt_iclass_xsr_lbeg_args[] = {
3144 { { OPERAND_art }, 'm' }
3145 };
3146
3147 static xtensa_arg_internal Iclass_xt_iclass_xsr_lbeg_stateArgs[] = {
3148 { { STATE_LBEG }, 'm' }
3149 };
3150
3151 static xtensa_arg_internal Iclass_xt_iclass_rsr_sar_args[] = {
3152 { { OPERAND_art }, 'o' }
3153 };
3154
3155 static xtensa_arg_internal Iclass_xt_iclass_rsr_sar_stateArgs[] = {
3156 { { STATE_SAR }, 'i' }
3157 };
3158
3159 static xtensa_arg_internal Iclass_xt_iclass_wsr_sar_args[] = {
3160 { { OPERAND_art }, 'i' }
3161 };
3162
3163 static xtensa_arg_internal Iclass_xt_iclass_wsr_sar_stateArgs[] = {
3164 { { STATE_SAR }, 'o' },
3165 { { STATE_XTSYNC }, 'o' }
3166 };
3167
3168 static xtensa_arg_internal Iclass_xt_iclass_xsr_sar_args[] = {
3169 { { OPERAND_art }, 'm' }
3170 };
3171
3172 static xtensa_arg_internal Iclass_xt_iclass_xsr_sar_stateArgs[] = {
3173 { { STATE_SAR }, 'm' }
3174 };
3175
3176 static xtensa_arg_internal Iclass_xt_iclass_rsr_litbase_args[] = {
3177 { { OPERAND_art }, 'o' }
3178 };
3179
3180 static xtensa_arg_internal Iclass_xt_iclass_rsr_litbase_stateArgs[] = {
3181 { { STATE_LITBADDR }, 'i' },
3182 { { STATE_LITBEN }, 'i' }
3183 };
3184
3185 static xtensa_arg_internal Iclass_xt_iclass_wsr_litbase_args[] = {
3186 { { OPERAND_art }, 'i' }
3187 };
3188
3189 static xtensa_arg_internal Iclass_xt_iclass_wsr_litbase_stateArgs[] = {
3190 { { STATE_LITBADDR }, 'o' },
3191 { { STATE_LITBEN }, 'o' }
3192 };
3193
3194 static xtensa_arg_internal Iclass_xt_iclass_xsr_litbase_args[] = {
3195 { { OPERAND_art }, 'm' }
3196 };
3197
3198 static xtensa_arg_internal Iclass_xt_iclass_xsr_litbase_stateArgs[] = {
3199 { { STATE_LITBADDR }, 'm' },
3200 { { STATE_LITBEN }, 'm' }
3201 };
3202
3203 static xtensa_arg_internal Iclass_xt_iclass_rsr_176_args[] = {
3204 { { OPERAND_art }, 'o' }
3205 };
3206
3207 static xtensa_arg_internal Iclass_xt_iclass_rsr_176_stateArgs[] = {
3208 { { STATE_PSEXCM }, 'i' },
3209 { { STATE_PSRING }, 'i' }
3210 };
3211
3212 static xtensa_arg_internal Iclass_xt_iclass_wsr_176_args[] = {
3213 { { OPERAND_art }, 'i' }
3214 };
3215
3216 static xtensa_arg_internal Iclass_xt_iclass_wsr_176_stateArgs[] = {
3217 { { STATE_PSEXCM }, 'i' },
3218 { { STATE_PSRING }, 'i' }
3219 };
3220
3221 static xtensa_arg_internal Iclass_xt_iclass_rsr_208_args[] = {
3222 { { OPERAND_art }, 'o' }
3223 };
3224
3225 static xtensa_arg_internal Iclass_xt_iclass_rsr_208_stateArgs[] = {
3226 { { STATE_PSEXCM }, 'i' },
3227 { { STATE_PSRING }, 'i' }
3228 };
3229
3230 static xtensa_arg_internal Iclass_xt_iclass_rsr_ps_args[] = {
3231 { { OPERAND_art }, 'o' }
3232 };
3233
3234 static xtensa_arg_internal Iclass_xt_iclass_rsr_ps_stateArgs[] = {
3235 { { STATE_PSWOE }, 'i' },
3236 { { STATE_PSCALLINC }, 'i' },
3237 { { STATE_PSOWB }, 'i' },
3238 { { STATE_PSRING }, 'i' },
3239 { { STATE_PSUM }, 'i' },
3240 { { STATE_PSEXCM }, 'i' },
3241 { { STATE_PSINTLEVEL }, 'i' }
3242 };
3243
3244 static xtensa_arg_internal Iclass_xt_iclass_wsr_ps_args[] = {
3245 { { OPERAND_art }, 'i' }
3246 };
3247
3248 static xtensa_arg_internal Iclass_xt_iclass_wsr_ps_stateArgs[] = {
3249 { { STATE_PSWOE }, 'o' },
3250 { { STATE_PSCALLINC }, 'o' },
3251 { { STATE_PSOWB }, 'o' },
3252 { { STATE_PSRING }, 'm' },
3253 { { STATE_PSUM }, 'o' },
3254 { { STATE_PSEXCM }, 'm' },
3255 { { STATE_PSINTLEVEL }, 'o' }
3256 };
3257
3258 static xtensa_arg_internal Iclass_xt_iclass_xsr_ps_args[] = {
3259 { { OPERAND_art }, 'm' }
3260 };
3261
3262 static xtensa_arg_internal Iclass_xt_iclass_xsr_ps_stateArgs[] = {
3263 { { STATE_PSWOE }, 'm' },
3264 { { STATE_PSCALLINC }, 'm' },
3265 { { STATE_PSOWB }, 'm' },
3266 { { STATE_PSRING }, 'm' },
3267 { { STATE_PSUM }, 'm' },
3268 { { STATE_PSEXCM }, 'm' },
3269 { { STATE_PSINTLEVEL }, 'm' }
3270 };
3271
3272 static xtensa_arg_internal Iclass_xt_iclass_rsr_epc1_args[] = {
3273 { { OPERAND_art }, 'o' }
3274 };
3275
3276 static xtensa_arg_internal Iclass_xt_iclass_rsr_epc1_stateArgs[] = {
3277 { { STATE_PSEXCM }, 'i' },
3278 { { STATE_PSRING }, 'i' },
3279 { { STATE_EPC1 }, 'i' }
3280 };
3281
3282 static xtensa_arg_internal Iclass_xt_iclass_wsr_epc1_args[] = {
3283 { { OPERAND_art }, 'i' }
3284 };
3285
3286 static xtensa_arg_internal Iclass_xt_iclass_wsr_epc1_stateArgs[] = {
3287 { { STATE_PSEXCM }, 'i' },
3288 { { STATE_PSRING }, 'i' },
3289 { { STATE_EPC1 }, 'o' }
3290 };
3291
3292 static xtensa_arg_internal Iclass_xt_iclass_xsr_epc1_args[] = {
3293 { { OPERAND_art }, 'm' }
3294 };
3295
3296 static xtensa_arg_internal Iclass_xt_iclass_xsr_epc1_stateArgs[] = {
3297 { { STATE_PSEXCM }, 'i' },
3298 { { STATE_PSRING }, 'i' },
3299 { { STATE_EPC1 }, 'm' }
3300 };
3301
3302 static xtensa_arg_internal Iclass_xt_iclass_rsr_excsave1_args[] = {
3303 { { OPERAND_art }, 'o' }
3304 };
3305
3306 static xtensa_arg_internal Iclass_xt_iclass_rsr_excsave1_stateArgs[] = {
3307 { { STATE_PSEXCM }, 'i' },
3308 { { STATE_PSRING }, 'i' },
3309 { { STATE_EXCSAVE1 }, 'i' }
3310 };
3311
3312 static xtensa_arg_internal Iclass_xt_iclass_wsr_excsave1_args[] = {
3313 { { OPERAND_art }, 'i' }
3314 };
3315
3316 static xtensa_arg_internal Iclass_xt_iclass_wsr_excsave1_stateArgs[] = {
3317 { { STATE_PSEXCM }, 'i' },
3318 { { STATE_PSRING }, 'i' },
3319 { { STATE_EXCSAVE1 }, 'o' }
3320 };
3321
3322 static xtensa_arg_internal Iclass_xt_iclass_xsr_excsave1_args[] = {
3323 { { OPERAND_art }, 'm' }
3324 };
3325
3326 static xtensa_arg_internal Iclass_xt_iclass_xsr_excsave1_stateArgs[] = {
3327 { { STATE_PSEXCM }, 'i' },
3328 { { STATE_PSRING }, 'i' },
3329 { { STATE_EXCSAVE1 }, 'm' }
3330 };
3331
3332 static xtensa_arg_internal Iclass_xt_iclass_rsr_epc2_args[] = {
3333 { { OPERAND_art }, 'o' }
3334 };
3335
3336 static xtensa_arg_internal Iclass_xt_iclass_rsr_epc2_stateArgs[] = {
3337 { { STATE_PSEXCM }, 'i' },
3338 { { STATE_PSRING }, 'i' },
3339 { { STATE_EPC2 }, 'i' }
3340 };
3341
3342 static xtensa_arg_internal Iclass_xt_iclass_wsr_epc2_args[] = {
3343 { { OPERAND_art }, 'i' }
3344 };
3345
3346 static xtensa_arg_internal Iclass_xt_iclass_wsr_epc2_stateArgs[] = {
3347 { { STATE_PSEXCM }, 'i' },
3348 { { STATE_PSRING }, 'i' },
3349 { { STATE_EPC2 }, 'o' }
3350 };
3351
3352 static xtensa_arg_internal Iclass_xt_iclass_xsr_epc2_args[] = {
3353 { { OPERAND_art }, 'm' }
3354 };
3355
3356 static xtensa_arg_internal Iclass_xt_iclass_xsr_epc2_stateArgs[] = {
3357 { { STATE_PSEXCM }, 'i' },
3358 { { STATE_PSRING }, 'i' },
3359 { { STATE_EPC2 }, 'm' }
3360 };
3361
3362 static xtensa_arg_internal Iclass_xt_iclass_rsr_excsave2_args[] = {
3363 { { OPERAND_art }, 'o' }
3364 };
3365
3366 static xtensa_arg_internal Iclass_xt_iclass_rsr_excsave2_stateArgs[] = {
3367 { { STATE_PSEXCM }, 'i' },
3368 { { STATE_PSRING }, 'i' },
3369 { { STATE_EXCSAVE2 }, 'i' }
3370 };
3371
3372 static xtensa_arg_internal Iclass_xt_iclass_wsr_excsave2_args[] = {
3373 { { OPERAND_art }, 'i' }
3374 };
3375
3376 static xtensa_arg_internal Iclass_xt_iclass_wsr_excsave2_stateArgs[] = {
3377 { { STATE_PSEXCM }, 'i' },
3378 { { STATE_PSRING }, 'i' },
3379 { { STATE_EXCSAVE2 }, 'o' }
3380 };
3381
3382 static xtensa_arg_internal Iclass_xt_iclass_xsr_excsave2_args[] = {
3383 { { OPERAND_art }, 'm' }
3384 };
3385
3386 static xtensa_arg_internal Iclass_xt_iclass_xsr_excsave2_stateArgs[] = {
3387 { { STATE_PSEXCM }, 'i' },
3388 { { STATE_PSRING }, 'i' },
3389 { { STATE_EXCSAVE2 }, 'm' }
3390 };
3391
3392 static xtensa_arg_internal Iclass_xt_iclass_rsr_epc3_args[] = {
3393 { { OPERAND_art }, 'o' }
3394 };
3395
3396 static xtensa_arg_internal Iclass_xt_iclass_rsr_epc3_stateArgs[] = {
3397 { { STATE_PSEXCM }, 'i' },
3398 { { STATE_PSRING }, 'i' },
3399 { { STATE_EPC3 }, 'i' }
3400 };
3401
3402 static xtensa_arg_internal Iclass_xt_iclass_wsr_epc3_args[] = {
3403 { { OPERAND_art }, 'i' }
3404 };
3405
3406 static xtensa_arg_internal Iclass_xt_iclass_wsr_epc3_stateArgs[] = {
3407 { { STATE_PSEXCM }, 'i' },
3408 { { STATE_PSRING }, 'i' },
3409 { { STATE_EPC3 }, 'o' }
3410 };
3411
3412 static xtensa_arg_internal Iclass_xt_iclass_xsr_epc3_args[] = {
3413 { { OPERAND_art }, 'm' }
3414 };
3415
3416 static xtensa_arg_internal Iclass_xt_iclass_xsr_epc3_stateArgs[] = {
3417 { { STATE_PSEXCM }, 'i' },
3418 { { STATE_PSRING }, 'i' },
3419 { { STATE_EPC3 }, 'm' }
3420 };
3421
3422 static xtensa_arg_internal Iclass_xt_iclass_rsr_excsave3_args[] = {
3423 { { OPERAND_art }, 'o' }
3424 };
3425
3426 static xtensa_arg_internal Iclass_xt_iclass_rsr_excsave3_stateArgs[] = {
3427 { { STATE_PSEXCM }, 'i' },
3428 { { STATE_PSRING }, 'i' },
3429 { { STATE_EXCSAVE3 }, 'i' }
3430 };
3431
3432 static xtensa_arg_internal Iclass_xt_iclass_wsr_excsave3_args[] = {
3433 { { OPERAND_art }, 'i' }
3434 };
3435
3436 static xtensa_arg_internal Iclass_xt_iclass_wsr_excsave3_stateArgs[] = {
3437 { { STATE_PSEXCM }, 'i' },
3438 { { STATE_PSRING }, 'i' },
3439 { { STATE_EXCSAVE3 }, 'o' }
3440 };
3441
3442 static xtensa_arg_internal Iclass_xt_iclass_xsr_excsave3_args[] = {
3443 { { OPERAND_art }, 'm' }
3444 };
3445
3446 static xtensa_arg_internal Iclass_xt_iclass_xsr_excsave3_stateArgs[] = {
3447 { { STATE_PSEXCM }, 'i' },
3448 { { STATE_PSRING }, 'i' },
3449 { { STATE_EXCSAVE3 }, 'm' }
3450 };
3451
3452 static xtensa_arg_internal Iclass_xt_iclass_rsr_epc4_args[] = {
3453 { { OPERAND_art }, 'o' }
3454 };
3455
3456 static xtensa_arg_internal Iclass_xt_iclass_rsr_epc4_stateArgs[] = {
3457 { { STATE_PSEXCM }, 'i' },
3458 { { STATE_PSRING }, 'i' },
3459 { { STATE_EPC4 }, 'i' }
3460 };
3461
3462 static xtensa_arg_internal Iclass_xt_iclass_wsr_epc4_args[] = {
3463 { { OPERAND_art }, 'i' }
3464 };
3465
3466 static xtensa_arg_internal Iclass_xt_iclass_wsr_epc4_stateArgs[] = {
3467 { { STATE_PSEXCM }, 'i' },
3468 { { STATE_PSRING }, 'i' },
3469 { { STATE_EPC4 }, 'o' }
3470 };
3471
3472 static xtensa_arg_internal Iclass_xt_iclass_xsr_epc4_args[] = {
3473 { { OPERAND_art }, 'm' }
3474 };
3475
3476 static xtensa_arg_internal Iclass_xt_iclass_xsr_epc4_stateArgs[] = {
3477 { { STATE_PSEXCM }, 'i' },
3478 { { STATE_PSRING }, 'i' },
3479 { { STATE_EPC4 }, 'm' }
3480 };
3481
3482 static xtensa_arg_internal Iclass_xt_iclass_rsr_excsave4_args[] = {
3483 { { OPERAND_art }, 'o' }
3484 };
3485
3486 static xtensa_arg_internal Iclass_xt_iclass_rsr_excsave4_stateArgs[] = {
3487 { { STATE_PSEXCM }, 'i' },
3488 { { STATE_PSRING }, 'i' },
3489 { { STATE_EXCSAVE4 }, 'i' }
3490 };
3491
3492 static xtensa_arg_internal Iclass_xt_iclass_wsr_excsave4_args[] = {
3493 { { OPERAND_art }, 'i' }
3494 };
3495
3496 static xtensa_arg_internal Iclass_xt_iclass_wsr_excsave4_stateArgs[] = {
3497 { { STATE_PSEXCM }, 'i' },
3498 { { STATE_PSRING }, 'i' },
3499 { { STATE_EXCSAVE4 }, 'o' }
3500 };
3501
3502 static xtensa_arg_internal Iclass_xt_iclass_xsr_excsave4_args[] = {
3503 { { OPERAND_art }, 'm' }
3504 };
3505
3506 static xtensa_arg_internal Iclass_xt_iclass_xsr_excsave4_stateArgs[] = {
3507 { { STATE_PSEXCM }, 'i' },
3508 { { STATE_PSRING }, 'i' },
3509 { { STATE_EXCSAVE4 }, 'm' }
3510 };
3511
3512 static xtensa_arg_internal Iclass_xt_iclass_rsr_epc5_args[] = {
3513 { { OPERAND_art }, 'o' }
3514 };
3515
3516 static xtensa_arg_internal Iclass_xt_iclass_rsr_epc5_stateArgs[] = {
3517 { { STATE_PSEXCM }, 'i' },
3518 { { STATE_PSRING }, 'i' },
3519 { { STATE_EPC5 }, 'i' }
3520 };
3521
3522 static xtensa_arg_internal Iclass_xt_iclass_wsr_epc5_args[] = {
3523 { { OPERAND_art }, 'i' }
3524 };
3525
3526 static xtensa_arg_internal Iclass_xt_iclass_wsr_epc5_stateArgs[] = {
3527 { { STATE_PSEXCM }, 'i' },
3528 { { STATE_PSRING }, 'i' },
3529 { { STATE_EPC5 }, 'o' }
3530 };
3531
3532 static xtensa_arg_internal Iclass_xt_iclass_xsr_epc5_args[] = {
3533 { { OPERAND_art }, 'm' }
3534 };
3535
3536 static xtensa_arg_internal Iclass_xt_iclass_xsr_epc5_stateArgs[] = {
3537 { { STATE_PSEXCM }, 'i' },
3538 { { STATE_PSRING }, 'i' },
3539 { { STATE_EPC5 }, 'm' }
3540 };
3541
3542 static xtensa_arg_internal Iclass_xt_iclass_rsr_excsave5_args[] = {
3543 { { OPERAND_art }, 'o' }
3544 };
3545
3546 static xtensa_arg_internal Iclass_xt_iclass_rsr_excsave5_stateArgs[] = {
3547 { { STATE_PSEXCM }, 'i' },
3548 { { STATE_PSRING }, 'i' },
3549 { { STATE_EXCSAVE5 }, 'i' }
3550 };
3551
3552 static xtensa_arg_internal Iclass_xt_iclass_wsr_excsave5_args[] = {
3553 { { OPERAND_art }, 'i' }
3554 };
3555
3556 static xtensa_arg_internal Iclass_xt_iclass_wsr_excsave5_stateArgs[] = {
3557 { { STATE_PSEXCM }, 'i' },
3558 { { STATE_PSRING }, 'i' },
3559 { { STATE_EXCSAVE5 }, 'o' }
3560 };
3561
3562 static xtensa_arg_internal Iclass_xt_iclass_xsr_excsave5_args[] = {
3563 { { OPERAND_art }, 'm' }
3564 };
3565
3566 static xtensa_arg_internal Iclass_xt_iclass_xsr_excsave5_stateArgs[] = {
3567 { { STATE_PSEXCM }, 'i' },
3568 { { STATE_PSRING }, 'i' },
3569 { { STATE_EXCSAVE5 }, 'm' }
3570 };
3571
3572 static xtensa_arg_internal Iclass_xt_iclass_rsr_epc6_args[] = {
3573 { { OPERAND_art }, 'o' }
3574 };
3575
3576 static xtensa_arg_internal Iclass_xt_iclass_rsr_epc6_stateArgs[] = {
3577 { { STATE_PSEXCM }, 'i' },
3578 { { STATE_PSRING }, 'i' },
3579 { { STATE_EPC6 }, 'i' }
3580 };
3581
3582 static xtensa_arg_internal Iclass_xt_iclass_wsr_epc6_args[] = {
3583 { { OPERAND_art }, 'i' }
3584 };
3585
3586 static xtensa_arg_internal Iclass_xt_iclass_wsr_epc6_stateArgs[] = {
3587 { { STATE_PSEXCM }, 'i' },
3588 { { STATE_PSRING }, 'i' },
3589 { { STATE_EPC6 }, 'o' }
3590 };
3591
3592 static xtensa_arg_internal Iclass_xt_iclass_xsr_epc6_args[] = {
3593 { { OPERAND_art }, 'm' }
3594 };
3595
3596 static xtensa_arg_internal Iclass_xt_iclass_xsr_epc6_stateArgs[] = {
3597 { { STATE_PSEXCM }, 'i' },
3598 { { STATE_PSRING }, 'i' },
3599 { { STATE_EPC6 }, 'm' }
3600 };
3601
3602 static xtensa_arg_internal Iclass_xt_iclass_rsr_excsave6_args[] = {
3603 { { OPERAND_art }, 'o' }
3604 };
3605
3606 static xtensa_arg_internal Iclass_xt_iclass_rsr_excsave6_stateArgs[] = {
3607 { { STATE_PSEXCM }, 'i' },
3608 { { STATE_PSRING }, 'i' },
3609 { { STATE_EXCSAVE6 }, 'i' }
3610 };
3611
3612 static xtensa_arg_internal Iclass_xt_iclass_wsr_excsave6_args[] = {
3613 { { OPERAND_art }, 'i' }
3614 };
3615
3616 static xtensa_arg_internal Iclass_xt_iclass_wsr_excsave6_stateArgs[] = {
3617 { { STATE_PSEXCM }, 'i' },
3618 { { STATE_PSRING }, 'i' },
3619 { { STATE_EXCSAVE6 }, 'o' }
3620 };
3621
3622 static xtensa_arg_internal Iclass_xt_iclass_xsr_excsave6_args[] = {
3623 { { OPERAND_art }, 'm' }
3624 };
3625
3626 static xtensa_arg_internal Iclass_xt_iclass_xsr_excsave6_stateArgs[] = {
3627 { { STATE_PSEXCM }, 'i' },
3628 { { STATE_PSRING }, 'i' },
3629 { { STATE_EXCSAVE6 }, 'm' }
3630 };
3631
3632 static xtensa_arg_internal Iclass_xt_iclass_rsr_epc7_args[] = {
3633 { { OPERAND_art }, 'o' }
3634 };
3635
3636 static xtensa_arg_internal Iclass_xt_iclass_rsr_epc7_stateArgs[] = {
3637 { { STATE_PSEXCM }, 'i' },
3638 { { STATE_PSRING }, 'i' },
3639 { { STATE_EPC7 }, 'i' }
3640 };
3641
3642 static xtensa_arg_internal Iclass_xt_iclass_wsr_epc7_args[] = {
3643 { { OPERAND_art }, 'i' }
3644 };
3645
3646 static xtensa_arg_internal Iclass_xt_iclass_wsr_epc7_stateArgs[] = {
3647 { { STATE_PSEXCM }, 'i' },
3648 { { STATE_PSRING }, 'i' },
3649 { { STATE_EPC7 }, 'o' }
3650 };
3651
3652 static xtensa_arg_internal Iclass_xt_iclass_xsr_epc7_args[] = {
3653 { { OPERAND_art }, 'm' }
3654 };
3655
3656 static xtensa_arg_internal Iclass_xt_iclass_xsr_epc7_stateArgs[] = {
3657 { { STATE_PSEXCM }, 'i' },
3658 { { STATE_PSRING }, 'i' },
3659 { { STATE_EPC7 }, 'm' }
3660 };
3661
3662 static xtensa_arg_internal Iclass_xt_iclass_rsr_excsave7_args[] = {
3663 { { OPERAND_art }, 'o' }
3664 };
3665
3666 static xtensa_arg_internal Iclass_xt_iclass_rsr_excsave7_stateArgs[] = {
3667 { { STATE_PSEXCM }, 'i' },
3668 { { STATE_PSRING }, 'i' },
3669 { { STATE_EXCSAVE7 }, 'i' }
3670 };
3671
3672 static xtensa_arg_internal Iclass_xt_iclass_wsr_excsave7_args[] = {
3673 { { OPERAND_art }, 'i' }
3674 };
3675
3676 static xtensa_arg_internal Iclass_xt_iclass_wsr_excsave7_stateArgs[] = {
3677 { { STATE_PSEXCM }, 'i' },
3678 { { STATE_PSRING }, 'i' },
3679 { { STATE_EXCSAVE7 }, 'o' }
3680 };
3681
3682 static xtensa_arg_internal Iclass_xt_iclass_xsr_excsave7_args[] = {
3683 { { OPERAND_art }, 'm' }
3684 };
3685
3686 static xtensa_arg_internal Iclass_xt_iclass_xsr_excsave7_stateArgs[] = {
3687 { { STATE_PSEXCM }, 'i' },
3688 { { STATE_PSRING }, 'i' },
3689 { { STATE_EXCSAVE7 }, 'm' }
3690 };
3691
3692 static xtensa_arg_internal Iclass_xt_iclass_rsr_eps2_args[] = {
3693 { { OPERAND_art }, 'o' }
3694 };
3695
3696 static xtensa_arg_internal Iclass_xt_iclass_rsr_eps2_stateArgs[] = {
3697 { { STATE_PSEXCM }, 'i' },
3698 { { STATE_PSRING }, 'i' },
3699 { { STATE_EPS2 }, 'i' }
3700 };
3701
3702 static xtensa_arg_internal Iclass_xt_iclass_wsr_eps2_args[] = {
3703 { { OPERAND_art }, 'i' }
3704 };
3705
3706 static xtensa_arg_internal Iclass_xt_iclass_wsr_eps2_stateArgs[] = {
3707 { { STATE_PSEXCM }, 'i' },
3708 { { STATE_PSRING }, 'i' },
3709 { { STATE_EPS2 }, 'o' }
3710 };
3711
3712 static xtensa_arg_internal Iclass_xt_iclass_xsr_eps2_args[] = {
3713 { { OPERAND_art }, 'm' }
3714 };
3715
3716 static xtensa_arg_internal Iclass_xt_iclass_xsr_eps2_stateArgs[] = {
3717 { { STATE_PSEXCM }, 'i' },
3718 { { STATE_PSRING }, 'i' },
3719 { { STATE_EPS2 }, 'm' }
3720 };
3721
3722 static xtensa_arg_internal Iclass_xt_iclass_rsr_eps3_args[] = {
3723 { { OPERAND_art }, 'o' }
3724 };
3725
3726 static xtensa_arg_internal Iclass_xt_iclass_rsr_eps3_stateArgs[] = {
3727 { { STATE_PSEXCM }, 'i' },
3728 { { STATE_PSRING }, 'i' },
3729 { { STATE_EPS3 }, 'i' }
3730 };
3731
3732 static xtensa_arg_internal Iclass_xt_iclass_wsr_eps3_args[] = {
3733 { { OPERAND_art }, 'i' }
3734 };
3735
3736 static xtensa_arg_internal Iclass_xt_iclass_wsr_eps3_stateArgs[] = {
3737 { { STATE_PSEXCM }, 'i' },
3738 { { STATE_PSRING }, 'i' },
3739 { { STATE_EPS3 }, 'o' }
3740 };
3741
3742 static xtensa_arg_internal Iclass_xt_iclass_xsr_eps3_args[] = {
3743 { { OPERAND_art }, 'm' }
3744 };
3745
3746 static xtensa_arg_internal Iclass_xt_iclass_xsr_eps3_stateArgs[] = {
3747 { { STATE_PSEXCM }, 'i' },
3748 { { STATE_PSRING }, 'i' },
3749 { { STATE_EPS3 }, 'm' }
3750 };
3751
3752 static xtensa_arg_internal Iclass_xt_iclass_rsr_eps4_args[] = {
3753 { { OPERAND_art }, 'o' }
3754 };
3755
3756 static xtensa_arg_internal Iclass_xt_iclass_rsr_eps4_stateArgs[] = {
3757 { { STATE_PSEXCM }, 'i' },
3758 { { STATE_PSRING }, 'i' },
3759 { { STATE_EPS4 }, 'i' }
3760 };
3761
3762 static xtensa_arg_internal Iclass_xt_iclass_wsr_eps4_args[] = {
3763 { { OPERAND_art }, 'i' }
3764 };
3765
3766 static xtensa_arg_internal Iclass_xt_iclass_wsr_eps4_stateArgs[] = {
3767 { { STATE_PSEXCM }, 'i' },
3768 { { STATE_PSRING }, 'i' },
3769 { { STATE_EPS4 }, 'o' }
3770 };
3771
3772 static xtensa_arg_internal Iclass_xt_iclass_xsr_eps4_args[] = {
3773 { { OPERAND_art }, 'm' }
3774 };
3775
3776 static xtensa_arg_internal Iclass_xt_iclass_xsr_eps4_stateArgs[] = {
3777 { { STATE_PSEXCM }, 'i' },
3778 { { STATE_PSRING }, 'i' },
3779 { { STATE_EPS4 }, 'm' }
3780 };
3781
3782 static xtensa_arg_internal Iclass_xt_iclass_rsr_eps5_args[] = {
3783 { { OPERAND_art }, 'o' }
3784 };
3785
3786 static xtensa_arg_internal Iclass_xt_iclass_rsr_eps5_stateArgs[] = {
3787 { { STATE_PSEXCM }, 'i' },
3788 { { STATE_PSRING }, 'i' },
3789 { { STATE_EPS5 }, 'i' }
3790 };
3791
3792 static xtensa_arg_internal Iclass_xt_iclass_wsr_eps5_args[] = {
3793 { { OPERAND_art }, 'i' }
3794 };
3795
3796 static xtensa_arg_internal Iclass_xt_iclass_wsr_eps5_stateArgs[] = {
3797 { { STATE_PSEXCM }, 'i' },
3798 { { STATE_PSRING }, 'i' },
3799 { { STATE_EPS5 }, 'o' }
3800 };
3801
3802 static xtensa_arg_internal Iclass_xt_iclass_xsr_eps5_args[] = {
3803 { { OPERAND_art }, 'm' }
3804 };
3805
3806 static xtensa_arg_internal Iclass_xt_iclass_xsr_eps5_stateArgs[] = {
3807 { { STATE_PSEXCM }, 'i' },
3808 { { STATE_PSRING }, 'i' },
3809 { { STATE_EPS5 }, 'm' }
3810 };
3811
3812 static xtensa_arg_internal Iclass_xt_iclass_rsr_eps6_args[] = {
3813 { { OPERAND_art }, 'o' }
3814 };
3815
3816 static xtensa_arg_internal Iclass_xt_iclass_rsr_eps6_stateArgs[] = {
3817 { { STATE_PSEXCM }, 'i' },
3818 { { STATE_PSRING }, 'i' },
3819 { { STATE_EPS6 }, 'i' }
3820 };
3821
3822 static xtensa_arg_internal Iclass_xt_iclass_wsr_eps6_args[] = {
3823 { { OPERAND_art }, 'i' }
3824 };
3825
3826 static xtensa_arg_internal Iclass_xt_iclass_wsr_eps6_stateArgs[] = {
3827 { { STATE_PSEXCM }, 'i' },
3828 { { STATE_PSRING }, 'i' },
3829 { { STATE_EPS6 }, 'o' }
3830 };
3831
3832 static xtensa_arg_internal Iclass_xt_iclass_xsr_eps6_args[] = {
3833 { { OPERAND_art }, 'm' }
3834 };
3835
3836 static xtensa_arg_internal Iclass_xt_iclass_xsr_eps6_stateArgs[] = {
3837 { { STATE_PSEXCM }, 'i' },
3838 { { STATE_PSRING }, 'i' },
3839 { { STATE_EPS6 }, 'm' }
3840 };
3841
3842 static xtensa_arg_internal Iclass_xt_iclass_rsr_eps7_args[] = {
3843 { { OPERAND_art }, 'o' }
3844 };
3845
3846 static xtensa_arg_internal Iclass_xt_iclass_rsr_eps7_stateArgs[] = {
3847 { { STATE_PSEXCM }, 'i' },
3848 { { STATE_PSRING }, 'i' },
3849 { { STATE_EPS7 }, 'i' }
3850 };
3851
3852 static xtensa_arg_internal Iclass_xt_iclass_wsr_eps7_args[] = {
3853 { { OPERAND_art }, 'i' }
3854 };
3855
3856 static xtensa_arg_internal Iclass_xt_iclass_wsr_eps7_stateArgs[] = {
3857 { { STATE_PSEXCM }, 'i' },
3858 { { STATE_PSRING }, 'i' },
3859 { { STATE_EPS7 }, 'o' }
3860 };
3861
3862 static xtensa_arg_internal Iclass_xt_iclass_xsr_eps7_args[] = {
3863 { { OPERAND_art }, 'm' }
3864 };
3865
3866 static xtensa_arg_internal Iclass_xt_iclass_xsr_eps7_stateArgs[] = {
3867 { { STATE_PSEXCM }, 'i' },
3868 { { STATE_PSRING }, 'i' },
3869 { { STATE_EPS7 }, 'm' }
3870 };
3871
3872 static xtensa_arg_internal Iclass_xt_iclass_rsr_excvaddr_args[] = {
3873 { { OPERAND_art }, 'o' }
3874 };
3875
3876 static xtensa_arg_internal Iclass_xt_iclass_rsr_excvaddr_stateArgs[] = {
3877 { { STATE_PSEXCM }, 'i' },
3878 { { STATE_PSRING }, 'i' },
3879 { { STATE_EXCVADDR }, 'i' }
3880 };
3881
3882 static xtensa_arg_internal Iclass_xt_iclass_wsr_excvaddr_args[] = {
3883 { { OPERAND_art }, 'i' }
3884 };
3885
3886 static xtensa_arg_internal Iclass_xt_iclass_wsr_excvaddr_stateArgs[] = {
3887 { { STATE_PSEXCM }, 'i' },
3888 { { STATE_PSRING }, 'i' },
3889 { { STATE_EXCVADDR }, 'o' }
3890 };
3891
3892 static xtensa_arg_internal Iclass_xt_iclass_xsr_excvaddr_args[] = {
3893 { { OPERAND_art }, 'm' }
3894 };
3895
3896 static xtensa_arg_internal Iclass_xt_iclass_xsr_excvaddr_stateArgs[] = {
3897 { { STATE_PSEXCM }, 'i' },
3898 { { STATE_PSRING }, 'i' },
3899 { { STATE_EXCVADDR }, 'm' }
3900 };
3901
3902 static xtensa_arg_internal Iclass_xt_iclass_rsr_depc_args[] = {
3903 { { OPERAND_art }, 'o' }
3904 };
3905
3906 static xtensa_arg_internal Iclass_xt_iclass_rsr_depc_stateArgs[] = {
3907 { { STATE_PSEXCM }, 'i' },
3908 { { STATE_PSRING }, 'i' },
3909 { { STATE_DEPC }, 'i' }
3910 };
3911
3912 static xtensa_arg_internal Iclass_xt_iclass_wsr_depc_args[] = {
3913 { { OPERAND_art }, 'i' }
3914 };
3915
3916 static xtensa_arg_internal Iclass_xt_iclass_wsr_depc_stateArgs[] = {
3917 { { STATE_PSEXCM }, 'i' },
3918 { { STATE_PSRING }, 'i' },
3919 { { STATE_DEPC }, 'o' }
3920 };
3921
3922 static xtensa_arg_internal Iclass_xt_iclass_xsr_depc_args[] = {
3923 { { OPERAND_art }, 'm' }
3924 };
3925
3926 static xtensa_arg_internal Iclass_xt_iclass_xsr_depc_stateArgs[] = {
3927 { { STATE_PSEXCM }, 'i' },
3928 { { STATE_PSRING }, 'i' },
3929 { { STATE_DEPC }, 'm' }
3930 };
3931
3932 static xtensa_arg_internal Iclass_xt_iclass_rsr_exccause_args[] = {
3933 { { OPERAND_art }, 'o' }
3934 };
3935
3936 static xtensa_arg_internal Iclass_xt_iclass_rsr_exccause_stateArgs[] = {
3937 { { STATE_PSEXCM }, 'i' },
3938 { { STATE_PSRING }, 'i' },
3939 { { STATE_EXCCAUSE }, 'i' },
3940 { { STATE_XTSYNC }, 'i' }
3941 };
3942
3943 static xtensa_arg_internal Iclass_xt_iclass_wsr_exccause_args[] = {
3944 { { OPERAND_art }, 'i' }
3945 };
3946
3947 static xtensa_arg_internal Iclass_xt_iclass_wsr_exccause_stateArgs[] = {
3948 { { STATE_PSEXCM }, 'i' },
3949 { { STATE_PSRING }, 'i' },
3950 { { STATE_EXCCAUSE }, 'o' }
3951 };
3952
3953 static xtensa_arg_internal Iclass_xt_iclass_xsr_exccause_args[] = {
3954 { { OPERAND_art }, 'm' }
3955 };
3956
3957 static xtensa_arg_internal Iclass_xt_iclass_xsr_exccause_stateArgs[] = {
3958 { { STATE_PSEXCM }, 'i' },
3959 { { STATE_PSRING }, 'i' },
3960 { { STATE_EXCCAUSE }, 'm' }
3961 };
3962
3963 static xtensa_arg_internal Iclass_xt_iclass_rsr_misc0_args[] = {
3964 { { OPERAND_art }, 'o' }
3965 };
3966
3967 static xtensa_arg_internal Iclass_xt_iclass_rsr_misc0_stateArgs[] = {
3968 { { STATE_PSEXCM }, 'i' },
3969 { { STATE_PSRING }, 'i' },
3970 { { STATE_MISC0 }, 'i' }
3971 };
3972
3973 static xtensa_arg_internal Iclass_xt_iclass_wsr_misc0_args[] = {
3974 { { OPERAND_art }, 'i' }
3975 };
3976
3977 static xtensa_arg_internal Iclass_xt_iclass_wsr_misc0_stateArgs[] = {
3978 { { STATE_PSEXCM }, 'i' },
3979 { { STATE_PSRING }, 'i' },
3980 { { STATE_MISC0 }, 'o' }
3981 };
3982
3983 static xtensa_arg_internal Iclass_xt_iclass_xsr_misc0_args[] = {
3984 { { OPERAND_art }, 'm' }
3985 };
3986
3987 static xtensa_arg_internal Iclass_xt_iclass_xsr_misc0_stateArgs[] = {
3988 { { STATE_PSEXCM }, 'i' },
3989 { { STATE_PSRING }, 'i' },
3990 { { STATE_MISC0 }, 'm' }
3991 };
3992
3993 static xtensa_arg_internal Iclass_xt_iclass_rsr_misc1_args[] = {
3994 { { OPERAND_art }, 'o' }
3995 };
3996
3997 static xtensa_arg_internal Iclass_xt_iclass_rsr_misc1_stateArgs[] = {
3998 { { STATE_PSEXCM }, 'i' },
3999 { { STATE_PSRING }, 'i' },
4000 { { STATE_MISC1 }, 'i' }
4001 };
4002
4003 static xtensa_arg_internal Iclass_xt_iclass_wsr_misc1_args[] = {
4004 { { OPERAND_art }, 'i' }
4005 };
4006
4007 static xtensa_arg_internal Iclass_xt_iclass_wsr_misc1_stateArgs[] = {
4008 { { STATE_PSEXCM }, 'i' },
4009 { { STATE_PSRING }, 'i' },
4010 { { STATE_MISC1 }, 'o' }
4011 };
4012
4013 static xtensa_arg_internal Iclass_xt_iclass_xsr_misc1_args[] = {
4014 { { OPERAND_art }, 'm' }
4015 };
4016
4017 static xtensa_arg_internal Iclass_xt_iclass_xsr_misc1_stateArgs[] = {
4018 { { STATE_PSEXCM }, 'i' },
4019 { { STATE_PSRING }, 'i' },
4020 { { STATE_MISC1 }, 'm' }
4021 };
4022
4023 static xtensa_arg_internal Iclass_xt_iclass_rsr_prid_args[] = {
4024 { { OPERAND_art }, 'o' }
4025 };
4026
4027 static xtensa_arg_internal Iclass_xt_iclass_rsr_prid_stateArgs[] = {
4028 { { STATE_PSEXCM }, 'i' },
4029 { { STATE_PSRING }, 'i' }
4030 };
4031
4032 static xtensa_arg_internal Iclass_xt_iclass_rsr_vecbase_args[] = {
4033 { { OPERAND_art }, 'o' }
4034 };
4035
4036 static xtensa_arg_internal Iclass_xt_iclass_rsr_vecbase_stateArgs[] = {
4037 { { STATE_PSEXCM }, 'i' },
4038 { { STATE_PSRING }, 'i' },
4039 { { STATE_VECBASE }, 'i' }
4040 };
4041
4042 static xtensa_arg_internal Iclass_xt_iclass_wsr_vecbase_args[] = {
4043 { { OPERAND_art }, 'i' }
4044 };
4045
4046 static xtensa_arg_internal Iclass_xt_iclass_wsr_vecbase_stateArgs[] = {
4047 { { STATE_PSEXCM }, 'i' },
4048 { { STATE_PSRING }, 'i' },
4049 { { STATE_VECBASE }, 'o' }
4050 };
4051
4052 static xtensa_arg_internal Iclass_xt_iclass_xsr_vecbase_args[] = {
4053 { { OPERAND_art }, 'm' }
4054 };
4055
4056 static xtensa_arg_internal Iclass_xt_iclass_xsr_vecbase_stateArgs[] = {
4057 { { STATE_PSEXCM }, 'i' },
4058 { { STATE_PSRING }, 'i' },
4059 { { STATE_VECBASE }, 'm' }
4060 };
4061
4062 static xtensa_arg_internal Iclass_xt_iclass_mul16_args[] = {
4063 { { OPERAND_arr }, 'o' },
4064 { { OPERAND_ars }, 'i' },
4065 { { OPERAND_art }, 'i' }
4066 };
4067
4068 static xtensa_arg_internal Iclass_xt_iclass_rfi_args[] = {
4069 { { OPERAND_s }, 'i' }
4070 };
4071
4072 static xtensa_arg_internal Iclass_xt_iclass_rfi_stateArgs[] = {
4073 { { STATE_PSWOE }, 'o' },
4074 { { STATE_PSCALLINC }, 'o' },
4075 { { STATE_PSOWB }, 'o' },
4076 { { STATE_PSRING }, 'm' },
4077 { { STATE_PSUM }, 'o' },
4078 { { STATE_PSEXCM }, 'm' },
4079 { { STATE_PSINTLEVEL }, 'o' },
4080 { { STATE_EPC1 }, 'i' },
4081 { { STATE_EPC2 }, 'i' },
4082 { { STATE_EPC3 }, 'i' },
4083 { { STATE_EPC4 }, 'i' },
4084 { { STATE_EPC5 }, 'i' },
4085 { { STATE_EPC6 }, 'i' },
4086 { { STATE_EPC7 }, 'i' },
4087 { { STATE_EPS2 }, 'i' },
4088 { { STATE_EPS3 }, 'i' },
4089 { { STATE_EPS4 }, 'i' },
4090 { { STATE_EPS5 }, 'i' },
4091 { { STATE_EPS6 }, 'i' },
4092 { { STATE_EPS7 }, 'i' },
4093 { { STATE_InOCDMode }, 'm' }
4094 };
4095
4096 static xtensa_arg_internal Iclass_xt_iclass_wait_args[] = {
4097 { { OPERAND_s }, 'i' }
4098 };
4099
4100 static xtensa_arg_internal Iclass_xt_iclass_wait_stateArgs[] = {
4101 { { STATE_PSEXCM }, 'i' },
4102 { { STATE_PSRING }, 'i' },
4103 { { STATE_PSINTLEVEL }, 'o' }
4104 };
4105
4106 static xtensa_arg_internal Iclass_xt_iclass_rsr_interrupt_args[] = {
4107 { { OPERAND_art }, 'o' }
4108 };
4109
4110 static xtensa_arg_internal Iclass_xt_iclass_rsr_interrupt_stateArgs[] = {
4111 { { STATE_PSEXCM }, 'i' },
4112 { { STATE_PSRING }, 'i' },
4113 { { STATE_INTERRUPT }, 'i' }
4114 };
4115
4116 static xtensa_arg_internal Iclass_xt_iclass_wsr_intset_args[] = {
4117 { { OPERAND_art }, 'i' }
4118 };
4119
4120 static xtensa_arg_internal Iclass_xt_iclass_wsr_intset_stateArgs[] = {
4121 { { STATE_PSEXCM }, 'i' },
4122 { { STATE_PSRING }, 'i' },
4123 { { STATE_XTSYNC }, 'o' },
4124 { { STATE_INTERRUPT }, 'm' }
4125 };
4126
4127 static xtensa_arg_internal Iclass_xt_iclass_wsr_intclear_args[] = {
4128 { { OPERAND_art }, 'i' }
4129 };
4130
4131 static xtensa_arg_internal Iclass_xt_iclass_wsr_intclear_stateArgs[] = {
4132 { { STATE_PSEXCM }, 'i' },
4133 { { STATE_PSRING }, 'i' },
4134 { { STATE_XTSYNC }, 'o' },
4135 { { STATE_INTERRUPT }, 'm' }
4136 };
4137
4138 static xtensa_arg_internal Iclass_xt_iclass_rsr_intenable_args[] = {
4139 { { OPERAND_art }, 'o' }
4140 };
4141
4142 static xtensa_arg_internal Iclass_xt_iclass_rsr_intenable_stateArgs[] = {
4143 { { STATE_PSEXCM }, 'i' },
4144 { { STATE_PSRING }, 'i' },
4145 { { STATE_INTENABLE }, 'i' }
4146 };
4147
4148 static xtensa_arg_internal Iclass_xt_iclass_wsr_intenable_args[] = {
4149 { { OPERAND_art }, 'i' }
4150 };
4151
4152 static xtensa_arg_internal Iclass_xt_iclass_wsr_intenable_stateArgs[] = {
4153 { { STATE_PSEXCM }, 'i' },
4154 { { STATE_PSRING }, 'i' },
4155 { { STATE_INTENABLE }, 'o' }
4156 };
4157
4158 static xtensa_arg_internal Iclass_xt_iclass_xsr_intenable_args[] = {
4159 { { OPERAND_art }, 'm' }
4160 };
4161
4162 static xtensa_arg_internal Iclass_xt_iclass_xsr_intenable_stateArgs[] = {
4163 { { STATE_PSEXCM }, 'i' },
4164 { { STATE_PSRING }, 'i' },
4165 { { STATE_INTENABLE }, 'm' }
4166 };
4167
4168 static xtensa_arg_internal Iclass_xt_iclass_break_args[] = {
4169 { { OPERAND_imms }, 'i' },
4170 { { OPERAND_immt }, 'i' }
4171 };
4172
4173 static xtensa_arg_internal Iclass_xt_iclass_break_stateArgs[] = {
4174 { { STATE_PSEXCM }, 'i' },
4175 { { STATE_PSINTLEVEL }, 'i' }
4176 };
4177
4178 static xtensa_arg_internal Iclass_xt_iclass_break_n_args[] = {
4179 { { OPERAND_imms }, 'i' }
4180 };
4181
4182 static xtensa_arg_internal Iclass_xt_iclass_break_n_stateArgs[] = {
4183 { { STATE_PSEXCM }, 'i' },
4184 { { STATE_PSINTLEVEL }, 'i' }
4185 };
4186
4187 static xtensa_arg_internal Iclass_xt_iclass_rsr_dbreaka0_args[] = {
4188 { { OPERAND_art }, 'o' }
4189 };
4190
4191 static xtensa_arg_internal Iclass_xt_iclass_rsr_dbreaka0_stateArgs[] = {
4192 { { STATE_PSEXCM }, 'i' },
4193 { { STATE_PSRING }, 'i' },
4194 { { STATE_DBREAKA0 }, 'i' }
4195 };
4196
4197 static xtensa_arg_internal Iclass_xt_iclass_wsr_dbreaka0_args[] = {
4198 { { OPERAND_art }, 'i' }
4199 };
4200
4201 static xtensa_arg_internal Iclass_xt_iclass_wsr_dbreaka0_stateArgs[] = {
4202 { { STATE_PSEXCM }, 'i' },
4203 { { STATE_PSRING }, 'i' },
4204 { { STATE_DBREAKA0 }, 'o' },
4205 { { STATE_XTSYNC }, 'o' }
4206 };
4207
4208 static xtensa_arg_internal Iclass_xt_iclass_xsr_dbreaka0_args[] = {
4209 { { OPERAND_art }, 'm' }
4210 };
4211
4212 static xtensa_arg_internal Iclass_xt_iclass_xsr_dbreaka0_stateArgs[] = {
4213 { { STATE_PSEXCM }, 'i' },
4214 { { STATE_PSRING }, 'i' },
4215 { { STATE_DBREAKA0 }, 'm' },
4216 { { STATE_XTSYNC }, 'o' }
4217 };
4218
4219 static xtensa_arg_internal Iclass_xt_iclass_rsr_dbreakc0_args[] = {
4220 { { OPERAND_art }, 'o' }
4221 };
4222
4223 static xtensa_arg_internal Iclass_xt_iclass_rsr_dbreakc0_stateArgs[] = {
4224 { { STATE_PSEXCM }, 'i' },
4225 { { STATE_PSRING }, 'i' },
4226 { { STATE_DBREAKC0 }, 'i' }
4227 };
4228
4229 static xtensa_arg_internal Iclass_xt_iclass_wsr_dbreakc0_args[] = {
4230 { { OPERAND_art }, 'i' }
4231 };
4232
4233 static xtensa_arg_internal Iclass_xt_iclass_wsr_dbreakc0_stateArgs[] = {
4234 { { STATE_PSEXCM }, 'i' },
4235 { { STATE_PSRING }, 'i' },
4236 { { STATE_DBREAKC0 }, 'o' },
4237 { { STATE_XTSYNC }, 'o' }
4238 };
4239
4240 static xtensa_arg_internal Iclass_xt_iclass_xsr_dbreakc0_args[] = {
4241 { { OPERAND_art }, 'm' }
4242 };
4243
4244 static xtensa_arg_internal Iclass_xt_iclass_xsr_dbreakc0_stateArgs[] = {
4245 { { STATE_PSEXCM }, 'i' },
4246 { { STATE_PSRING }, 'i' },
4247 { { STATE_DBREAKC0 }, 'm' },
4248 { { STATE_XTSYNC }, 'o' }
4249 };
4250
4251 static xtensa_arg_internal Iclass_xt_iclass_rsr_dbreaka1_args[] = {
4252 { { OPERAND_art }, 'o' }
4253 };
4254
4255 static xtensa_arg_internal Iclass_xt_iclass_rsr_dbreaka1_stateArgs[] = {
4256 { { STATE_PSEXCM }, 'i' },
4257 { { STATE_PSRING }, 'i' },
4258 { { STATE_DBREAKA1 }, 'i' }
4259 };
4260
4261 static xtensa_arg_internal Iclass_xt_iclass_wsr_dbreaka1_args[] = {
4262 { { OPERAND_art }, 'i' }
4263 };
4264
4265 static xtensa_arg_internal Iclass_xt_iclass_wsr_dbreaka1_stateArgs[] = {
4266 { { STATE_PSEXCM }, 'i' },
4267 { { STATE_PSRING }, 'i' },
4268 { { STATE_DBREAKA1 }, 'o' },
4269 { { STATE_XTSYNC }, 'o' }
4270 };
4271
4272 static xtensa_arg_internal Iclass_xt_iclass_xsr_dbreaka1_args[] = {
4273 { { OPERAND_art }, 'm' }
4274 };
4275
4276 static xtensa_arg_internal Iclass_xt_iclass_xsr_dbreaka1_stateArgs[] = {
4277 { { STATE_PSEXCM }, 'i' },
4278 { { STATE_PSRING }, 'i' },
4279 { { STATE_DBREAKA1 }, 'm' },
4280 { { STATE_XTSYNC }, 'o' }
4281 };
4282
4283 static xtensa_arg_internal Iclass_xt_iclass_rsr_dbreakc1_args[] = {
4284 { { OPERAND_art }, 'o' }
4285 };
4286
4287 static xtensa_arg_internal Iclass_xt_iclass_rsr_dbreakc1_stateArgs[] = {
4288 { { STATE_PSEXCM }, 'i' },
4289 { { STATE_PSRING }, 'i' },
4290 { { STATE_DBREAKC1 }, 'i' }
4291 };
4292
4293 static xtensa_arg_internal Iclass_xt_iclass_wsr_dbreakc1_args[] = {
4294 { { OPERAND_art }, 'i' }
4295 };
4296
4297 static xtensa_arg_internal Iclass_xt_iclass_wsr_dbreakc1_stateArgs[] = {
4298 { { STATE_PSEXCM }, 'i' },
4299 { { STATE_PSRING }, 'i' },
4300 { { STATE_DBREAKC1 }, 'o' },
4301 { { STATE_XTSYNC }, 'o' }
4302 };
4303
4304 static xtensa_arg_internal Iclass_xt_iclass_xsr_dbreakc1_args[] = {
4305 { { OPERAND_art }, 'm' }
4306 };
4307
4308 static xtensa_arg_internal Iclass_xt_iclass_xsr_dbreakc1_stateArgs[] = {
4309 { { STATE_PSEXCM }, 'i' },
4310 { { STATE_PSRING }, 'i' },
4311 { { STATE_DBREAKC1 }, 'm' },
4312 { { STATE_XTSYNC }, 'o' }
4313 };
4314
4315 static xtensa_arg_internal Iclass_xt_iclass_rsr_ibreaka0_args[] = {
4316 { { OPERAND_art }, 'o' }
4317 };
4318
4319 static xtensa_arg_internal Iclass_xt_iclass_rsr_ibreaka0_stateArgs[] = {
4320 { { STATE_PSEXCM }, 'i' },
4321 { { STATE_PSRING }, 'i' },
4322 { { STATE_IBREAKA0 }, 'i' }
4323 };
4324
4325 static xtensa_arg_internal Iclass_xt_iclass_wsr_ibreaka0_args[] = {
4326 { { OPERAND_art }, 'i' }
4327 };
4328
4329 static xtensa_arg_internal Iclass_xt_iclass_wsr_ibreaka0_stateArgs[] = {
4330 { { STATE_PSEXCM }, 'i' },
4331 { { STATE_PSRING }, 'i' },
4332 { { STATE_IBREAKA0 }, 'o' }
4333 };
4334
4335 static xtensa_arg_internal Iclass_xt_iclass_xsr_ibreaka0_args[] = {
4336 { { OPERAND_art }, 'm' }
4337 };
4338
4339 static xtensa_arg_internal Iclass_xt_iclass_xsr_ibreaka0_stateArgs[] = {
4340 { { STATE_PSEXCM }, 'i' },
4341 { { STATE_PSRING }, 'i' },
4342 { { STATE_IBREAKA0 }, 'm' }
4343 };
4344
4345 static xtensa_arg_internal Iclass_xt_iclass_rsr_ibreaka1_args[] = {
4346 { { OPERAND_art }, 'o' }
4347 };
4348
4349 static xtensa_arg_internal Iclass_xt_iclass_rsr_ibreaka1_stateArgs[] = {
4350 { { STATE_PSEXCM }, 'i' },
4351 { { STATE_PSRING }, 'i' },
4352 { { STATE_IBREAKA1 }, 'i' }
4353 };
4354
4355 static xtensa_arg_internal Iclass_xt_iclass_wsr_ibreaka1_args[] = {
4356 { { OPERAND_art }, 'i' }
4357 };
4358
4359 static xtensa_arg_internal Iclass_xt_iclass_wsr_ibreaka1_stateArgs[] = {
4360 { { STATE_PSEXCM }, 'i' },
4361 { { STATE_PSRING }, 'i' },
4362 { { STATE_IBREAKA1 }, 'o' }
4363 };
4364
4365 static xtensa_arg_internal Iclass_xt_iclass_xsr_ibreaka1_args[] = {
4366 { { OPERAND_art }, 'm' }
4367 };
4368
4369 static xtensa_arg_internal Iclass_xt_iclass_xsr_ibreaka1_stateArgs[] = {
4370 { { STATE_PSEXCM }, 'i' },
4371 { { STATE_PSRING }, 'i' },
4372 { { STATE_IBREAKA1 }, 'm' }
4373 };
4374
4375 static xtensa_arg_internal Iclass_xt_iclass_rsr_ibreakenable_args[] = {
4376 { { OPERAND_art }, 'o' }
4377 };
4378
4379 static xtensa_arg_internal Iclass_xt_iclass_rsr_ibreakenable_stateArgs[] = {
4380 { { STATE_PSEXCM }, 'i' },
4381 { { STATE_PSRING }, 'i' },
4382 { { STATE_IBREAKENABLE }, 'i' }
4383 };
4384
4385 static xtensa_arg_internal Iclass_xt_iclass_wsr_ibreakenable_args[] = {
4386 { { OPERAND_art }, 'i' }
4387 };
4388
4389 static xtensa_arg_internal Iclass_xt_iclass_wsr_ibreakenable_stateArgs[] = {
4390 { { STATE_PSEXCM }, 'i' },
4391 { { STATE_PSRING }, 'i' },
4392 { { STATE_IBREAKENABLE }, 'o' }
4393 };
4394
4395 static xtensa_arg_internal Iclass_xt_iclass_xsr_ibreakenable_args[] = {
4396 { { OPERAND_art }, 'm' }
4397 };
4398
4399 static xtensa_arg_internal Iclass_xt_iclass_xsr_ibreakenable_stateArgs[] = {
4400 { { STATE_PSEXCM }, 'i' },
4401 { { STATE_PSRING }, 'i' },
4402 { { STATE_IBREAKENABLE }, 'm' }
4403 };
4404
4405 static xtensa_arg_internal Iclass_xt_iclass_rsr_debugcause_args[] = {
4406 { { OPERAND_art }, 'o' }
4407 };
4408
4409 static xtensa_arg_internal Iclass_xt_iclass_rsr_debugcause_stateArgs[] = {
4410 { { STATE_PSEXCM }, 'i' },
4411 { { STATE_PSRING }, 'i' },
4412 { { STATE_DEBUGCAUSE }, 'i' },
4413 { { STATE_DBNUM }, 'i' }
4414 };
4415
4416 static xtensa_arg_internal Iclass_xt_iclass_wsr_debugcause_args[] = {
4417 { { OPERAND_art }, 'i' }
4418 };
4419
4420 static xtensa_arg_internal Iclass_xt_iclass_wsr_debugcause_stateArgs[] = {
4421 { { STATE_PSEXCM }, 'i' },
4422 { { STATE_PSRING }, 'i' },
4423 { { STATE_DEBUGCAUSE }, 'o' },
4424 { { STATE_DBNUM }, 'o' }
4425 };
4426
4427 static xtensa_arg_internal Iclass_xt_iclass_xsr_debugcause_args[] = {
4428 { { OPERAND_art }, 'm' }
4429 };
4430
4431 static xtensa_arg_internal Iclass_xt_iclass_xsr_debugcause_stateArgs[] = {
4432 { { STATE_PSEXCM }, 'i' },
4433 { { STATE_PSRING }, 'i' },
4434 { { STATE_DEBUGCAUSE }, 'm' },
4435 { { STATE_DBNUM }, 'm' }
4436 };
4437
4438 static xtensa_arg_internal Iclass_xt_iclass_rsr_icount_args[] = {
4439 { { OPERAND_art }, 'o' }
4440 };
4441
4442 static xtensa_arg_internal Iclass_xt_iclass_rsr_icount_stateArgs[] = {
4443 { { STATE_PSEXCM }, 'i' },
4444 { { STATE_PSRING }, 'i' },
4445 { { STATE_ICOUNT }, 'i' }
4446 };
4447
4448 static xtensa_arg_internal Iclass_xt_iclass_wsr_icount_args[] = {
4449 { { OPERAND_art }, 'i' }
4450 };
4451
4452 static xtensa_arg_internal Iclass_xt_iclass_wsr_icount_stateArgs[] = {
4453 { { STATE_PSEXCM }, 'i' },
4454 { { STATE_PSRING }, 'i' },
4455 { { STATE_XTSYNC }, 'o' },
4456 { { STATE_ICOUNT }, 'o' }
4457 };
4458
4459 static xtensa_arg_internal Iclass_xt_iclass_xsr_icount_args[] = {
4460 { { OPERAND_art }, 'm' }
4461 };
4462
4463 static xtensa_arg_internal Iclass_xt_iclass_xsr_icount_stateArgs[] = {
4464 { { STATE_PSEXCM }, 'i' },
4465 { { STATE_PSRING }, 'i' },
4466 { { STATE_XTSYNC }, 'o' },
4467 { { STATE_ICOUNT }, 'm' }
4468 };
4469
4470 static xtensa_arg_internal Iclass_xt_iclass_rsr_icountlevel_args[] = {
4471 { { OPERAND_art }, 'o' }
4472 };
4473
4474 static xtensa_arg_internal Iclass_xt_iclass_rsr_icountlevel_stateArgs[] = {
4475 { { STATE_PSEXCM }, 'i' },
4476 { { STATE_PSRING }, 'i' },
4477 { { STATE_ICOUNTLEVEL }, 'i' }
4478 };
4479
4480 static xtensa_arg_internal Iclass_xt_iclass_wsr_icountlevel_args[] = {
4481 { { OPERAND_art }, 'i' }
4482 };
4483
4484 static xtensa_arg_internal Iclass_xt_iclass_wsr_icountlevel_stateArgs[] = {
4485 { { STATE_PSEXCM }, 'i' },
4486 { { STATE_PSRING }, 'i' },
4487 { { STATE_ICOUNTLEVEL }, 'o' }
4488 };
4489
4490 static xtensa_arg_internal Iclass_xt_iclass_xsr_icountlevel_args[] = {
4491 { { OPERAND_art }, 'm' }
4492 };
4493
4494 static xtensa_arg_internal Iclass_xt_iclass_xsr_icountlevel_stateArgs[] = {
4495 { { STATE_PSEXCM }, 'i' },
4496 { { STATE_PSRING }, 'i' },
4497 { { STATE_ICOUNTLEVEL }, 'm' }
4498 };
4499
4500 static xtensa_arg_internal Iclass_xt_iclass_rsr_ddr_args[] = {
4501 { { OPERAND_art }, 'o' }
4502 };
4503
4504 static xtensa_arg_internal Iclass_xt_iclass_rsr_ddr_stateArgs[] = {
4505 { { STATE_PSEXCM }, 'i' },
4506 { { STATE_PSRING }, 'i' },
4507 { { STATE_DDR }, 'i' }
4508 };
4509
4510 static xtensa_arg_internal Iclass_xt_iclass_wsr_ddr_args[] = {
4511 { { OPERAND_art }, 'i' }
4512 };
4513
4514 static xtensa_arg_internal Iclass_xt_iclass_wsr_ddr_stateArgs[] = {
4515 { { STATE_PSEXCM }, 'i' },
4516 { { STATE_PSRING }, 'i' },
4517 { { STATE_XTSYNC }, 'o' },
4518 { { STATE_DDR }, 'o' }
4519 };
4520
4521 static xtensa_arg_internal Iclass_xt_iclass_xsr_ddr_args[] = {
4522 { { OPERAND_art }, 'm' }
4523 };
4524
4525 static xtensa_arg_internal Iclass_xt_iclass_xsr_ddr_stateArgs[] = {
4526 { { STATE_PSEXCM }, 'i' },
4527 { { STATE_PSRING }, 'i' },
4528 { { STATE_XTSYNC }, 'o' },
4529 { { STATE_DDR }, 'm' }
4530 };
4531
4532 static xtensa_arg_internal Iclass_xt_iclass_rfdo_args[] = {
4533 { { OPERAND_imms }, 'i' }
4534 };
4535
4536 static xtensa_arg_internal Iclass_xt_iclass_rfdo_stateArgs[] = {
4537 { { STATE_InOCDMode }, 'm' },
4538 { { STATE_EPC6 }, 'i' },
4539 { { STATE_PSWOE }, 'o' },
4540 { { STATE_PSCALLINC }, 'o' },
4541 { { STATE_PSOWB }, 'o' },
4542 { { STATE_PSRING }, 'o' },
4543 { { STATE_PSUM }, 'o' },
4544 { { STATE_PSEXCM }, 'o' },
4545 { { STATE_PSINTLEVEL }, 'o' },
4546 { { STATE_EPS6 }, 'i' }
4547 };
4548
4549 static xtensa_arg_internal Iclass_xt_iclass_rfdd_stateArgs[] = {
4550 { { STATE_InOCDMode }, 'm' }
4551 };
4552
4553 static xtensa_arg_internal Iclass_xt_iclass_wsr_mmid_args[] = {
4554 { { OPERAND_art }, 'i' }
4555 };
4556
4557 static xtensa_arg_internal Iclass_xt_iclass_wsr_mmid_stateArgs[] = {
4558 { { STATE_PSEXCM }, 'i' },
4559 { { STATE_PSRING }, 'i' },
4560 { { STATE_XTSYNC }, 'o' }
4561 };
4562
4563 static xtensa_arg_internal Iclass_xt_iclass_rsr_ccount_args[] = {
4564 { { OPERAND_art }, 'o' }
4565 };
4566
4567 static xtensa_arg_internal Iclass_xt_iclass_rsr_ccount_stateArgs[] = {
4568 { { STATE_PSEXCM }, 'i' },
4569 { { STATE_PSRING }, 'i' },
4570 { { STATE_CCOUNT }, 'i' }
4571 };
4572
4573 static xtensa_arg_internal Iclass_xt_iclass_wsr_ccount_args[] = {
4574 { { OPERAND_art }, 'i' }
4575 };
4576
4577 static xtensa_arg_internal Iclass_xt_iclass_wsr_ccount_stateArgs[] = {
4578 { { STATE_PSEXCM }, 'i' },
4579 { { STATE_PSRING }, 'i' },
4580 { { STATE_XTSYNC }, 'o' },
4581 { { STATE_CCOUNT }, 'o' }
4582 };
4583
4584 static xtensa_arg_internal Iclass_xt_iclass_xsr_ccount_args[] = {
4585 { { OPERAND_art }, 'm' }
4586 };
4587
4588 static xtensa_arg_internal Iclass_xt_iclass_xsr_ccount_stateArgs[] = {
4589 { { STATE_PSEXCM }, 'i' },
4590 { { STATE_PSRING }, 'i' },
4591 { { STATE_XTSYNC }, 'o' },
4592 { { STATE_CCOUNT }, 'm' }
4593 };
4594
4595 static xtensa_arg_internal Iclass_xt_iclass_rsr_ccompare0_args[] = {
4596 { { OPERAND_art }, 'o' }
4597 };
4598
4599 static xtensa_arg_internal Iclass_xt_iclass_rsr_ccompare0_stateArgs[] = {
4600 { { STATE_PSEXCM }, 'i' },
4601 { { STATE_PSRING }, 'i' },
4602 { { STATE_CCOMPARE0 }, 'i' }
4603 };
4604
4605 static xtensa_arg_internal Iclass_xt_iclass_wsr_ccompare0_args[] = {
4606 { { OPERAND_art }, 'i' }
4607 };
4608
4609 static xtensa_arg_internal Iclass_xt_iclass_wsr_ccompare0_stateArgs[] = {
4610 { { STATE_PSEXCM }, 'i' },
4611 { { STATE_PSRING }, 'i' },
4612 { { STATE_CCOMPARE0 }, 'o' },
4613 { { STATE_INTERRUPT }, 'm' }
4614 };
4615
4616 static xtensa_arg_internal Iclass_xt_iclass_xsr_ccompare0_args[] = {
4617 { { OPERAND_art }, 'm' }
4618 };
4619
4620 static xtensa_arg_internal Iclass_xt_iclass_xsr_ccompare0_stateArgs[] = {
4621 { { STATE_PSEXCM }, 'i' },
4622 { { STATE_PSRING }, 'i' },
4623 { { STATE_CCOMPARE0 }, 'm' },
4624 { { STATE_INTERRUPT }, 'm' }
4625 };
4626
4627 static xtensa_arg_internal Iclass_xt_iclass_rsr_ccompare1_args[] = {
4628 { { OPERAND_art }, 'o' }
4629 };
4630
4631 static xtensa_arg_internal Iclass_xt_iclass_rsr_ccompare1_stateArgs[] = {
4632 { { STATE_PSEXCM }, 'i' },
4633 { { STATE_PSRING }, 'i' },
4634 { { STATE_CCOMPARE1 }, 'i' }
4635 };
4636
4637 static xtensa_arg_internal Iclass_xt_iclass_wsr_ccompare1_args[] = {
4638 { { OPERAND_art }, 'i' }
4639 };
4640
4641 static xtensa_arg_internal Iclass_xt_iclass_wsr_ccompare1_stateArgs[] = {
4642 { { STATE_PSEXCM }, 'i' },
4643 { { STATE_PSRING }, 'i' },
4644 { { STATE_CCOMPARE1 }, 'o' },
4645 { { STATE_INTERRUPT }, 'm' }
4646 };
4647
4648 static xtensa_arg_internal Iclass_xt_iclass_xsr_ccompare1_args[] = {
4649 { { OPERAND_art }, 'm' }
4650 };
4651
4652 static xtensa_arg_internal Iclass_xt_iclass_xsr_ccompare1_stateArgs[] = {
4653 { { STATE_PSEXCM }, 'i' },
4654 { { STATE_PSRING }, 'i' },
4655 { { STATE_CCOMPARE1 }, 'm' },
4656 { { STATE_INTERRUPT }, 'm' }
4657 };
4658
4659 static xtensa_arg_internal Iclass_xt_iclass_rsr_ccompare2_args[] = {
4660 { { OPERAND_art }, 'o' }
4661 };
4662
4663 static xtensa_arg_internal Iclass_xt_iclass_rsr_ccompare2_stateArgs[] = {
4664 { { STATE_PSEXCM }, 'i' },
4665 { { STATE_PSRING }, 'i' },
4666 { { STATE_CCOMPARE2 }, 'i' }
4667 };
4668
4669 static xtensa_arg_internal Iclass_xt_iclass_wsr_ccompare2_args[] = {
4670 { { OPERAND_art }, 'i' }
4671 };
4672
4673 static xtensa_arg_internal Iclass_xt_iclass_wsr_ccompare2_stateArgs[] = {
4674 { { STATE_PSEXCM }, 'i' },
4675 { { STATE_PSRING }, 'i' },
4676 { { STATE_CCOMPARE2 }, 'o' },
4677 { { STATE_INTERRUPT }, 'm' }
4678 };
4679
4680 static xtensa_arg_internal Iclass_xt_iclass_xsr_ccompare2_args[] = {
4681 { { OPERAND_art }, 'm' }
4682 };
4683
4684 static xtensa_arg_internal Iclass_xt_iclass_xsr_ccompare2_stateArgs[] = {
4685 { { STATE_PSEXCM }, 'i' },
4686 { { STATE_PSRING }, 'i' },
4687 { { STATE_CCOMPARE2 }, 'm' },
4688 { { STATE_INTERRUPT }, 'm' }
4689 };
4690
4691 static xtensa_arg_internal Iclass_xt_iclass_icache_args[] = {
4692 { { OPERAND_ars }, 'i' },
4693 { { OPERAND_uimm8x4 }, 'i' }
4694 };
4695
4696 static xtensa_arg_internal Iclass_xt_iclass_icache_lock_args[] = {
4697 { { OPERAND_ars }, 'i' },
4698 { { OPERAND_uimm4x16 }, 'i' }
4699 };
4700
4701 static xtensa_arg_internal Iclass_xt_iclass_icache_lock_stateArgs[] = {
4702 { { STATE_PSEXCM }, 'i' },
4703 { { STATE_PSRING }, 'i' }
4704 };
4705
4706 static xtensa_arg_internal Iclass_xt_iclass_icache_inv_args[] = {
4707 { { OPERAND_ars }, 'i' },
4708 { { OPERAND_uimm8x4 }, 'i' }
4709 };
4710
4711 static xtensa_arg_internal Iclass_xt_iclass_icache_inv_stateArgs[] = {
4712 { { STATE_PSEXCM }, 'i' },
4713 { { STATE_PSRING }, 'i' }
4714 };
4715
4716 static xtensa_arg_internal Iclass_xt_iclass_licx_args[] = {
4717 { { OPERAND_art }, 'o' },
4718 { { OPERAND_ars }, 'i' }
4719 };
4720
4721 static xtensa_arg_internal Iclass_xt_iclass_licx_stateArgs[] = {
4722 { { STATE_PSEXCM }, 'i' },
4723 { { STATE_PSRING }, 'i' }
4724 };
4725
4726 static xtensa_arg_internal Iclass_xt_iclass_sicx_args[] = {
4727 { { OPERAND_art }, 'i' },
4728 { { OPERAND_ars }, 'i' }
4729 };
4730
4731 static xtensa_arg_internal Iclass_xt_iclass_sicx_stateArgs[] = {
4732 { { STATE_PSEXCM }, 'i' },
4733 { { STATE_PSRING }, 'i' }
4734 };
4735
4736 static xtensa_arg_internal Iclass_xt_iclass_dcache_args[] = {
4737 { { OPERAND_ars }, 'i' },
4738 { { OPERAND_uimm8x4 }, 'i' }
4739 };
4740
4741 static xtensa_arg_internal Iclass_xt_iclass_dcache_ind_args[] = {
4742 { { OPERAND_ars }, 'i' },
4743 { { OPERAND_uimm4x16 }, 'i' }
4744 };
4745
4746 static xtensa_arg_internal Iclass_xt_iclass_dcache_ind_stateArgs[] = {
4747 { { STATE_PSEXCM }, 'i' },
4748 { { STATE_PSRING }, 'i' }
4749 };
4750
4751 static xtensa_arg_internal Iclass_xt_iclass_dcache_inv_args[] = {
4752 { { OPERAND_ars }, 'i' },
4753 { { OPERAND_uimm8x4 }, 'i' }
4754 };
4755
4756 static xtensa_arg_internal Iclass_xt_iclass_dcache_inv_stateArgs[] = {
4757 { { STATE_PSEXCM }, 'i' },
4758 { { STATE_PSRING }, 'i' }
4759 };
4760
4761 static xtensa_arg_internal Iclass_xt_iclass_dpf_args[] = {
4762 { { OPERAND_ars }, 'i' },
4763 { { OPERAND_uimm8x4 }, 'i' }
4764 };
4765
4766 static xtensa_arg_internal Iclass_xt_iclass_dcache_lock_args[] = {
4767 { { OPERAND_ars }, 'i' },
4768 { { OPERAND_uimm4x16 }, 'i' }
4769 };
4770
4771 static xtensa_arg_internal Iclass_xt_iclass_dcache_lock_stateArgs[] = {
4772 { { STATE_PSEXCM }, 'i' },
4773 { { STATE_PSRING }, 'i' }
4774 };
4775
4776 static xtensa_arg_internal Iclass_xt_iclass_sdct_args[] = {
4777 { { OPERAND_art }, 'i' },
4778 { { OPERAND_ars }, 'i' }
4779 };
4780
4781 static xtensa_arg_internal Iclass_xt_iclass_sdct_stateArgs[] = {
4782 { { STATE_PSEXCM }, 'i' },
4783 { { STATE_PSRING }, 'i' }
4784 };
4785
4786 static xtensa_arg_internal Iclass_xt_iclass_ldct_args[] = {
4787 { { OPERAND_art }, 'o' },
4788 { { OPERAND_ars }, 'i' }
4789 };
4790
4791 static xtensa_arg_internal Iclass_xt_iclass_ldct_stateArgs[] = {
4792 { { STATE_PSEXCM }, 'i' },
4793 { { STATE_PSRING }, 'i' }
4794 };
4795
4796 static xtensa_arg_internal Iclass_xt_iclass_wsr_ptevaddr_args[] = {
4797 { { OPERAND_art }, 'i' }
4798 };
4799
4800 static xtensa_arg_internal Iclass_xt_iclass_wsr_ptevaddr_stateArgs[] = {
4801 { { STATE_PSEXCM }, 'i' },
4802 { { STATE_PSRING }, 'i' },
4803 { { STATE_PTBASE }, 'o' },
4804 { { STATE_XTSYNC }, 'o' }
4805 };
4806
4807 static xtensa_arg_internal Iclass_xt_iclass_rsr_ptevaddr_args[] = {
4808 { { OPERAND_art }, 'o' }
4809 };
4810
4811 static xtensa_arg_internal Iclass_xt_iclass_rsr_ptevaddr_stateArgs[] = {
4812 { { STATE_PSEXCM }, 'i' },
4813 { { STATE_PSRING }, 'i' },
4814 { { STATE_PTBASE }, 'i' },
4815 { { STATE_EXCVADDR }, 'i' }
4816 };
4817
4818 static xtensa_arg_internal Iclass_xt_iclass_xsr_ptevaddr_args[] = {
4819 { { OPERAND_art }, 'm' }
4820 };
4821
4822 static xtensa_arg_internal Iclass_xt_iclass_xsr_ptevaddr_stateArgs[] = {
4823 { { STATE_PSEXCM }, 'i' },
4824 { { STATE_PSRING }, 'i' },
4825 { { STATE_PTBASE }, 'm' },
4826 { { STATE_EXCVADDR }, 'i' },
4827 { { STATE_XTSYNC }, 'o' }
4828 };
4829
4830 static xtensa_arg_internal Iclass_xt_iclass_rsr_rasid_args[] = {
4831 { { OPERAND_art }, 'o' }
4832 };
4833
4834 static xtensa_arg_internal Iclass_xt_iclass_rsr_rasid_stateArgs[] = {
4835 { { STATE_PSEXCM }, 'i' },
4836 { { STATE_PSRING }, 'i' },
4837 { { STATE_ASID3 }, 'i' },
4838 { { STATE_ASID2 }, 'i' },
4839 { { STATE_ASID1 }, 'i' }
4840 };
4841
4842 static xtensa_arg_internal Iclass_xt_iclass_wsr_rasid_args[] = {
4843 { { OPERAND_art }, 'i' }
4844 };
4845
4846 static xtensa_arg_internal Iclass_xt_iclass_wsr_rasid_stateArgs[] = {
4847 { { STATE_XTSYNC }, 'o' },
4848 { { STATE_PSEXCM }, 'i' },
4849 { { STATE_PSRING }, 'i' },
4850 { { STATE_ASID3 }, 'o' },
4851 { { STATE_ASID2 }, 'o' },
4852 { { STATE_ASID1 }, 'o' }
4853 };
4854
4855 static xtensa_arg_internal Iclass_xt_iclass_xsr_rasid_args[] = {
4856 { { OPERAND_art }, 'm' }
4857 };
4858
4859 static xtensa_arg_internal Iclass_xt_iclass_xsr_rasid_stateArgs[] = {
4860 { { STATE_XTSYNC }, 'o' },
4861 { { STATE_PSEXCM }, 'i' },
4862 { { STATE_PSRING }, 'i' },
4863 { { STATE_ASID3 }, 'm' },
4864 { { STATE_ASID2 }, 'm' },
4865 { { STATE_ASID1 }, 'm' }
4866 };
4867
4868 static xtensa_arg_internal Iclass_xt_iclass_rsr_itlbcfg_args[] = {
4869 { { OPERAND_art }, 'o' }
4870 };
4871
4872 static xtensa_arg_internal Iclass_xt_iclass_rsr_itlbcfg_stateArgs[] = {
4873 { { STATE_PSEXCM }, 'i' },
4874 { { STATE_PSRING }, 'i' },
4875 { { STATE_INSTPGSZID4 }, 'i' }
4876 };
4877
4878 static xtensa_arg_internal Iclass_xt_iclass_wsr_itlbcfg_args[] = {
4879 { { OPERAND_art }, 'i' }
4880 };
4881
4882 static xtensa_arg_internal Iclass_xt_iclass_wsr_itlbcfg_stateArgs[] = {
4883 { { STATE_XTSYNC }, 'o' },
4884 { { STATE_PSEXCM }, 'i' },
4885 { { STATE_PSRING }, 'i' },
4886 { { STATE_INSTPGSZID4 }, 'o' }
4887 };
4888
4889 static xtensa_arg_internal Iclass_xt_iclass_xsr_itlbcfg_args[] = {
4890 { { OPERAND_art }, 'm' }
4891 };
4892
4893 static xtensa_arg_internal Iclass_xt_iclass_xsr_itlbcfg_stateArgs[] = {
4894 { { STATE_XTSYNC }, 'o' },
4895 { { STATE_PSEXCM }, 'i' },
4896 { { STATE_PSRING }, 'i' },
4897 { { STATE_INSTPGSZID4 }, 'm' }
4898 };
4899
4900 static xtensa_arg_internal Iclass_xt_iclass_rsr_dtlbcfg_args[] = {
4901 { { OPERAND_art }, 'o' }
4902 };
4903
4904 static xtensa_arg_internal Iclass_xt_iclass_rsr_dtlbcfg_stateArgs[] = {
4905 { { STATE_PSEXCM }, 'i' },
4906 { { STATE_PSRING }, 'i' },
4907 { { STATE_DATAPGSZID4 }, 'i' }
4908 };
4909
4910 static xtensa_arg_internal Iclass_xt_iclass_wsr_dtlbcfg_args[] = {
4911 { { OPERAND_art }, 'i' }
4912 };
4913
4914 static xtensa_arg_internal Iclass_xt_iclass_wsr_dtlbcfg_stateArgs[] = {
4915 { { STATE_XTSYNC }, 'o' },
4916 { { STATE_PSEXCM }, 'i' },
4917 { { STATE_PSRING }, 'i' },
4918 { { STATE_DATAPGSZID4 }, 'o' }
4919 };
4920
4921 static xtensa_arg_internal Iclass_xt_iclass_xsr_dtlbcfg_args[] = {
4922 { { OPERAND_art }, 'm' }
4923 };
4924
4925 static xtensa_arg_internal Iclass_xt_iclass_xsr_dtlbcfg_stateArgs[] = {
4926 { { STATE_XTSYNC }, 'o' },
4927 { { STATE_PSEXCM }, 'i' },
4928 { { STATE_PSRING }, 'i' },
4929 { { STATE_DATAPGSZID4 }, 'm' }
4930 };
4931
4932 static xtensa_arg_internal Iclass_xt_iclass_idtlb_args[] = {
4933 { { OPERAND_ars }, 'i' }
4934 };
4935
4936 static xtensa_arg_internal Iclass_xt_iclass_idtlb_stateArgs[] = {
4937 { { STATE_PSEXCM }, 'i' },
4938 { { STATE_PSRING }, 'i' },
4939 { { STATE_XTSYNC }, 'o' }
4940 };
4941
4942 static xtensa_arg_internal Iclass_xt_iclass_rdtlb_args[] = {
4943 { { OPERAND_art }, 'o' },
4944 { { OPERAND_ars }, 'i' }
4945 };
4946
4947 static xtensa_arg_internal Iclass_xt_iclass_rdtlb_stateArgs[] = {
4948 { { STATE_PSEXCM }, 'i' },
4949 { { STATE_PSRING }, 'i' }
4950 };
4951
4952 static xtensa_arg_internal Iclass_xt_iclass_wdtlb_args[] = {
4953 { { OPERAND_art }, 'i' },
4954 { { OPERAND_ars }, 'i' }
4955 };
4956
4957 static xtensa_arg_internal Iclass_xt_iclass_wdtlb_stateArgs[] = {
4958 { { STATE_PSEXCM }, 'i' },
4959 { { STATE_PSRING }, 'i' },
4960 { { STATE_XTSYNC }, 'o' }
4961 };
4962
4963 static xtensa_arg_internal Iclass_xt_iclass_iitlb_args[] = {
4964 { { OPERAND_ars }, 'i' }
4965 };
4966
4967 static xtensa_arg_internal Iclass_xt_iclass_iitlb_stateArgs[] = {
4968 { { STATE_PSEXCM }, 'i' },
4969 { { STATE_PSRING }, 'i' }
4970 };
4971
4972 static xtensa_arg_internal Iclass_xt_iclass_ritlb_args[] = {
4973 { { OPERAND_art }, 'o' },
4974 { { OPERAND_ars }, 'i' }
4975 };
4976
4977 static xtensa_arg_internal Iclass_xt_iclass_ritlb_stateArgs[] = {
4978 { { STATE_PSEXCM }, 'i' },
4979 { { STATE_PSRING }, 'i' }
4980 };
4981
4982 static xtensa_arg_internal Iclass_xt_iclass_witlb_args[] = {
4983 { { OPERAND_art }, 'i' },
4984 { { OPERAND_ars }, 'i' }
4985 };
4986
4987 static xtensa_arg_internal Iclass_xt_iclass_witlb_stateArgs[] = {
4988 { { STATE_PSEXCM }, 'i' },
4989 { { STATE_PSRING }, 'i' }
4990 };
4991
4992 static xtensa_arg_internal Iclass_xt_iclass_ldpte_stateArgs[] = {
4993 { { STATE_PTBASE }, 'i' },
4994 { { STATE_EXCVADDR }, 'i' }
4995 };
4996
4997 static xtensa_arg_internal Iclass_xt_iclass_hwwitlba_stateArgs[] = {
4998 { { STATE_EXCVADDR }, 'i' }
4999 };
5000
5001 static xtensa_arg_internal Iclass_xt_iclass_hwwdtlba_stateArgs[] = {
5002 { { STATE_EXCVADDR }, 'i' }
5003 };
5004
5005 static xtensa_arg_internal Iclass_xt_iclass_rsr_cpenable_args[] = {
5006 { { OPERAND_art }, 'o' }
5007 };
5008
5009 static xtensa_arg_internal Iclass_xt_iclass_rsr_cpenable_stateArgs[] = {
5010 { { STATE_PSEXCM }, 'i' },
5011 { { STATE_PSRING }, 'i' },
5012 { { STATE_CPENABLE }, 'i' }
5013 };
5014
5015 static xtensa_arg_internal Iclass_xt_iclass_wsr_cpenable_args[] = {
5016 { { OPERAND_art }, 'i' }
5017 };
5018
5019 static xtensa_arg_internal Iclass_xt_iclass_wsr_cpenable_stateArgs[] = {
5020 { { STATE_PSEXCM }, 'i' },
5021 { { STATE_PSRING }, 'i' },
5022 { { STATE_CPENABLE }, 'o' }
5023 };
5024
5025 static xtensa_arg_internal Iclass_xt_iclass_xsr_cpenable_args[] = {
5026 { { OPERAND_art }, 'm' }
5027 };
5028
5029 static xtensa_arg_internal Iclass_xt_iclass_xsr_cpenable_stateArgs[] = {
5030 { { STATE_PSEXCM }, 'i' },
5031 { { STATE_PSRING }, 'i' },
5032 { { STATE_CPENABLE }, 'm' }
5033 };
5034
5035 static xtensa_arg_internal Iclass_xt_iclass_clamp_args[] = {
5036 { { OPERAND_arr }, 'o' },
5037 { { OPERAND_ars }, 'i' },
5038 { { OPERAND_tp7 }, 'i' }
5039 };
5040
5041 static xtensa_arg_internal Iclass_xt_iclass_minmax_args[] = {
5042 { { OPERAND_arr }, 'o' },
5043 { { OPERAND_ars }, 'i' },
5044 { { OPERAND_art }, 'i' }
5045 };
5046
5047 static xtensa_arg_internal Iclass_xt_iclass_nsa_args[] = {
5048 { { OPERAND_art }, 'o' },
5049 { { OPERAND_ars }, 'i' }
5050 };
5051
5052 static xtensa_arg_internal Iclass_xt_iclass_sx_args[] = {
5053 { { OPERAND_arr }, 'o' },
5054 { { OPERAND_ars }, 'i' },
5055 { { OPERAND_tp7 }, 'i' }
5056 };
5057
5058 static xtensa_arg_internal Iclass_xt_iclass_l32ai_args[] = {
5059 { { OPERAND_art }, 'o' },
5060 { { OPERAND_ars }, 'i' },
5061 { { OPERAND_uimm8x4 }, 'i' }
5062 };
5063
5064 static xtensa_arg_internal Iclass_xt_iclass_s32ri_args[] = {
5065 { { OPERAND_art }, 'i' },
5066 { { OPERAND_ars }, 'i' },
5067 { { OPERAND_uimm8x4 }, 'i' }
5068 };
5069
5070 static xtensa_arg_internal Iclass_xt_iclass_s32c1i_args[] = {
5071 { { OPERAND_art }, 'm' },
5072 { { OPERAND_ars }, 'i' },
5073 { { OPERAND_uimm8x4 }, 'i' }
5074 };
5075
5076 static xtensa_arg_internal Iclass_xt_iclass_s32c1i_stateArgs[] = {
5077 { { STATE_SCOMPARE1 }, 'i' },
5078 { { STATE_SCOMPARE1 }, 'i' }
5079 };
5080
5081 static xtensa_arg_internal Iclass_xt_iclass_rsr_scompare1_args[] = {
5082 { { OPERAND_art }, 'o' }
5083 };
5084
5085 static xtensa_arg_internal Iclass_xt_iclass_rsr_scompare1_stateArgs[] = {
5086 { { STATE_SCOMPARE1 }, 'i' }
5087 };
5088
5089 static xtensa_arg_internal Iclass_xt_iclass_wsr_scompare1_args[] = {
5090 { { OPERAND_art }, 'i' }
5091 };
5092
5093 static xtensa_arg_internal Iclass_xt_iclass_wsr_scompare1_stateArgs[] = {
5094 { { STATE_SCOMPARE1 }, 'o' }
5095 };
5096
5097 static xtensa_arg_internal Iclass_xt_iclass_xsr_scompare1_args[] = {
5098 { { OPERAND_art }, 'm' }
5099 };
5100
5101 static xtensa_arg_internal Iclass_xt_iclass_xsr_scompare1_stateArgs[] = {
5102 { { STATE_SCOMPARE1 }, 'm' }
5103 };
5104
5105 static xtensa_arg_internal Iclass_xt_iclass_div_args[] = {
5106 { { OPERAND_arr }, 'o' },
5107 { { OPERAND_ars }, 'i' },
5108 { { OPERAND_art }, 'i' }
5109 };
5110
5111 static xtensa_arg_internal Iclass_xt_mul32_args[] = {
5112 { { OPERAND_arr }, 'o' },
5113 { { OPERAND_ars }, 'i' },
5114 { { OPERAND_art }, 'i' }
5115 };
5116
5117 static xtensa_iclass_internal iclasses[] = {
5118 { 0, 0 /* xt_iclass_excw */,
5119 0, 0, 0, 0 },
5120 { 0, 0 /* xt_iclass_rfe */,
5121 3, Iclass_xt_iclass_rfe_stateArgs, 0, 0 },
5122 { 0, 0 /* xt_iclass_rfde */,
5123 3, Iclass_xt_iclass_rfde_stateArgs, 0, 0 },
5124 { 0, 0 /* xt_iclass_syscall */,
5125 0, 0, 0, 0 },
5126 { 0, 0 /* xt_iclass_simcall */,
5127 0, 0, 0, 0 },
5128 { 2, Iclass_xt_iclass_call12_args,
5129 1, Iclass_xt_iclass_call12_stateArgs, 0, 0 },
5130 { 2, Iclass_xt_iclass_call8_args,
5131 1, Iclass_xt_iclass_call8_stateArgs, 0, 0 },
5132 { 2, Iclass_xt_iclass_call4_args,
5133 1, Iclass_xt_iclass_call4_stateArgs, 0, 0 },
5134 { 2, Iclass_xt_iclass_callx12_args,
5135 1, Iclass_xt_iclass_callx12_stateArgs, 0, 0 },
5136 { 2, Iclass_xt_iclass_callx8_args,
5137 1, Iclass_xt_iclass_callx8_stateArgs, 0, 0 },
5138 { 2, Iclass_xt_iclass_callx4_args,
5139 1, Iclass_xt_iclass_callx4_stateArgs, 0, 0 },
5140 { 3, Iclass_xt_iclass_entry_args,
5141 5, Iclass_xt_iclass_entry_stateArgs, 0, 0 },
5142 { 2, Iclass_xt_iclass_movsp_args,
5143 2, Iclass_xt_iclass_movsp_stateArgs, 0, 0 },
5144 { 1, Iclass_xt_iclass_rotw_args,
5145 3, Iclass_xt_iclass_rotw_stateArgs, 0, 0 },
5146 { 1, Iclass_xt_iclass_retw_args,
5147 4, Iclass_xt_iclass_retw_stateArgs, 0, 0 },
5148 { 0, 0 /* xt_iclass_rfwou */,
5149 6, Iclass_xt_iclass_rfwou_stateArgs, 0, 0 },
5150 { 3, Iclass_xt_iclass_l32e_args,
5151 2, Iclass_xt_iclass_l32e_stateArgs, 0, 0 },
5152 { 3, Iclass_xt_iclass_s32e_args,
5153 2, Iclass_xt_iclass_s32e_stateArgs, 0, 0 },
5154 { 1, Iclass_xt_iclass_rsr_windowbase_args,
5155 3, Iclass_xt_iclass_rsr_windowbase_stateArgs, 0, 0 },
5156 { 1, Iclass_xt_iclass_wsr_windowbase_args,
5157 3, Iclass_xt_iclass_wsr_windowbase_stateArgs, 0, 0 },
5158 { 1, Iclass_xt_iclass_xsr_windowbase_args,
5159 3, Iclass_xt_iclass_xsr_windowbase_stateArgs, 0, 0 },
5160 { 1, Iclass_xt_iclass_rsr_windowstart_args,
5161 3, Iclass_xt_iclass_rsr_windowstart_stateArgs, 0, 0 },
5162 { 1, Iclass_xt_iclass_wsr_windowstart_args,
5163 3, Iclass_xt_iclass_wsr_windowstart_stateArgs, 0, 0 },
5164 { 1, Iclass_xt_iclass_xsr_windowstart_args,
5165 3, Iclass_xt_iclass_xsr_windowstart_stateArgs, 0, 0 },
5166 { 3, Iclass_xt_iclass_add_n_args,
5167 0, 0, 0, 0 },
5168 { 3, Iclass_xt_iclass_addi_n_args,
5169 0, 0, 0, 0 },
5170 { 2, Iclass_xt_iclass_bz6_args,
5171 0, 0, 0, 0 },
5172 { 0, 0 /* xt_iclass_ill_n */,
5173 0, 0, 0, 0 },
5174 { 3, Iclass_xt_iclass_loadi4_args,
5175 0, 0, 0, 0 },
5176 { 2, Iclass_xt_iclass_mov_n_args,
5177 0, 0, 0, 0 },
5178 { 2, Iclass_xt_iclass_movi_n_args,
5179 0, 0, 0, 0 },
5180 { 0, 0 /* xt_iclass_nopn */,
5181 0, 0, 0, 0 },
5182 { 1, Iclass_xt_iclass_retn_args,
5183 0, 0, 0, 0 },
5184 { 3, Iclass_xt_iclass_storei4_args,
5185 0, 0, 0, 0 },
5186 { 1, Iclass_rur_threadptr_args,
5187 1, Iclass_rur_threadptr_stateArgs, 0, 0 },
5188 { 1, Iclass_wur_threadptr_args,
5189 1, Iclass_wur_threadptr_stateArgs, 0, 0 },
5190 { 3, Iclass_xt_iclass_addi_args,
5191 0, 0, 0, 0 },
5192 { 3, Iclass_xt_iclass_addmi_args,
5193 0, 0, 0, 0 },
5194 { 3, Iclass_xt_iclass_addsub_args,
5195 0, 0, 0, 0 },
5196 { 3, Iclass_xt_iclass_bit_args,
5197 0, 0, 0, 0 },
5198 { 3, Iclass_xt_iclass_bsi8_args,
5199 0, 0, 0, 0 },
5200 { 3, Iclass_xt_iclass_bsi8b_args,
5201 0, 0, 0, 0 },
5202 { 3, Iclass_xt_iclass_bsi8u_args,
5203 0, 0, 0, 0 },
5204 { 3, Iclass_xt_iclass_bst8_args,
5205 0, 0, 0, 0 },
5206 { 2, Iclass_xt_iclass_bsz12_args,
5207 0, 0, 0, 0 },
5208 { 2, Iclass_xt_iclass_call0_args,
5209 0, 0, 0, 0 },
5210 { 2, Iclass_xt_iclass_callx0_args,
5211 0, 0, 0, 0 },
5212 { 4, Iclass_xt_iclass_exti_args,
5213 0, 0, 0, 0 },
5214 { 0, 0 /* xt_iclass_ill */,
5215 0, 0, 0, 0 },
5216 { 1, Iclass_xt_iclass_jump_args,
5217 0, 0, 0, 0 },
5218 { 1, Iclass_xt_iclass_jumpx_args,
5219 0, 0, 0, 0 },
5220 { 3, Iclass_xt_iclass_l16ui_args,
5221 0, 0, 0, 0 },
5222 { 3, Iclass_xt_iclass_l16si_args,
5223 0, 0, 0, 0 },
5224 { 3, Iclass_xt_iclass_l32i_args,
5225 0, 0, 0, 0 },
5226 { 2, Iclass_xt_iclass_l32r_args,
5227 2, Iclass_xt_iclass_l32r_stateArgs, 0, 0 },
5228 { 3, Iclass_xt_iclass_l8i_args,
5229 0, 0, 0, 0 },
5230 { 2, Iclass_xt_iclass_loop_args,
5231 3, Iclass_xt_iclass_loop_stateArgs, 0, 0 },
5232 { 2, Iclass_xt_iclass_loopz_args,
5233 3, Iclass_xt_iclass_loopz_stateArgs, 0, 0 },
5234 { 2, Iclass_xt_iclass_movi_args,
5235 0, 0, 0, 0 },
5236 { 3, Iclass_xt_iclass_movz_args,
5237 0, 0, 0, 0 },
5238 { 2, Iclass_xt_iclass_neg_args,
5239 0, 0, 0, 0 },
5240 { 0, 0 /* xt_iclass_nop */,
5241 0, 0, 0, 0 },
5242 { 1, Iclass_xt_iclass_return_args,
5243 0, 0, 0, 0 },
5244 { 3, Iclass_xt_iclass_s16i_args,
5245 0, 0, 0, 0 },
5246 { 3, Iclass_xt_iclass_s32i_args,
5247 0, 0, 0, 0 },
5248 { 3, Iclass_xt_iclass_s8i_args,
5249 0, 0, 0, 0 },
5250 { 1, Iclass_xt_iclass_sar_args,
5251 1, Iclass_xt_iclass_sar_stateArgs, 0, 0 },
5252 { 1, Iclass_xt_iclass_sari_args,
5253 1, Iclass_xt_iclass_sari_stateArgs, 0, 0 },
5254 { 2, Iclass_xt_iclass_shifts_args,
5255 1, Iclass_xt_iclass_shifts_stateArgs, 0, 0 },
5256 { 3, Iclass_xt_iclass_shiftst_args,
5257 1, Iclass_xt_iclass_shiftst_stateArgs, 0, 0 },
5258 { 2, Iclass_xt_iclass_shiftt_args,
5259 1, Iclass_xt_iclass_shiftt_stateArgs, 0, 0 },
5260 { 3, Iclass_xt_iclass_slli_args,
5261 0, 0, 0, 0 },
5262 { 3, Iclass_xt_iclass_srai_args,
5263 0, 0, 0, 0 },
5264 { 3, Iclass_xt_iclass_srli_args,
5265 0, 0, 0, 0 },
5266 { 0, 0 /* xt_iclass_memw */,
5267 0, 0, 0, 0 },
5268 { 0, 0 /* xt_iclass_extw */,
5269 0, 0, 0, 0 },
5270 { 0, 0 /* xt_iclass_isync */,
5271 0, 0, 0, 0 },
5272 { 0, 0 /* xt_iclass_sync */,
5273 1, Iclass_xt_iclass_sync_stateArgs, 0, 0 },
5274 { 2, Iclass_xt_iclass_rsil_args,
5275 7, Iclass_xt_iclass_rsil_stateArgs, 0, 0 },
5276 { 1, Iclass_xt_iclass_rsr_lend_args,
5277 1, Iclass_xt_iclass_rsr_lend_stateArgs, 0, 0 },
5278 { 1, Iclass_xt_iclass_wsr_lend_args,
5279 1, Iclass_xt_iclass_wsr_lend_stateArgs, 0, 0 },
5280 { 1, Iclass_xt_iclass_xsr_lend_args,
5281 1, Iclass_xt_iclass_xsr_lend_stateArgs, 0, 0 },
5282 { 1, Iclass_xt_iclass_rsr_lcount_args,
5283 1, Iclass_xt_iclass_rsr_lcount_stateArgs, 0, 0 },
5284 { 1, Iclass_xt_iclass_wsr_lcount_args,
5285 2, Iclass_xt_iclass_wsr_lcount_stateArgs, 0, 0 },
5286 { 1, Iclass_xt_iclass_xsr_lcount_args,
5287 2, Iclass_xt_iclass_xsr_lcount_stateArgs, 0, 0 },
5288 { 1, Iclass_xt_iclass_rsr_lbeg_args,
5289 1, Iclass_xt_iclass_rsr_lbeg_stateArgs, 0, 0 },
5290 { 1, Iclass_xt_iclass_wsr_lbeg_args,
5291 1, Iclass_xt_iclass_wsr_lbeg_stateArgs, 0, 0 },
5292 { 1, Iclass_xt_iclass_xsr_lbeg_args,
5293 1, Iclass_xt_iclass_xsr_lbeg_stateArgs, 0, 0 },
5294 { 1, Iclass_xt_iclass_rsr_sar_args,
5295 1, Iclass_xt_iclass_rsr_sar_stateArgs, 0, 0 },
5296 { 1, Iclass_xt_iclass_wsr_sar_args,
5297 2, Iclass_xt_iclass_wsr_sar_stateArgs, 0, 0 },
5298 { 1, Iclass_xt_iclass_xsr_sar_args,
5299 1, Iclass_xt_iclass_xsr_sar_stateArgs, 0, 0 },
5300 { 1, Iclass_xt_iclass_rsr_litbase_args,
5301 2, Iclass_xt_iclass_rsr_litbase_stateArgs, 0, 0 },
5302 { 1, Iclass_xt_iclass_wsr_litbase_args,
5303 2, Iclass_xt_iclass_wsr_litbase_stateArgs, 0, 0 },
5304 { 1, Iclass_xt_iclass_xsr_litbase_args,
5305 2, Iclass_xt_iclass_xsr_litbase_stateArgs, 0, 0 },
5306 { 1, Iclass_xt_iclass_rsr_176_args,
5307 2, Iclass_xt_iclass_rsr_176_stateArgs, 0, 0 },
5308 { 1, Iclass_xt_iclass_wsr_176_args,
5309 2, Iclass_xt_iclass_wsr_176_stateArgs, 0, 0 },
5310 { 1, Iclass_xt_iclass_rsr_208_args,
5311 2, Iclass_xt_iclass_rsr_208_stateArgs, 0, 0 },
5312 { 1, Iclass_xt_iclass_rsr_ps_args,
5313 7, Iclass_xt_iclass_rsr_ps_stateArgs, 0, 0 },
5314 { 1, Iclass_xt_iclass_wsr_ps_args,
5315 7, Iclass_xt_iclass_wsr_ps_stateArgs, 0, 0 },
5316 { 1, Iclass_xt_iclass_xsr_ps_args,
5317 7, Iclass_xt_iclass_xsr_ps_stateArgs, 0, 0 },
5318 { 1, Iclass_xt_iclass_rsr_epc1_args,
5319 3, Iclass_xt_iclass_rsr_epc1_stateArgs, 0, 0 },
5320 { 1, Iclass_xt_iclass_wsr_epc1_args,
5321 3, Iclass_xt_iclass_wsr_epc1_stateArgs, 0, 0 },
5322 { 1, Iclass_xt_iclass_xsr_epc1_args,
5323 3, Iclass_xt_iclass_xsr_epc1_stateArgs, 0, 0 },
5324 { 1, Iclass_xt_iclass_rsr_excsave1_args,
5325 3, Iclass_xt_iclass_rsr_excsave1_stateArgs, 0, 0 },
5326 { 1, Iclass_xt_iclass_wsr_excsave1_args,
5327 3, Iclass_xt_iclass_wsr_excsave1_stateArgs, 0, 0 },
5328 { 1, Iclass_xt_iclass_xsr_excsave1_args,
5329 3, Iclass_xt_iclass_xsr_excsave1_stateArgs, 0, 0 },
5330 { 1, Iclass_xt_iclass_rsr_epc2_args,
5331 3, Iclass_xt_iclass_rsr_epc2_stateArgs, 0, 0 },
5332 { 1, Iclass_xt_iclass_wsr_epc2_args,
5333 3, Iclass_xt_iclass_wsr_epc2_stateArgs, 0, 0 },
5334 { 1, Iclass_xt_iclass_xsr_epc2_args,
5335 3, Iclass_xt_iclass_xsr_epc2_stateArgs, 0, 0 },
5336 { 1, Iclass_xt_iclass_rsr_excsave2_args,
5337 3, Iclass_xt_iclass_rsr_excsave2_stateArgs, 0, 0 },
5338 { 1, Iclass_xt_iclass_wsr_excsave2_args,
5339 3, Iclass_xt_iclass_wsr_excsave2_stateArgs, 0, 0 },
5340 { 1, Iclass_xt_iclass_xsr_excsave2_args,
5341 3, Iclass_xt_iclass_xsr_excsave2_stateArgs, 0, 0 },
5342 { 1, Iclass_xt_iclass_rsr_epc3_args,
5343 3, Iclass_xt_iclass_rsr_epc3_stateArgs, 0, 0 },
5344 { 1, Iclass_xt_iclass_wsr_epc3_args,
5345 3, Iclass_xt_iclass_wsr_epc3_stateArgs, 0, 0 },
5346 { 1, Iclass_xt_iclass_xsr_epc3_args,
5347 3, Iclass_xt_iclass_xsr_epc3_stateArgs, 0, 0 },
5348 { 1, Iclass_xt_iclass_rsr_excsave3_args,
5349 3, Iclass_xt_iclass_rsr_excsave3_stateArgs, 0, 0 },
5350 { 1, Iclass_xt_iclass_wsr_excsave3_args,
5351 3, Iclass_xt_iclass_wsr_excsave3_stateArgs, 0, 0 },
5352 { 1, Iclass_xt_iclass_xsr_excsave3_args,
5353 3, Iclass_xt_iclass_xsr_excsave3_stateArgs, 0, 0 },
5354 { 1, Iclass_xt_iclass_rsr_epc4_args,
5355 3, Iclass_xt_iclass_rsr_epc4_stateArgs, 0, 0 },
5356 { 1, Iclass_xt_iclass_wsr_epc4_args,
5357 3, Iclass_xt_iclass_wsr_epc4_stateArgs, 0, 0 },
5358 { 1, Iclass_xt_iclass_xsr_epc4_args,
5359 3, Iclass_xt_iclass_xsr_epc4_stateArgs, 0, 0 },
5360 { 1, Iclass_xt_iclass_rsr_excsave4_args,
5361 3, Iclass_xt_iclass_rsr_excsave4_stateArgs, 0, 0 },
5362 { 1, Iclass_xt_iclass_wsr_excsave4_args,
5363 3, Iclass_xt_iclass_wsr_excsave4_stateArgs, 0, 0 },
5364 { 1, Iclass_xt_iclass_xsr_excsave4_args,
5365 3, Iclass_xt_iclass_xsr_excsave4_stateArgs, 0, 0 },
5366 { 1, Iclass_xt_iclass_rsr_epc5_args,
5367 3, Iclass_xt_iclass_rsr_epc5_stateArgs, 0, 0 },
5368 { 1, Iclass_xt_iclass_wsr_epc5_args,
5369 3, Iclass_xt_iclass_wsr_epc5_stateArgs, 0, 0 },
5370 { 1, Iclass_xt_iclass_xsr_epc5_args,
5371 3, Iclass_xt_iclass_xsr_epc5_stateArgs, 0, 0 },
5372 { 1, Iclass_xt_iclass_rsr_excsave5_args,
5373 3, Iclass_xt_iclass_rsr_excsave5_stateArgs, 0, 0 },
5374 { 1, Iclass_xt_iclass_wsr_excsave5_args,
5375 3, Iclass_xt_iclass_wsr_excsave5_stateArgs, 0, 0 },
5376 { 1, Iclass_xt_iclass_xsr_excsave5_args,
5377 3, Iclass_xt_iclass_xsr_excsave5_stateArgs, 0, 0 },
5378 { 1, Iclass_xt_iclass_rsr_epc6_args,
5379 3, Iclass_xt_iclass_rsr_epc6_stateArgs, 0, 0 },
5380 { 1, Iclass_xt_iclass_wsr_epc6_args,
5381 3, Iclass_xt_iclass_wsr_epc6_stateArgs, 0, 0 },
5382 { 1, Iclass_xt_iclass_xsr_epc6_args,
5383 3, Iclass_xt_iclass_xsr_epc6_stateArgs, 0, 0 },
5384 { 1, Iclass_xt_iclass_rsr_excsave6_args,
5385 3, Iclass_xt_iclass_rsr_excsave6_stateArgs, 0, 0 },
5386 { 1, Iclass_xt_iclass_wsr_excsave6_args,
5387 3, Iclass_xt_iclass_wsr_excsave6_stateArgs, 0, 0 },
5388 { 1, Iclass_xt_iclass_xsr_excsave6_args,
5389 3, Iclass_xt_iclass_xsr_excsave6_stateArgs, 0, 0 },
5390 { 1, Iclass_xt_iclass_rsr_epc7_args,
5391 3, Iclass_xt_iclass_rsr_epc7_stateArgs, 0, 0 },
5392 { 1, Iclass_xt_iclass_wsr_epc7_args,
5393 3, Iclass_xt_iclass_wsr_epc7_stateArgs, 0, 0 },
5394 { 1, Iclass_xt_iclass_xsr_epc7_args,
5395 3, Iclass_xt_iclass_xsr_epc7_stateArgs, 0, 0 },
5396 { 1, Iclass_xt_iclass_rsr_excsave7_args,
5397 3, Iclass_xt_iclass_rsr_excsave7_stateArgs, 0, 0 },
5398 { 1, Iclass_xt_iclass_wsr_excsave7_args,
5399 3, Iclass_xt_iclass_wsr_excsave7_stateArgs, 0, 0 },
5400 { 1, Iclass_xt_iclass_xsr_excsave7_args,
5401 3, Iclass_xt_iclass_xsr_excsave7_stateArgs, 0, 0 },
5402 { 1, Iclass_xt_iclass_rsr_eps2_args,
5403 3, Iclass_xt_iclass_rsr_eps2_stateArgs, 0, 0 },
5404 { 1, Iclass_xt_iclass_wsr_eps2_args,
5405 3, Iclass_xt_iclass_wsr_eps2_stateArgs, 0, 0 },
5406 { 1, Iclass_xt_iclass_xsr_eps2_args,
5407 3, Iclass_xt_iclass_xsr_eps2_stateArgs, 0, 0 },
5408 { 1, Iclass_xt_iclass_rsr_eps3_args,
5409 3, Iclass_xt_iclass_rsr_eps3_stateArgs, 0, 0 },
5410 { 1, Iclass_xt_iclass_wsr_eps3_args,
5411 3, Iclass_xt_iclass_wsr_eps3_stateArgs, 0, 0 },
5412 { 1, Iclass_xt_iclass_xsr_eps3_args,
5413 3, Iclass_xt_iclass_xsr_eps3_stateArgs, 0, 0 },
5414 { 1, Iclass_xt_iclass_rsr_eps4_args,
5415 3, Iclass_xt_iclass_rsr_eps4_stateArgs, 0, 0 },
5416 { 1, Iclass_xt_iclass_wsr_eps4_args,
5417 3, Iclass_xt_iclass_wsr_eps4_stateArgs, 0, 0 },
5418 { 1, Iclass_xt_iclass_xsr_eps4_args,
5419 3, Iclass_xt_iclass_xsr_eps4_stateArgs, 0, 0 },
5420 { 1, Iclass_xt_iclass_rsr_eps5_args,
5421 3, Iclass_xt_iclass_rsr_eps5_stateArgs, 0, 0 },
5422 { 1, Iclass_xt_iclass_wsr_eps5_args,
5423 3, Iclass_xt_iclass_wsr_eps5_stateArgs, 0, 0 },
5424 { 1, Iclass_xt_iclass_xsr_eps5_args,
5425 3, Iclass_xt_iclass_xsr_eps5_stateArgs, 0, 0 },
5426 { 1, Iclass_xt_iclass_rsr_eps6_args,
5427 3, Iclass_xt_iclass_rsr_eps6_stateArgs, 0, 0 },
5428 { 1, Iclass_xt_iclass_wsr_eps6_args,
5429 3, Iclass_xt_iclass_wsr_eps6_stateArgs, 0, 0 },
5430 { 1, Iclass_xt_iclass_xsr_eps6_args,
5431 3, Iclass_xt_iclass_xsr_eps6_stateArgs, 0, 0 },
5432 { 1, Iclass_xt_iclass_rsr_eps7_args,
5433 3, Iclass_xt_iclass_rsr_eps7_stateArgs, 0, 0 },
5434 { 1, Iclass_xt_iclass_wsr_eps7_args,
5435 3, Iclass_xt_iclass_wsr_eps7_stateArgs, 0, 0 },
5436 { 1, Iclass_xt_iclass_xsr_eps7_args,
5437 3, Iclass_xt_iclass_xsr_eps7_stateArgs, 0, 0 },
5438 { 1, Iclass_xt_iclass_rsr_excvaddr_args,
5439 3, Iclass_xt_iclass_rsr_excvaddr_stateArgs, 0, 0 },
5440 { 1, Iclass_xt_iclass_wsr_excvaddr_args,
5441 3, Iclass_xt_iclass_wsr_excvaddr_stateArgs, 0, 0 },
5442 { 1, Iclass_xt_iclass_xsr_excvaddr_args,
5443 3, Iclass_xt_iclass_xsr_excvaddr_stateArgs, 0, 0 },
5444 { 1, Iclass_xt_iclass_rsr_depc_args,
5445 3, Iclass_xt_iclass_rsr_depc_stateArgs, 0, 0 },
5446 { 1, Iclass_xt_iclass_wsr_depc_args,
5447 3, Iclass_xt_iclass_wsr_depc_stateArgs, 0, 0 },
5448 { 1, Iclass_xt_iclass_xsr_depc_args,
5449 3, Iclass_xt_iclass_xsr_depc_stateArgs, 0, 0 },
5450 { 1, Iclass_xt_iclass_rsr_exccause_args,
5451 4, Iclass_xt_iclass_rsr_exccause_stateArgs, 0, 0 },
5452 { 1, Iclass_xt_iclass_wsr_exccause_args,
5453 3, Iclass_xt_iclass_wsr_exccause_stateArgs, 0, 0 },
5454 { 1, Iclass_xt_iclass_xsr_exccause_args,
5455 3, Iclass_xt_iclass_xsr_exccause_stateArgs, 0, 0 },
5456 { 1, Iclass_xt_iclass_rsr_misc0_args,
5457 3, Iclass_xt_iclass_rsr_misc0_stateArgs, 0, 0 },
5458 { 1, Iclass_xt_iclass_wsr_misc0_args,
5459 3, Iclass_xt_iclass_wsr_misc0_stateArgs, 0, 0 },
5460 { 1, Iclass_xt_iclass_xsr_misc0_args,
5461 3, Iclass_xt_iclass_xsr_misc0_stateArgs, 0, 0 },
5462 { 1, Iclass_xt_iclass_rsr_misc1_args,
5463 3, Iclass_xt_iclass_rsr_misc1_stateArgs, 0, 0 },
5464 { 1, Iclass_xt_iclass_wsr_misc1_args,
5465 3, Iclass_xt_iclass_wsr_misc1_stateArgs, 0, 0 },
5466 { 1, Iclass_xt_iclass_xsr_misc1_args,
5467 3, Iclass_xt_iclass_xsr_misc1_stateArgs, 0, 0 },
5468 { 1, Iclass_xt_iclass_rsr_prid_args,
5469 2, Iclass_xt_iclass_rsr_prid_stateArgs, 0, 0 },
5470 { 1, Iclass_xt_iclass_rsr_vecbase_args,
5471 3, Iclass_xt_iclass_rsr_vecbase_stateArgs, 0, 0 },
5472 { 1, Iclass_xt_iclass_wsr_vecbase_args,
5473 3, Iclass_xt_iclass_wsr_vecbase_stateArgs, 0, 0 },
5474 { 1, Iclass_xt_iclass_xsr_vecbase_args,
5475 3, Iclass_xt_iclass_xsr_vecbase_stateArgs, 0, 0 },
5476 { 3, Iclass_xt_iclass_mul16_args,
5477 0, 0, 0, 0 },
5478 { 1, Iclass_xt_iclass_rfi_args,
5479 21, Iclass_xt_iclass_rfi_stateArgs, 0, 0 },
5480 { 1, Iclass_xt_iclass_wait_args,
5481 3, Iclass_xt_iclass_wait_stateArgs, 0, 0 },
5482 { 1, Iclass_xt_iclass_rsr_interrupt_args,
5483 3, Iclass_xt_iclass_rsr_interrupt_stateArgs, 0, 0 },
5484 { 1, Iclass_xt_iclass_wsr_intset_args,
5485 4, Iclass_xt_iclass_wsr_intset_stateArgs, 0, 0 },
5486 { 1, Iclass_xt_iclass_wsr_intclear_args,
5487 4, Iclass_xt_iclass_wsr_intclear_stateArgs, 0, 0 },
5488 { 1, Iclass_xt_iclass_rsr_intenable_args,
5489 3, Iclass_xt_iclass_rsr_intenable_stateArgs, 0, 0 },
5490 { 1, Iclass_xt_iclass_wsr_intenable_args,
5491 3, Iclass_xt_iclass_wsr_intenable_stateArgs, 0, 0 },
5492 { 1, Iclass_xt_iclass_xsr_intenable_args,
5493 3, Iclass_xt_iclass_xsr_intenable_stateArgs, 0, 0 },
5494 { 2, Iclass_xt_iclass_break_args,
5495 2, Iclass_xt_iclass_break_stateArgs, 0, 0 },
5496 { 1, Iclass_xt_iclass_break_n_args,
5497 2, Iclass_xt_iclass_break_n_stateArgs, 0, 0 },
5498 { 1, Iclass_xt_iclass_rsr_dbreaka0_args,
5499 3, Iclass_xt_iclass_rsr_dbreaka0_stateArgs, 0, 0 },
5500 { 1, Iclass_xt_iclass_wsr_dbreaka0_args,
5501 4, Iclass_xt_iclass_wsr_dbreaka0_stateArgs, 0, 0 },
5502 { 1, Iclass_xt_iclass_xsr_dbreaka0_args,
5503 4, Iclass_xt_iclass_xsr_dbreaka0_stateArgs, 0, 0 },
5504 { 1, Iclass_xt_iclass_rsr_dbreakc0_args,
5505 3, Iclass_xt_iclass_rsr_dbreakc0_stateArgs, 0, 0 },
5506 { 1, Iclass_xt_iclass_wsr_dbreakc0_args,
5507 4, Iclass_xt_iclass_wsr_dbreakc0_stateArgs, 0, 0 },
5508 { 1, Iclass_xt_iclass_xsr_dbreakc0_args,
5509 4, Iclass_xt_iclass_xsr_dbreakc0_stateArgs, 0, 0 },
5510 { 1, Iclass_xt_iclass_rsr_dbreaka1_args,
5511 3, Iclass_xt_iclass_rsr_dbreaka1_stateArgs, 0, 0 },
5512 { 1, Iclass_xt_iclass_wsr_dbreaka1_args,
5513 4, Iclass_xt_iclass_wsr_dbreaka1_stateArgs, 0, 0 },
5514 { 1, Iclass_xt_iclass_xsr_dbreaka1_args,
5515 4, Iclass_xt_iclass_xsr_dbreaka1_stateArgs, 0, 0 },
5516 { 1, Iclass_xt_iclass_rsr_dbreakc1_args,
5517 3, Iclass_xt_iclass_rsr_dbreakc1_stateArgs, 0, 0 },
5518 { 1, Iclass_xt_iclass_wsr_dbreakc1_args,
5519 4, Iclass_xt_iclass_wsr_dbreakc1_stateArgs, 0, 0 },
5520 { 1, Iclass_xt_iclass_xsr_dbreakc1_args,
5521 4, Iclass_xt_iclass_xsr_dbreakc1_stateArgs, 0, 0 },
5522 { 1, Iclass_xt_iclass_rsr_ibreaka0_args,
5523 3, Iclass_xt_iclass_rsr_ibreaka0_stateArgs, 0, 0 },
5524 { 1, Iclass_xt_iclass_wsr_ibreaka0_args,
5525 3, Iclass_xt_iclass_wsr_ibreaka0_stateArgs, 0, 0 },
5526 { 1, Iclass_xt_iclass_xsr_ibreaka0_args,
5527 3, Iclass_xt_iclass_xsr_ibreaka0_stateArgs, 0, 0 },
5528 { 1, Iclass_xt_iclass_rsr_ibreaka1_args,
5529 3, Iclass_xt_iclass_rsr_ibreaka1_stateArgs, 0, 0 },
5530 { 1, Iclass_xt_iclass_wsr_ibreaka1_args,
5531 3, Iclass_xt_iclass_wsr_ibreaka1_stateArgs, 0, 0 },
5532 { 1, Iclass_xt_iclass_xsr_ibreaka1_args,
5533 3, Iclass_xt_iclass_xsr_ibreaka1_stateArgs, 0, 0 },
5534 { 1, Iclass_xt_iclass_rsr_ibreakenable_args,
5535 3, Iclass_xt_iclass_rsr_ibreakenable_stateArgs, 0, 0 },
5536 { 1, Iclass_xt_iclass_wsr_ibreakenable_args,
5537 3, Iclass_xt_iclass_wsr_ibreakenable_stateArgs, 0, 0 },
5538 { 1, Iclass_xt_iclass_xsr_ibreakenable_args,
5539 3, Iclass_xt_iclass_xsr_ibreakenable_stateArgs, 0, 0 },
5540 { 1, Iclass_xt_iclass_rsr_debugcause_args,
5541 4, Iclass_xt_iclass_rsr_debugcause_stateArgs, 0, 0 },
5542 { 1, Iclass_xt_iclass_wsr_debugcause_args,
5543 4, Iclass_xt_iclass_wsr_debugcause_stateArgs, 0, 0 },
5544 { 1, Iclass_xt_iclass_xsr_debugcause_args,
5545 4, Iclass_xt_iclass_xsr_debugcause_stateArgs, 0, 0 },
5546 { 1, Iclass_xt_iclass_rsr_icount_args,
5547 3, Iclass_xt_iclass_rsr_icount_stateArgs, 0, 0 },
5548 { 1, Iclass_xt_iclass_wsr_icount_args,
5549 4, Iclass_xt_iclass_wsr_icount_stateArgs, 0, 0 },
5550 { 1, Iclass_xt_iclass_xsr_icount_args,
5551 4, Iclass_xt_iclass_xsr_icount_stateArgs, 0, 0 },
5552 { 1, Iclass_xt_iclass_rsr_icountlevel_args,
5553 3, Iclass_xt_iclass_rsr_icountlevel_stateArgs, 0, 0 },
5554 { 1, Iclass_xt_iclass_wsr_icountlevel_args,
5555 3, Iclass_xt_iclass_wsr_icountlevel_stateArgs, 0, 0 },
5556 { 1, Iclass_xt_iclass_xsr_icountlevel_args,
5557 3, Iclass_xt_iclass_xsr_icountlevel_stateArgs, 0, 0 },
5558 { 1, Iclass_xt_iclass_rsr_ddr_args,
5559 3, Iclass_xt_iclass_rsr_ddr_stateArgs, 0, 0 },
5560 { 1, Iclass_xt_iclass_wsr_ddr_args,
5561 4, Iclass_xt_iclass_wsr_ddr_stateArgs, 0, 0 },
5562 { 1, Iclass_xt_iclass_xsr_ddr_args,
5563 4, Iclass_xt_iclass_xsr_ddr_stateArgs, 0, 0 },
5564 { 1, Iclass_xt_iclass_rfdo_args,
5565 10, Iclass_xt_iclass_rfdo_stateArgs, 0, 0 },
5566 { 0, 0 /* xt_iclass_rfdd */,
5567 1, Iclass_xt_iclass_rfdd_stateArgs, 0, 0 },
5568 { 1, Iclass_xt_iclass_wsr_mmid_args,
5569 3, Iclass_xt_iclass_wsr_mmid_stateArgs, 0, 0 },
5570 { 1, Iclass_xt_iclass_rsr_ccount_args,
5571 3, Iclass_xt_iclass_rsr_ccount_stateArgs, 0, 0 },
5572 { 1, Iclass_xt_iclass_wsr_ccount_args,
5573 4, Iclass_xt_iclass_wsr_ccount_stateArgs, 0, 0 },
5574 { 1, Iclass_xt_iclass_xsr_ccount_args,
5575 4, Iclass_xt_iclass_xsr_ccount_stateArgs, 0, 0 },
5576 { 1, Iclass_xt_iclass_rsr_ccompare0_args,
5577 3, Iclass_xt_iclass_rsr_ccompare0_stateArgs, 0, 0 },
5578 { 1, Iclass_xt_iclass_wsr_ccompare0_args,
5579 4, Iclass_xt_iclass_wsr_ccompare0_stateArgs, 0, 0 },
5580 { 1, Iclass_xt_iclass_xsr_ccompare0_args,
5581 4, Iclass_xt_iclass_xsr_ccompare0_stateArgs, 0, 0 },
5582 { 1, Iclass_xt_iclass_rsr_ccompare1_args,
5583 3, Iclass_xt_iclass_rsr_ccompare1_stateArgs, 0, 0 },
5584 { 1, Iclass_xt_iclass_wsr_ccompare1_args,
5585 4, Iclass_xt_iclass_wsr_ccompare1_stateArgs, 0, 0 },
5586 { 1, Iclass_xt_iclass_xsr_ccompare1_args,
5587 4, Iclass_xt_iclass_xsr_ccompare1_stateArgs, 0, 0 },
5588 { 1, Iclass_xt_iclass_rsr_ccompare2_args,
5589 3, Iclass_xt_iclass_rsr_ccompare2_stateArgs, 0, 0 },
5590 { 1, Iclass_xt_iclass_wsr_ccompare2_args,
5591 4, Iclass_xt_iclass_wsr_ccompare2_stateArgs, 0, 0 },
5592 { 1, Iclass_xt_iclass_xsr_ccompare2_args,
5593 4, Iclass_xt_iclass_xsr_ccompare2_stateArgs, 0, 0 },
5594 { 2, Iclass_xt_iclass_icache_args,
5595 0, 0, 0, 0 },
5596 { 2, Iclass_xt_iclass_icache_lock_args,
5597 2, Iclass_xt_iclass_icache_lock_stateArgs, 0, 0 },
5598 { 2, Iclass_xt_iclass_icache_inv_args,
5599 2, Iclass_xt_iclass_icache_inv_stateArgs, 0, 0 },
5600 { 2, Iclass_xt_iclass_licx_args,
5601 2, Iclass_xt_iclass_licx_stateArgs, 0, 0 },
5602 { 2, Iclass_xt_iclass_sicx_args,
5603 2, Iclass_xt_iclass_sicx_stateArgs, 0, 0 },
5604 { 2, Iclass_xt_iclass_dcache_args,
5605 0, 0, 0, 0 },
5606 { 2, Iclass_xt_iclass_dcache_ind_args,
5607 2, Iclass_xt_iclass_dcache_ind_stateArgs, 0, 0 },
5608 { 2, Iclass_xt_iclass_dcache_inv_args,
5609 2, Iclass_xt_iclass_dcache_inv_stateArgs, 0, 0 },
5610 { 2, Iclass_xt_iclass_dpf_args,
5611 0, 0, 0, 0 },
5612 { 2, Iclass_xt_iclass_dcache_lock_args,
5613 2, Iclass_xt_iclass_dcache_lock_stateArgs, 0, 0 },
5614 { 2, Iclass_xt_iclass_sdct_args,
5615 2, Iclass_xt_iclass_sdct_stateArgs, 0, 0 },
5616 { 2, Iclass_xt_iclass_ldct_args,
5617 2, Iclass_xt_iclass_ldct_stateArgs, 0, 0 },
5618 { 1, Iclass_xt_iclass_wsr_ptevaddr_args,
5619 4, Iclass_xt_iclass_wsr_ptevaddr_stateArgs, 0, 0 },
5620 { 1, Iclass_xt_iclass_rsr_ptevaddr_args,
5621 4, Iclass_xt_iclass_rsr_ptevaddr_stateArgs, 0, 0 },
5622 { 1, Iclass_xt_iclass_xsr_ptevaddr_args,
5623 5, Iclass_xt_iclass_xsr_ptevaddr_stateArgs, 0, 0 },
5624 { 1, Iclass_xt_iclass_rsr_rasid_args,
5625 5, Iclass_xt_iclass_rsr_rasid_stateArgs, 0, 0 },
5626 { 1, Iclass_xt_iclass_wsr_rasid_args,
5627 6, Iclass_xt_iclass_wsr_rasid_stateArgs, 0, 0 },
5628 { 1, Iclass_xt_iclass_xsr_rasid_args,
5629 6, Iclass_xt_iclass_xsr_rasid_stateArgs, 0, 0 },
5630 { 1, Iclass_xt_iclass_rsr_itlbcfg_args,
5631 3, Iclass_xt_iclass_rsr_itlbcfg_stateArgs, 0, 0 },
5632 { 1, Iclass_xt_iclass_wsr_itlbcfg_args,
5633 4, Iclass_xt_iclass_wsr_itlbcfg_stateArgs, 0, 0 },
5634 { 1, Iclass_xt_iclass_xsr_itlbcfg_args,
5635 4, Iclass_xt_iclass_xsr_itlbcfg_stateArgs, 0, 0 },
5636 { 1, Iclass_xt_iclass_rsr_dtlbcfg_args,
5637 3, Iclass_xt_iclass_rsr_dtlbcfg_stateArgs, 0, 0 },
5638 { 1, Iclass_xt_iclass_wsr_dtlbcfg_args,
5639 4, Iclass_xt_iclass_wsr_dtlbcfg_stateArgs, 0, 0 },
5640 { 1, Iclass_xt_iclass_xsr_dtlbcfg_args,
5641 4, Iclass_xt_iclass_xsr_dtlbcfg_stateArgs, 0, 0 },
5642 { 1, Iclass_xt_iclass_idtlb_args,
5643 3, Iclass_xt_iclass_idtlb_stateArgs, 0, 0 },
5644 { 2, Iclass_xt_iclass_rdtlb_args,
5645 2, Iclass_xt_iclass_rdtlb_stateArgs, 0, 0 },
5646 { 2, Iclass_xt_iclass_wdtlb_args,
5647 3, Iclass_xt_iclass_wdtlb_stateArgs, 0, 0 },
5648 { 1, Iclass_xt_iclass_iitlb_args,
5649 2, Iclass_xt_iclass_iitlb_stateArgs, 0, 0 },
5650 { 2, Iclass_xt_iclass_ritlb_args,
5651 2, Iclass_xt_iclass_ritlb_stateArgs, 0, 0 },
5652 { 2, Iclass_xt_iclass_witlb_args,
5653 2, Iclass_xt_iclass_witlb_stateArgs, 0, 0 },
5654 { 0, 0 /* xt_iclass_ldpte */,
5655 2, Iclass_xt_iclass_ldpte_stateArgs, 0, 0 },
5656 { 0, 0 /* xt_iclass_hwwitlba */,
5657 1, Iclass_xt_iclass_hwwitlba_stateArgs, 0, 0 },
5658 { 0, 0 /* xt_iclass_hwwdtlba */,
5659 1, Iclass_xt_iclass_hwwdtlba_stateArgs, 0, 0 },
5660 { 1, Iclass_xt_iclass_rsr_cpenable_args,
5661 3, Iclass_xt_iclass_rsr_cpenable_stateArgs, 0, 0 },
5662 { 1, Iclass_xt_iclass_wsr_cpenable_args,
5663 3, Iclass_xt_iclass_wsr_cpenable_stateArgs, 0, 0 },
5664 { 1, Iclass_xt_iclass_xsr_cpenable_args,
5665 3, Iclass_xt_iclass_xsr_cpenable_stateArgs, 0, 0 },
5666 { 3, Iclass_xt_iclass_clamp_args,
5667 0, 0, 0, 0 },
5668 { 3, Iclass_xt_iclass_minmax_args,
5669 0, 0, 0, 0 },
5670 { 2, Iclass_xt_iclass_nsa_args,
5671 0, 0, 0, 0 },
5672 { 3, Iclass_xt_iclass_sx_args,
5673 0, 0, 0, 0 },
5674 { 3, Iclass_xt_iclass_l32ai_args,
5675 0, 0, 0, 0 },
5676 { 3, Iclass_xt_iclass_s32ri_args,
5677 0, 0, 0, 0 },
5678 { 3, Iclass_xt_iclass_s32c1i_args,
5679 2, Iclass_xt_iclass_s32c1i_stateArgs, 0, 0 },
5680 { 1, Iclass_xt_iclass_rsr_scompare1_args,
5681 1, Iclass_xt_iclass_rsr_scompare1_stateArgs, 0, 0 },
5682 { 1, Iclass_xt_iclass_wsr_scompare1_args,
5683 1, Iclass_xt_iclass_wsr_scompare1_stateArgs, 0, 0 },
5684 { 1, Iclass_xt_iclass_xsr_scompare1_args,
5685 1, Iclass_xt_iclass_xsr_scompare1_stateArgs, 0, 0 },
5686 { 3, Iclass_xt_iclass_div_args,
5687 0, 0, 0, 0 },
5688 { 3, Iclass_xt_mul32_args,
5689 0, 0, 0, 0 }
5690 };
5691
5692 enum xtensa_iclass_id {
5693 ICLASS_xt_iclass_excw,
5694 ICLASS_xt_iclass_rfe,
5695 ICLASS_xt_iclass_rfde,
5696 ICLASS_xt_iclass_syscall,
5697 ICLASS_xt_iclass_simcall,
5698 ICLASS_xt_iclass_call12,
5699 ICLASS_xt_iclass_call8,
5700 ICLASS_xt_iclass_call4,
5701 ICLASS_xt_iclass_callx12,
5702 ICLASS_xt_iclass_callx8,
5703 ICLASS_xt_iclass_callx4,
5704 ICLASS_xt_iclass_entry,
5705 ICLASS_xt_iclass_movsp,
5706 ICLASS_xt_iclass_rotw,
5707 ICLASS_xt_iclass_retw,
5708 ICLASS_xt_iclass_rfwou,
5709 ICLASS_xt_iclass_l32e,
5710 ICLASS_xt_iclass_s32e,
5711 ICLASS_xt_iclass_rsr_windowbase,
5712 ICLASS_xt_iclass_wsr_windowbase,
5713 ICLASS_xt_iclass_xsr_windowbase,
5714 ICLASS_xt_iclass_rsr_windowstart,
5715 ICLASS_xt_iclass_wsr_windowstart,
5716 ICLASS_xt_iclass_xsr_windowstart,
5717 ICLASS_xt_iclass_add_n,
5718 ICLASS_xt_iclass_addi_n,
5719 ICLASS_xt_iclass_bz6,
5720 ICLASS_xt_iclass_ill_n,
5721 ICLASS_xt_iclass_loadi4,
5722 ICLASS_xt_iclass_mov_n,
5723 ICLASS_xt_iclass_movi_n,
5724 ICLASS_xt_iclass_nopn,
5725 ICLASS_xt_iclass_retn,
5726 ICLASS_xt_iclass_storei4,
5727 ICLASS_rur_threadptr,
5728 ICLASS_wur_threadptr,
5729 ICLASS_xt_iclass_addi,
5730 ICLASS_xt_iclass_addmi,
5731 ICLASS_xt_iclass_addsub,
5732 ICLASS_xt_iclass_bit,
5733 ICLASS_xt_iclass_bsi8,
5734 ICLASS_xt_iclass_bsi8b,
5735 ICLASS_xt_iclass_bsi8u,
5736 ICLASS_xt_iclass_bst8,
5737 ICLASS_xt_iclass_bsz12,
5738 ICLASS_xt_iclass_call0,
5739 ICLASS_xt_iclass_callx0,
5740 ICLASS_xt_iclass_exti,
5741 ICLASS_xt_iclass_ill,
5742 ICLASS_xt_iclass_jump,
5743 ICLASS_xt_iclass_jumpx,
5744 ICLASS_xt_iclass_l16ui,
5745 ICLASS_xt_iclass_l16si,
5746 ICLASS_xt_iclass_l32i,
5747 ICLASS_xt_iclass_l32r,
5748 ICLASS_xt_iclass_l8i,
5749 ICLASS_xt_iclass_loop,
5750 ICLASS_xt_iclass_loopz,
5751 ICLASS_xt_iclass_movi,
5752 ICLASS_xt_iclass_movz,
5753 ICLASS_xt_iclass_neg,
5754 ICLASS_xt_iclass_nop,
5755 ICLASS_xt_iclass_return,
5756 ICLASS_xt_iclass_s16i,
5757 ICLASS_xt_iclass_s32i,
5758 ICLASS_xt_iclass_s8i,
5759 ICLASS_xt_iclass_sar,
5760 ICLASS_xt_iclass_sari,
5761 ICLASS_xt_iclass_shifts,
5762 ICLASS_xt_iclass_shiftst,
5763 ICLASS_xt_iclass_shiftt,
5764 ICLASS_xt_iclass_slli,
5765 ICLASS_xt_iclass_srai,
5766 ICLASS_xt_iclass_srli,
5767 ICLASS_xt_iclass_memw,
5768 ICLASS_xt_iclass_extw,
5769 ICLASS_xt_iclass_isync,
5770 ICLASS_xt_iclass_sync,
5771 ICLASS_xt_iclass_rsil,
5772 ICLASS_xt_iclass_rsr_lend,
5773 ICLASS_xt_iclass_wsr_lend,
5774 ICLASS_xt_iclass_xsr_lend,
5775 ICLASS_xt_iclass_rsr_lcount,
5776 ICLASS_xt_iclass_wsr_lcount,
5777 ICLASS_xt_iclass_xsr_lcount,
5778 ICLASS_xt_iclass_rsr_lbeg,
5779 ICLASS_xt_iclass_wsr_lbeg,
5780 ICLASS_xt_iclass_xsr_lbeg,
5781 ICLASS_xt_iclass_rsr_sar,
5782 ICLASS_xt_iclass_wsr_sar,
5783 ICLASS_xt_iclass_xsr_sar,
5784 ICLASS_xt_iclass_rsr_litbase,
5785 ICLASS_xt_iclass_wsr_litbase,
5786 ICLASS_xt_iclass_xsr_litbase,
5787 ICLASS_xt_iclass_rsr_176,
5788 ICLASS_xt_iclass_wsr_176,
5789 ICLASS_xt_iclass_rsr_208,
5790 ICLASS_xt_iclass_rsr_ps,
5791 ICLASS_xt_iclass_wsr_ps,
5792 ICLASS_xt_iclass_xsr_ps,
5793 ICLASS_xt_iclass_rsr_epc1,
5794 ICLASS_xt_iclass_wsr_epc1,
5795 ICLASS_xt_iclass_xsr_epc1,
5796 ICLASS_xt_iclass_rsr_excsave1,
5797 ICLASS_xt_iclass_wsr_excsave1,
5798 ICLASS_xt_iclass_xsr_excsave1,
5799 ICLASS_xt_iclass_rsr_epc2,
5800 ICLASS_xt_iclass_wsr_epc2,
5801 ICLASS_xt_iclass_xsr_epc2,
5802 ICLASS_xt_iclass_rsr_excsave2,
5803 ICLASS_xt_iclass_wsr_excsave2,
5804 ICLASS_xt_iclass_xsr_excsave2,
5805 ICLASS_xt_iclass_rsr_epc3,
5806 ICLASS_xt_iclass_wsr_epc3,
5807 ICLASS_xt_iclass_xsr_epc3,
5808 ICLASS_xt_iclass_rsr_excsave3,
5809 ICLASS_xt_iclass_wsr_excsave3,
5810 ICLASS_xt_iclass_xsr_excsave3,
5811 ICLASS_xt_iclass_rsr_epc4,
5812 ICLASS_xt_iclass_wsr_epc4,
5813 ICLASS_xt_iclass_xsr_epc4,
5814 ICLASS_xt_iclass_rsr_excsave4,
5815 ICLASS_xt_iclass_wsr_excsave4,
5816 ICLASS_xt_iclass_xsr_excsave4,
5817 ICLASS_xt_iclass_rsr_epc5,
5818 ICLASS_xt_iclass_wsr_epc5,
5819 ICLASS_xt_iclass_xsr_epc5,
5820 ICLASS_xt_iclass_rsr_excsave5,
5821 ICLASS_xt_iclass_wsr_excsave5,
5822 ICLASS_xt_iclass_xsr_excsave5,
5823 ICLASS_xt_iclass_rsr_epc6,
5824 ICLASS_xt_iclass_wsr_epc6,
5825 ICLASS_xt_iclass_xsr_epc6,
5826 ICLASS_xt_iclass_rsr_excsave6,
5827 ICLASS_xt_iclass_wsr_excsave6,
5828 ICLASS_xt_iclass_xsr_excsave6,
5829 ICLASS_xt_iclass_rsr_epc7,
5830 ICLASS_xt_iclass_wsr_epc7,
5831 ICLASS_xt_iclass_xsr_epc7,
5832 ICLASS_xt_iclass_rsr_excsave7,
5833 ICLASS_xt_iclass_wsr_excsave7,
5834 ICLASS_xt_iclass_xsr_excsave7,
5835 ICLASS_xt_iclass_rsr_eps2,
5836 ICLASS_xt_iclass_wsr_eps2,
5837 ICLASS_xt_iclass_xsr_eps2,
5838 ICLASS_xt_iclass_rsr_eps3,
5839 ICLASS_xt_iclass_wsr_eps3,
5840 ICLASS_xt_iclass_xsr_eps3,
5841 ICLASS_xt_iclass_rsr_eps4,
5842 ICLASS_xt_iclass_wsr_eps4,
5843 ICLASS_xt_iclass_xsr_eps4,
5844 ICLASS_xt_iclass_rsr_eps5,
5845 ICLASS_xt_iclass_wsr_eps5,
5846 ICLASS_xt_iclass_xsr_eps5,
5847 ICLASS_xt_iclass_rsr_eps6,
5848 ICLASS_xt_iclass_wsr_eps6,
5849 ICLASS_xt_iclass_xsr_eps6,
5850 ICLASS_xt_iclass_rsr_eps7,
5851 ICLASS_xt_iclass_wsr_eps7,
5852 ICLASS_xt_iclass_xsr_eps7,
5853 ICLASS_xt_iclass_rsr_excvaddr,
5854 ICLASS_xt_iclass_wsr_excvaddr,
5855 ICLASS_xt_iclass_xsr_excvaddr,
5856 ICLASS_xt_iclass_rsr_depc,
5857 ICLASS_xt_iclass_wsr_depc,
5858 ICLASS_xt_iclass_xsr_depc,
5859 ICLASS_xt_iclass_rsr_exccause,
5860 ICLASS_xt_iclass_wsr_exccause,
5861 ICLASS_xt_iclass_xsr_exccause,
5862 ICLASS_xt_iclass_rsr_misc0,
5863 ICLASS_xt_iclass_wsr_misc0,
5864 ICLASS_xt_iclass_xsr_misc0,
5865 ICLASS_xt_iclass_rsr_misc1,
5866 ICLASS_xt_iclass_wsr_misc1,
5867 ICLASS_xt_iclass_xsr_misc1,
5868 ICLASS_xt_iclass_rsr_prid,
5869 ICLASS_xt_iclass_rsr_vecbase,
5870 ICLASS_xt_iclass_wsr_vecbase,
5871 ICLASS_xt_iclass_xsr_vecbase,
5872 ICLASS_xt_iclass_mul16,
5873 ICLASS_xt_iclass_rfi,
5874 ICLASS_xt_iclass_wait,
5875 ICLASS_xt_iclass_rsr_interrupt,
5876 ICLASS_xt_iclass_wsr_intset,
5877 ICLASS_xt_iclass_wsr_intclear,
5878 ICLASS_xt_iclass_rsr_intenable,
5879 ICLASS_xt_iclass_wsr_intenable,
5880 ICLASS_xt_iclass_xsr_intenable,
5881 ICLASS_xt_iclass_break,
5882 ICLASS_xt_iclass_break_n,
5883 ICLASS_xt_iclass_rsr_dbreaka0,
5884 ICLASS_xt_iclass_wsr_dbreaka0,
5885 ICLASS_xt_iclass_xsr_dbreaka0,
5886 ICLASS_xt_iclass_rsr_dbreakc0,
5887 ICLASS_xt_iclass_wsr_dbreakc0,
5888 ICLASS_xt_iclass_xsr_dbreakc0,
5889 ICLASS_xt_iclass_rsr_dbreaka1,
5890 ICLASS_xt_iclass_wsr_dbreaka1,
5891 ICLASS_xt_iclass_xsr_dbreaka1,
5892 ICLASS_xt_iclass_rsr_dbreakc1,
5893 ICLASS_xt_iclass_wsr_dbreakc1,
5894 ICLASS_xt_iclass_xsr_dbreakc1,
5895 ICLASS_xt_iclass_rsr_ibreaka0,
5896 ICLASS_xt_iclass_wsr_ibreaka0,
5897 ICLASS_xt_iclass_xsr_ibreaka0,
5898 ICLASS_xt_iclass_rsr_ibreaka1,
5899 ICLASS_xt_iclass_wsr_ibreaka1,
5900 ICLASS_xt_iclass_xsr_ibreaka1,
5901 ICLASS_xt_iclass_rsr_ibreakenable,
5902 ICLASS_xt_iclass_wsr_ibreakenable,
5903 ICLASS_xt_iclass_xsr_ibreakenable,
5904 ICLASS_xt_iclass_rsr_debugcause,
5905 ICLASS_xt_iclass_wsr_debugcause,
5906 ICLASS_xt_iclass_xsr_debugcause,
5907 ICLASS_xt_iclass_rsr_icount,
5908 ICLASS_xt_iclass_wsr_icount,
5909 ICLASS_xt_iclass_xsr_icount,
5910 ICLASS_xt_iclass_rsr_icountlevel,
5911 ICLASS_xt_iclass_wsr_icountlevel,
5912 ICLASS_xt_iclass_xsr_icountlevel,
5913 ICLASS_xt_iclass_rsr_ddr,
5914 ICLASS_xt_iclass_wsr_ddr,
5915 ICLASS_xt_iclass_xsr_ddr,
5916 ICLASS_xt_iclass_rfdo,
5917 ICLASS_xt_iclass_rfdd,
5918 ICLASS_xt_iclass_wsr_mmid,
5919 ICLASS_xt_iclass_rsr_ccount,
5920 ICLASS_xt_iclass_wsr_ccount,
5921 ICLASS_xt_iclass_xsr_ccount,
5922 ICLASS_xt_iclass_rsr_ccompare0,
5923 ICLASS_xt_iclass_wsr_ccompare0,
5924 ICLASS_xt_iclass_xsr_ccompare0,
5925 ICLASS_xt_iclass_rsr_ccompare1,
5926 ICLASS_xt_iclass_wsr_ccompare1,
5927 ICLASS_xt_iclass_xsr_ccompare1,
5928 ICLASS_xt_iclass_rsr_ccompare2,
5929 ICLASS_xt_iclass_wsr_ccompare2,
5930 ICLASS_xt_iclass_xsr_ccompare2,
5931 ICLASS_xt_iclass_icache,
5932 ICLASS_xt_iclass_icache_lock,
5933 ICLASS_xt_iclass_icache_inv,
5934 ICLASS_xt_iclass_licx,
5935 ICLASS_xt_iclass_sicx,
5936 ICLASS_xt_iclass_dcache,
5937 ICLASS_xt_iclass_dcache_ind,
5938 ICLASS_xt_iclass_dcache_inv,
5939 ICLASS_xt_iclass_dpf,
5940 ICLASS_xt_iclass_dcache_lock,
5941 ICLASS_xt_iclass_sdct,
5942 ICLASS_xt_iclass_ldct,
5943 ICLASS_xt_iclass_wsr_ptevaddr,
5944 ICLASS_xt_iclass_rsr_ptevaddr,
5945 ICLASS_xt_iclass_xsr_ptevaddr,
5946 ICLASS_xt_iclass_rsr_rasid,
5947 ICLASS_xt_iclass_wsr_rasid,
5948 ICLASS_xt_iclass_xsr_rasid,
5949 ICLASS_xt_iclass_rsr_itlbcfg,
5950 ICLASS_xt_iclass_wsr_itlbcfg,
5951 ICLASS_xt_iclass_xsr_itlbcfg,
5952 ICLASS_xt_iclass_rsr_dtlbcfg,
5953 ICLASS_xt_iclass_wsr_dtlbcfg,
5954 ICLASS_xt_iclass_xsr_dtlbcfg,
5955 ICLASS_xt_iclass_idtlb,
5956 ICLASS_xt_iclass_rdtlb,
5957 ICLASS_xt_iclass_wdtlb,
5958 ICLASS_xt_iclass_iitlb,
5959 ICLASS_xt_iclass_ritlb,
5960 ICLASS_xt_iclass_witlb,
5961 ICLASS_xt_iclass_ldpte,
5962 ICLASS_xt_iclass_hwwitlba,
5963 ICLASS_xt_iclass_hwwdtlba,
5964 ICLASS_xt_iclass_rsr_cpenable,
5965 ICLASS_xt_iclass_wsr_cpenable,
5966 ICLASS_xt_iclass_xsr_cpenable,
5967 ICLASS_xt_iclass_clamp,
5968 ICLASS_xt_iclass_minmax,
5969 ICLASS_xt_iclass_nsa,
5970 ICLASS_xt_iclass_sx,
5971 ICLASS_xt_iclass_l32ai,
5972 ICLASS_xt_iclass_s32ri,
5973 ICLASS_xt_iclass_s32c1i,
5974 ICLASS_xt_iclass_rsr_scompare1,
5975 ICLASS_xt_iclass_wsr_scompare1,
5976 ICLASS_xt_iclass_xsr_scompare1,
5977 ICLASS_xt_iclass_div,
5978 ICLASS_xt_mul32
5979 };
5980
5981 \f
5982 /* Opcode encodings. */
5983
5984 static void
5985 Opcode_excw_Slot_inst_encode (xtensa_insnbuf slotbuf)
5986 {
5987 slotbuf[0] = 0x80200;
5988 }
5989
5990 static void
5991 Opcode_rfe_Slot_inst_encode (xtensa_insnbuf slotbuf)
5992 {
5993 slotbuf[0] = 0x300;
5994 }
5995
5996 static void
5997 Opcode_rfde_Slot_inst_encode (xtensa_insnbuf slotbuf)
5998 {
5999 slotbuf[0] = 0x2300;
6000 }
6001
6002 static void
6003 Opcode_syscall_Slot_inst_encode (xtensa_insnbuf slotbuf)
6004 {
6005 slotbuf[0] = 0x500;
6006 }
6007
6008 static void
6009 Opcode_simcall_Slot_inst_encode (xtensa_insnbuf slotbuf)
6010 {
6011 slotbuf[0] = 0x1500;
6012 }
6013
6014 static void
6015 Opcode_call12_Slot_inst_encode (xtensa_insnbuf slotbuf)
6016 {
6017 slotbuf[0] = 0x5c0000;
6018 }
6019
6020 static void
6021 Opcode_call8_Slot_inst_encode (xtensa_insnbuf slotbuf)
6022 {
6023 slotbuf[0] = 0x580000;
6024 }
6025
6026 static void
6027 Opcode_call4_Slot_inst_encode (xtensa_insnbuf slotbuf)
6028 {
6029 slotbuf[0] = 0x540000;
6030 }
6031
6032 static void
6033 Opcode_callx12_Slot_inst_encode (xtensa_insnbuf slotbuf)
6034 {
6035 slotbuf[0] = 0xf0000;
6036 }
6037
6038 static void
6039 Opcode_callx8_Slot_inst_encode (xtensa_insnbuf slotbuf)
6040 {
6041 slotbuf[0] = 0xb0000;
6042 }
6043
6044 static void
6045 Opcode_callx4_Slot_inst_encode (xtensa_insnbuf slotbuf)
6046 {
6047 slotbuf[0] = 0x70000;
6048 }
6049
6050 static void
6051 Opcode_entry_Slot_inst_encode (xtensa_insnbuf slotbuf)
6052 {
6053 slotbuf[0] = 0x6c0000;
6054 }
6055
6056 static void
6057 Opcode_movsp_Slot_inst_encode (xtensa_insnbuf slotbuf)
6058 {
6059 slotbuf[0] = 0x100;
6060 }
6061
6062 static void
6063 Opcode_rotw_Slot_inst_encode (xtensa_insnbuf slotbuf)
6064 {
6065 slotbuf[0] = 0x804;
6066 }
6067
6068 static void
6069 Opcode_retw_Slot_inst_encode (xtensa_insnbuf slotbuf)
6070 {
6071 slotbuf[0] = 0x60000;
6072 }
6073
6074 static void
6075 Opcode_retw_n_Slot_inst16b_encode (xtensa_insnbuf slotbuf)
6076 {
6077 slotbuf[0] = 0xd10f;
6078 }
6079
6080 static void
6081 Opcode_rfwo_Slot_inst_encode (xtensa_insnbuf slotbuf)
6082 {
6083 slotbuf[0] = 0x4300;
6084 }
6085
6086 static void
6087 Opcode_rfwu_Slot_inst_encode (xtensa_insnbuf slotbuf)
6088 {
6089 slotbuf[0] = 0x5300;
6090 }
6091
6092 static void
6093 Opcode_l32e_Slot_inst_encode (xtensa_insnbuf slotbuf)
6094 {
6095 slotbuf[0] = 0x90;
6096 }
6097
6098 static void
6099 Opcode_s32e_Slot_inst_encode (xtensa_insnbuf slotbuf)
6100 {
6101 slotbuf[0] = 0x94;
6102 }
6103
6104 static void
6105 Opcode_rsr_windowbase_Slot_inst_encode (xtensa_insnbuf slotbuf)
6106 {
6107 slotbuf[0] = 0x4830;
6108 }
6109
6110 static void
6111 Opcode_wsr_windowbase_Slot_inst_encode (xtensa_insnbuf slotbuf)
6112 {
6113 slotbuf[0] = 0x4831;
6114 }
6115
6116 static void
6117 Opcode_xsr_windowbase_Slot_inst_encode (xtensa_insnbuf slotbuf)
6118 {
6119 slotbuf[0] = 0x4816;
6120 }
6121
6122 static void
6123 Opcode_rsr_windowstart_Slot_inst_encode (xtensa_insnbuf slotbuf)
6124 {
6125 slotbuf[0] = 0x4930;
6126 }
6127
6128 static void
6129 Opcode_wsr_windowstart_Slot_inst_encode (xtensa_insnbuf slotbuf)
6130 {
6131 slotbuf[0] = 0x4931;
6132 }
6133
6134 static void
6135 Opcode_xsr_windowstart_Slot_inst_encode (xtensa_insnbuf slotbuf)
6136 {
6137 slotbuf[0] = 0x4916;
6138 }
6139
6140 static void
6141 Opcode_add_n_Slot_inst16a_encode (xtensa_insnbuf slotbuf)
6142 {
6143 slotbuf[0] = 0xa000;
6144 }
6145
6146 static void
6147 Opcode_addi_n_Slot_inst16a_encode (xtensa_insnbuf slotbuf)
6148 {
6149 slotbuf[0] = 0xb000;
6150 }
6151
6152 static void
6153 Opcode_beqz_n_Slot_inst16b_encode (xtensa_insnbuf slotbuf)
6154 {
6155 slotbuf[0] = 0xc800;
6156 }
6157
6158 static void
6159 Opcode_bnez_n_Slot_inst16b_encode (xtensa_insnbuf slotbuf)
6160 {
6161 slotbuf[0] = 0xcc00;
6162 }
6163
6164 static void
6165 Opcode_ill_n_Slot_inst16b_encode (xtensa_insnbuf slotbuf)
6166 {
6167 slotbuf[0] = 0xd60f;
6168 }
6169
6170 static void
6171 Opcode_l32i_n_Slot_inst16a_encode (xtensa_insnbuf slotbuf)
6172 {
6173 slotbuf[0] = 0x8000;
6174 }
6175
6176 static void
6177 Opcode_mov_n_Slot_inst16b_encode (xtensa_insnbuf slotbuf)
6178 {
6179 slotbuf[0] = 0xd000;
6180 }
6181
6182 static void
6183 Opcode_movi_n_Slot_inst16b_encode (xtensa_insnbuf slotbuf)
6184 {
6185 slotbuf[0] = 0xc000;
6186 }
6187
6188 static void
6189 Opcode_nop_n_Slot_inst16b_encode (xtensa_insnbuf slotbuf)
6190 {
6191 slotbuf[0] = 0xd30f;
6192 }
6193
6194 static void
6195 Opcode_ret_n_Slot_inst16b_encode (xtensa_insnbuf slotbuf)
6196 {
6197 slotbuf[0] = 0xd00f;
6198 }
6199
6200 static void
6201 Opcode_s32i_n_Slot_inst16a_encode (xtensa_insnbuf slotbuf)
6202 {
6203 slotbuf[0] = 0x9000;
6204 }
6205
6206 static void
6207 Opcode_rur_threadptr_Slot_inst_encode (xtensa_insnbuf slotbuf)
6208 {
6209 slotbuf[0] = 0x7e03e;
6210 }
6211
6212 static void
6213 Opcode_wur_threadptr_Slot_inst_encode (xtensa_insnbuf slotbuf)
6214 {
6215 slotbuf[0] = 0xe73f;
6216 }
6217
6218 static void
6219 Opcode_addi_Slot_inst_encode (xtensa_insnbuf slotbuf)
6220 {
6221 slotbuf[0] = 0x200c00;
6222 }
6223
6224 static void
6225 Opcode_addmi_Slot_inst_encode (xtensa_insnbuf slotbuf)
6226 {
6227 slotbuf[0] = 0x200d00;
6228 }
6229
6230 static void
6231 Opcode_add_Slot_inst_encode (xtensa_insnbuf slotbuf)
6232 {
6233 slotbuf[0] = 0x8;
6234 }
6235
6236 static void
6237 Opcode_sub_Slot_inst_encode (xtensa_insnbuf slotbuf)
6238 {
6239 slotbuf[0] = 0xc;
6240 }
6241
6242 static void
6243 Opcode_addx2_Slot_inst_encode (xtensa_insnbuf slotbuf)
6244 {
6245 slotbuf[0] = 0x9;
6246 }
6247
6248 static void
6249 Opcode_addx4_Slot_inst_encode (xtensa_insnbuf slotbuf)
6250 {
6251 slotbuf[0] = 0xa;
6252 }
6253
6254 static void
6255 Opcode_addx8_Slot_inst_encode (xtensa_insnbuf slotbuf)
6256 {
6257 slotbuf[0] = 0xb;
6258 }
6259
6260 static void
6261 Opcode_subx2_Slot_inst_encode (xtensa_insnbuf slotbuf)
6262 {
6263 slotbuf[0] = 0xd;
6264 }
6265
6266 static void
6267 Opcode_subx4_Slot_inst_encode (xtensa_insnbuf slotbuf)
6268 {
6269 slotbuf[0] = 0xe;
6270 }
6271
6272 static void
6273 Opcode_subx8_Slot_inst_encode (xtensa_insnbuf slotbuf)
6274 {
6275 slotbuf[0] = 0xf;
6276 }
6277
6278 static void
6279 Opcode_and_Slot_inst_encode (xtensa_insnbuf slotbuf)
6280 {
6281 slotbuf[0] = 0x1;
6282 }
6283
6284 static void
6285 Opcode_or_Slot_inst_encode (xtensa_insnbuf slotbuf)
6286 {
6287 slotbuf[0] = 0x2;
6288 }
6289
6290 static void
6291 Opcode_xor_Slot_inst_encode (xtensa_insnbuf slotbuf)
6292 {
6293 slotbuf[0] = 0x3;
6294 }
6295
6296 static void
6297 Opcode_beqi_Slot_inst_encode (xtensa_insnbuf slotbuf)
6298 {
6299 slotbuf[0] = 0x680000;
6300 }
6301
6302 static void
6303 Opcode_bnei_Slot_inst_encode (xtensa_insnbuf slotbuf)
6304 {
6305 slotbuf[0] = 0x690000;
6306 }
6307
6308 static void
6309 Opcode_bgei_Slot_inst_encode (xtensa_insnbuf slotbuf)
6310 {
6311 slotbuf[0] = 0x6b0000;
6312 }
6313
6314 static void
6315 Opcode_blti_Slot_inst_encode (xtensa_insnbuf slotbuf)
6316 {
6317 slotbuf[0] = 0x6a0000;
6318 }
6319
6320 static void
6321 Opcode_bbci_Slot_inst_encode (xtensa_insnbuf slotbuf)
6322 {
6323 slotbuf[0] = 0x700600;
6324 }
6325
6326 static void
6327 Opcode_bbsi_Slot_inst_encode (xtensa_insnbuf slotbuf)
6328 {
6329 slotbuf[0] = 0x700e00;
6330 }
6331
6332 static void
6333 Opcode_bgeui_Slot_inst_encode (xtensa_insnbuf slotbuf)
6334 {
6335 slotbuf[0] = 0x6f0000;
6336 }
6337
6338 static void
6339 Opcode_bltui_Slot_inst_encode (xtensa_insnbuf slotbuf)
6340 {
6341 slotbuf[0] = 0x6e0000;
6342 }
6343
6344 static void
6345 Opcode_beq_Slot_inst_encode (xtensa_insnbuf slotbuf)
6346 {
6347 slotbuf[0] = 0x700100;
6348 }
6349
6350 static void
6351 Opcode_bne_Slot_inst_encode (xtensa_insnbuf slotbuf)
6352 {
6353 slotbuf[0] = 0x700900;
6354 }
6355
6356 static void
6357 Opcode_bge_Slot_inst_encode (xtensa_insnbuf slotbuf)
6358 {
6359 slotbuf[0] = 0x700a00;
6360 }
6361
6362 static void
6363 Opcode_blt_Slot_inst_encode (xtensa_insnbuf slotbuf)
6364 {
6365 slotbuf[0] = 0x700200;
6366 }
6367
6368 static void
6369 Opcode_bgeu_Slot_inst_encode (xtensa_insnbuf slotbuf)
6370 {
6371 slotbuf[0] = 0x700b00;
6372 }
6373
6374 static void
6375 Opcode_bltu_Slot_inst_encode (xtensa_insnbuf slotbuf)
6376 {
6377 slotbuf[0] = 0x700300;
6378 }
6379
6380 static void
6381 Opcode_bany_Slot_inst_encode (xtensa_insnbuf slotbuf)
6382 {
6383 slotbuf[0] = 0x700800;
6384 }
6385
6386 static void
6387 Opcode_bnone_Slot_inst_encode (xtensa_insnbuf slotbuf)
6388 {
6389 slotbuf[0] = 0x700000;
6390 }
6391
6392 static void
6393 Opcode_ball_Slot_inst_encode (xtensa_insnbuf slotbuf)
6394 {
6395 slotbuf[0] = 0x700400;
6396 }
6397
6398 static void
6399 Opcode_bnall_Slot_inst_encode (xtensa_insnbuf slotbuf)
6400 {
6401 slotbuf[0] = 0x700c00;
6402 }
6403
6404 static void
6405 Opcode_bbc_Slot_inst_encode (xtensa_insnbuf slotbuf)
6406 {
6407 slotbuf[0] = 0x700500;
6408 }
6409
6410 static void
6411 Opcode_bbs_Slot_inst_encode (xtensa_insnbuf slotbuf)
6412 {
6413 slotbuf[0] = 0x700d00;
6414 }
6415
6416 static void
6417 Opcode_beqz_Slot_inst_encode (xtensa_insnbuf slotbuf)
6418 {
6419 slotbuf[0] = 0x640000;
6420 }
6421
6422 static void
6423 Opcode_bnez_Slot_inst_encode (xtensa_insnbuf slotbuf)
6424 {
6425 slotbuf[0] = 0x650000;
6426 }
6427
6428 static void
6429 Opcode_bgez_Slot_inst_encode (xtensa_insnbuf slotbuf)
6430 {
6431 slotbuf[0] = 0x670000;
6432 }
6433
6434 static void
6435 Opcode_bltz_Slot_inst_encode (xtensa_insnbuf slotbuf)
6436 {
6437 slotbuf[0] = 0x660000;
6438 }
6439
6440 static void
6441 Opcode_call0_Slot_inst_encode (xtensa_insnbuf slotbuf)
6442 {
6443 slotbuf[0] = 0x500000;
6444 }
6445
6446 static void
6447 Opcode_callx0_Slot_inst_encode (xtensa_insnbuf slotbuf)
6448 {
6449 slotbuf[0] = 0x30000;
6450 }
6451
6452 static void
6453 Opcode_extui_Slot_inst_encode (xtensa_insnbuf slotbuf)
6454 {
6455 slotbuf[0] = 0x40;
6456 }
6457
6458 static void
6459 Opcode_ill_Slot_inst_encode (xtensa_insnbuf slotbuf)
6460 {
6461 slotbuf[0] = 0;
6462 }
6463
6464 static void
6465 Opcode_j_Slot_inst_encode (xtensa_insnbuf slotbuf)
6466 {
6467 slotbuf[0] = 0x600000;
6468 }
6469
6470 static void
6471 Opcode_jx_Slot_inst_encode (xtensa_insnbuf slotbuf)
6472 {
6473 slotbuf[0] = 0xa0000;
6474 }
6475
6476 static void
6477 Opcode_l16ui_Slot_inst_encode (xtensa_insnbuf slotbuf)
6478 {
6479 slotbuf[0] = 0x200100;
6480 }
6481
6482 static void
6483 Opcode_l16si_Slot_inst_encode (xtensa_insnbuf slotbuf)
6484 {
6485 slotbuf[0] = 0x200900;
6486 }
6487
6488 static void
6489 Opcode_l32i_Slot_inst_encode (xtensa_insnbuf slotbuf)
6490 {
6491 slotbuf[0] = 0x200200;
6492 }
6493
6494 static void
6495 Opcode_l32r_Slot_inst_encode (xtensa_insnbuf slotbuf)
6496 {
6497 slotbuf[0] = 0x100000;
6498 }
6499
6500 static void
6501 Opcode_l8ui_Slot_inst_encode (xtensa_insnbuf slotbuf)
6502 {
6503 slotbuf[0] = 0x200000;
6504 }
6505
6506 static void
6507 Opcode_loop_Slot_inst_encode (xtensa_insnbuf slotbuf)
6508 {
6509 slotbuf[0] = 0x6d0800;
6510 }
6511
6512 static void
6513 Opcode_loopnez_Slot_inst_encode (xtensa_insnbuf slotbuf)
6514 {
6515 slotbuf[0] = 0x6d0900;
6516 }
6517
6518 static void
6519 Opcode_loopgtz_Slot_inst_encode (xtensa_insnbuf slotbuf)
6520 {
6521 slotbuf[0] = 0x6d0a00;
6522 }
6523
6524 static void
6525 Opcode_movi_Slot_inst_encode (xtensa_insnbuf slotbuf)
6526 {
6527 slotbuf[0] = 0x200a00;
6528 }
6529
6530 static void
6531 Opcode_moveqz_Slot_inst_encode (xtensa_insnbuf slotbuf)
6532 {
6533 slotbuf[0] = 0x38;
6534 }
6535
6536 static void
6537 Opcode_movnez_Slot_inst_encode (xtensa_insnbuf slotbuf)
6538 {
6539 slotbuf[0] = 0x39;
6540 }
6541
6542 static void
6543 Opcode_movltz_Slot_inst_encode (xtensa_insnbuf slotbuf)
6544 {
6545 slotbuf[0] = 0x3a;
6546 }
6547
6548 static void
6549 Opcode_movgez_Slot_inst_encode (xtensa_insnbuf slotbuf)
6550 {
6551 slotbuf[0] = 0x3b;
6552 }
6553
6554 static void
6555 Opcode_neg_Slot_inst_encode (xtensa_insnbuf slotbuf)
6556 {
6557 slotbuf[0] = 0x6;
6558 }
6559
6560 static void
6561 Opcode_abs_Slot_inst_encode (xtensa_insnbuf slotbuf)
6562 {
6563 slotbuf[0] = 0x1006;
6564 }
6565
6566 static void
6567 Opcode_nop_Slot_inst_encode (xtensa_insnbuf slotbuf)
6568 {
6569 slotbuf[0] = 0xf0200;
6570 }
6571
6572 static void
6573 Opcode_ret_Slot_inst_encode (xtensa_insnbuf slotbuf)
6574 {
6575 slotbuf[0] = 0x20000;
6576 }
6577
6578 static void
6579 Opcode_s16i_Slot_inst_encode (xtensa_insnbuf slotbuf)
6580 {
6581 slotbuf[0] = 0x200500;
6582 }
6583
6584 static void
6585 Opcode_s32i_Slot_inst_encode (xtensa_insnbuf slotbuf)
6586 {
6587 slotbuf[0] = 0x200600;
6588 }
6589
6590 static void
6591 Opcode_s8i_Slot_inst_encode (xtensa_insnbuf slotbuf)
6592 {
6593 slotbuf[0] = 0x200400;
6594 }
6595
6596 static void
6597 Opcode_ssr_Slot_inst_encode (xtensa_insnbuf slotbuf)
6598 {
6599 slotbuf[0] = 0x4;
6600 }
6601
6602 static void
6603 Opcode_ssl_Slot_inst_encode (xtensa_insnbuf slotbuf)
6604 {
6605 slotbuf[0] = 0x104;
6606 }
6607
6608 static void
6609 Opcode_ssa8l_Slot_inst_encode (xtensa_insnbuf slotbuf)
6610 {
6611 slotbuf[0] = 0x204;
6612 }
6613
6614 static void
6615 Opcode_ssa8b_Slot_inst_encode (xtensa_insnbuf slotbuf)
6616 {
6617 slotbuf[0] = 0x304;
6618 }
6619
6620 static void
6621 Opcode_ssai_Slot_inst_encode (xtensa_insnbuf slotbuf)
6622 {
6623 slotbuf[0] = 0x404;
6624 }
6625
6626 static void
6627 Opcode_sll_Slot_inst_encode (xtensa_insnbuf slotbuf)
6628 {
6629 slotbuf[0] = 0x1a;
6630 }
6631
6632 static void
6633 Opcode_src_Slot_inst_encode (xtensa_insnbuf slotbuf)
6634 {
6635 slotbuf[0] = 0x18;
6636 }
6637
6638 static void
6639 Opcode_srl_Slot_inst_encode (xtensa_insnbuf slotbuf)
6640 {
6641 slotbuf[0] = 0x19;
6642 }
6643
6644 static void
6645 Opcode_sra_Slot_inst_encode (xtensa_insnbuf slotbuf)
6646 {
6647 slotbuf[0] = 0x1b;
6648 }
6649
6650 static void
6651 Opcode_slli_Slot_inst_encode (xtensa_insnbuf slotbuf)
6652 {
6653 slotbuf[0] = 0x10;
6654 }
6655
6656 static void
6657 Opcode_srai_Slot_inst_encode (xtensa_insnbuf slotbuf)
6658 {
6659 slotbuf[0] = 0x12;
6660 }
6661
6662 static void
6663 Opcode_srli_Slot_inst_encode (xtensa_insnbuf slotbuf)
6664 {
6665 slotbuf[0] = 0x14;
6666 }
6667
6668 static void
6669 Opcode_memw_Slot_inst_encode (xtensa_insnbuf slotbuf)
6670 {
6671 slotbuf[0] = 0xc0200;
6672 }
6673
6674 static void
6675 Opcode_extw_Slot_inst_encode (xtensa_insnbuf slotbuf)
6676 {
6677 slotbuf[0] = 0xd0200;
6678 }
6679
6680 static void
6681 Opcode_isync_Slot_inst_encode (xtensa_insnbuf slotbuf)
6682 {
6683 slotbuf[0] = 0x200;
6684 }
6685
6686 static void
6687 Opcode_rsync_Slot_inst_encode (xtensa_insnbuf slotbuf)
6688 {
6689 slotbuf[0] = 0x10200;
6690 }
6691
6692 static void
6693 Opcode_esync_Slot_inst_encode (xtensa_insnbuf slotbuf)
6694 {
6695 slotbuf[0] = 0x20200;
6696 }
6697
6698 static void
6699 Opcode_dsync_Slot_inst_encode (xtensa_insnbuf slotbuf)
6700 {
6701 slotbuf[0] = 0x30200;
6702 }
6703
6704 static void
6705 Opcode_rsil_Slot_inst_encode (xtensa_insnbuf slotbuf)
6706 {
6707 slotbuf[0] = 0x600;
6708 }
6709
6710 static void
6711 Opcode_rsr_lend_Slot_inst_encode (xtensa_insnbuf slotbuf)
6712 {
6713 slotbuf[0] = 0x130;
6714 }
6715
6716 static void
6717 Opcode_wsr_lend_Slot_inst_encode (xtensa_insnbuf slotbuf)
6718 {
6719 slotbuf[0] = 0x131;
6720 }
6721
6722 static void
6723 Opcode_xsr_lend_Slot_inst_encode (xtensa_insnbuf slotbuf)
6724 {
6725 slotbuf[0] = 0x116;
6726 }
6727
6728 static void
6729 Opcode_rsr_lcount_Slot_inst_encode (xtensa_insnbuf slotbuf)
6730 {
6731 slotbuf[0] = 0x230;
6732 }
6733
6734 static void
6735 Opcode_wsr_lcount_Slot_inst_encode (xtensa_insnbuf slotbuf)
6736 {
6737 slotbuf[0] = 0x231;
6738 }
6739
6740 static void
6741 Opcode_xsr_lcount_Slot_inst_encode (xtensa_insnbuf slotbuf)
6742 {
6743 slotbuf[0] = 0x216;
6744 }
6745
6746 static void
6747 Opcode_rsr_lbeg_Slot_inst_encode (xtensa_insnbuf slotbuf)
6748 {
6749 slotbuf[0] = 0x30;
6750 }
6751
6752 static void
6753 Opcode_wsr_lbeg_Slot_inst_encode (xtensa_insnbuf slotbuf)
6754 {
6755 slotbuf[0] = 0x31;
6756 }
6757
6758 static void
6759 Opcode_xsr_lbeg_Slot_inst_encode (xtensa_insnbuf slotbuf)
6760 {
6761 slotbuf[0] = 0x16;
6762 }
6763
6764 static void
6765 Opcode_rsr_sar_Slot_inst_encode (xtensa_insnbuf slotbuf)
6766 {
6767 slotbuf[0] = 0x330;
6768 }
6769
6770 static void
6771 Opcode_wsr_sar_Slot_inst_encode (xtensa_insnbuf slotbuf)
6772 {
6773 slotbuf[0] = 0x331;
6774 }
6775
6776 static void
6777 Opcode_xsr_sar_Slot_inst_encode (xtensa_insnbuf slotbuf)
6778 {
6779 slotbuf[0] = 0x316;
6780 }
6781
6782 static void
6783 Opcode_rsr_litbase_Slot_inst_encode (xtensa_insnbuf slotbuf)
6784 {
6785 slotbuf[0] = 0x530;
6786 }
6787
6788 static void
6789 Opcode_wsr_litbase_Slot_inst_encode (xtensa_insnbuf slotbuf)
6790 {
6791 slotbuf[0] = 0x531;
6792 }
6793
6794 static void
6795 Opcode_xsr_litbase_Slot_inst_encode (xtensa_insnbuf slotbuf)
6796 {
6797 slotbuf[0] = 0x516;
6798 }
6799
6800 static void
6801 Opcode_rsr_176_Slot_inst_encode (xtensa_insnbuf slotbuf)
6802 {
6803 slotbuf[0] = 0xb030;
6804 }
6805
6806 static void
6807 Opcode_wsr_176_Slot_inst_encode (xtensa_insnbuf slotbuf)
6808 {
6809 slotbuf[0] = 0xb031;
6810 }
6811
6812 static void
6813 Opcode_rsr_208_Slot_inst_encode (xtensa_insnbuf slotbuf)
6814 {
6815 slotbuf[0] = 0xd030;
6816 }
6817
6818 static void
6819 Opcode_rsr_ps_Slot_inst_encode (xtensa_insnbuf slotbuf)
6820 {
6821 slotbuf[0] = 0xe630;
6822 }
6823
6824 static void
6825 Opcode_wsr_ps_Slot_inst_encode (xtensa_insnbuf slotbuf)
6826 {
6827 slotbuf[0] = 0xe631;
6828 }
6829
6830 static void
6831 Opcode_xsr_ps_Slot_inst_encode (xtensa_insnbuf slotbuf)
6832 {
6833 slotbuf[0] = 0xe616;
6834 }
6835
6836 static void
6837 Opcode_rsr_epc1_Slot_inst_encode (xtensa_insnbuf slotbuf)
6838 {
6839 slotbuf[0] = 0xb130;
6840 }
6841
6842 static void
6843 Opcode_wsr_epc1_Slot_inst_encode (xtensa_insnbuf slotbuf)
6844 {
6845 slotbuf[0] = 0xb131;
6846 }
6847
6848 static void
6849 Opcode_xsr_epc1_Slot_inst_encode (xtensa_insnbuf slotbuf)
6850 {
6851 slotbuf[0] = 0xb116;
6852 }
6853
6854 static void
6855 Opcode_rsr_excsave1_Slot_inst_encode (xtensa_insnbuf slotbuf)
6856 {
6857 slotbuf[0] = 0xd130;
6858 }
6859
6860 static void
6861 Opcode_wsr_excsave1_Slot_inst_encode (xtensa_insnbuf slotbuf)
6862 {
6863 slotbuf[0] = 0xd131;
6864 }
6865
6866 static void
6867 Opcode_xsr_excsave1_Slot_inst_encode (xtensa_insnbuf slotbuf)
6868 {
6869 slotbuf[0] = 0xd116;
6870 }
6871
6872 static void
6873 Opcode_rsr_epc2_Slot_inst_encode (xtensa_insnbuf slotbuf)
6874 {
6875 slotbuf[0] = 0xb230;
6876 }
6877
6878 static void
6879 Opcode_wsr_epc2_Slot_inst_encode (xtensa_insnbuf slotbuf)
6880 {
6881 slotbuf[0] = 0xb231;
6882 }
6883
6884 static void
6885 Opcode_xsr_epc2_Slot_inst_encode (xtensa_insnbuf slotbuf)
6886 {
6887 slotbuf[0] = 0xb216;
6888 }
6889
6890 static void
6891 Opcode_rsr_excsave2_Slot_inst_encode (xtensa_insnbuf slotbuf)
6892 {
6893 slotbuf[0] = 0xd230;
6894 }
6895
6896 static void
6897 Opcode_wsr_excsave2_Slot_inst_encode (xtensa_insnbuf slotbuf)
6898 {
6899 slotbuf[0] = 0xd231;
6900 }
6901
6902 static void
6903 Opcode_xsr_excsave2_Slot_inst_encode (xtensa_insnbuf slotbuf)
6904 {
6905 slotbuf[0] = 0xd216;
6906 }
6907
6908 static void
6909 Opcode_rsr_epc3_Slot_inst_encode (xtensa_insnbuf slotbuf)
6910 {
6911 slotbuf[0] = 0xb330;
6912 }
6913
6914 static void
6915 Opcode_wsr_epc3_Slot_inst_encode (xtensa_insnbuf slotbuf)
6916 {
6917 slotbuf[0] = 0xb331;
6918 }
6919
6920 static void
6921 Opcode_xsr_epc3_Slot_inst_encode (xtensa_insnbuf slotbuf)
6922 {
6923 slotbuf[0] = 0xb316;
6924 }
6925
6926 static void
6927 Opcode_rsr_excsave3_Slot_inst_encode (xtensa_insnbuf slotbuf)
6928 {
6929 slotbuf[0] = 0xd330;
6930 }
6931
6932 static void
6933 Opcode_wsr_excsave3_Slot_inst_encode (xtensa_insnbuf slotbuf)
6934 {
6935 slotbuf[0] = 0xd331;
6936 }
6937
6938 static void
6939 Opcode_xsr_excsave3_Slot_inst_encode (xtensa_insnbuf slotbuf)
6940 {
6941 slotbuf[0] = 0xd316;
6942 }
6943
6944 static void
6945 Opcode_rsr_epc4_Slot_inst_encode (xtensa_insnbuf slotbuf)
6946 {
6947 slotbuf[0] = 0xb430;
6948 }
6949
6950 static void
6951 Opcode_wsr_epc4_Slot_inst_encode (xtensa_insnbuf slotbuf)
6952 {
6953 slotbuf[0] = 0xb431;
6954 }
6955
6956 static void
6957 Opcode_xsr_epc4_Slot_inst_encode (xtensa_insnbuf slotbuf)
6958 {
6959 slotbuf[0] = 0xb416;
6960 }
6961
6962 static void
6963 Opcode_rsr_excsave4_Slot_inst_encode (xtensa_insnbuf slotbuf)
6964 {
6965 slotbuf[0] = 0xd430;
6966 }
6967
6968 static void
6969 Opcode_wsr_excsave4_Slot_inst_encode (xtensa_insnbuf slotbuf)
6970 {
6971 slotbuf[0] = 0xd431;
6972 }
6973
6974 static void
6975 Opcode_xsr_excsave4_Slot_inst_encode (xtensa_insnbuf slotbuf)
6976 {
6977 slotbuf[0] = 0xd416;
6978 }
6979
6980 static void
6981 Opcode_rsr_epc5_Slot_inst_encode (xtensa_insnbuf slotbuf)
6982 {
6983 slotbuf[0] = 0xb530;
6984 }
6985
6986 static void
6987 Opcode_wsr_epc5_Slot_inst_encode (xtensa_insnbuf slotbuf)
6988 {
6989 slotbuf[0] = 0xb531;
6990 }
6991
6992 static void
6993 Opcode_xsr_epc5_Slot_inst_encode (xtensa_insnbuf slotbuf)
6994 {
6995 slotbuf[0] = 0xb516;
6996 }
6997
6998 static void
6999 Opcode_rsr_excsave5_Slot_inst_encode (xtensa_insnbuf slotbuf)
7000 {
7001 slotbuf[0] = 0xd530;
7002 }
7003
7004 static void
7005 Opcode_wsr_excsave5_Slot_inst_encode (xtensa_insnbuf slotbuf)
7006 {
7007 slotbuf[0] = 0xd531;
7008 }
7009
7010 static void
7011 Opcode_xsr_excsave5_Slot_inst_encode (xtensa_insnbuf slotbuf)
7012 {
7013 slotbuf[0] = 0xd516;
7014 }
7015
7016 static void
7017 Opcode_rsr_epc6_Slot_inst_encode (xtensa_insnbuf slotbuf)
7018 {
7019 slotbuf[0] = 0xb630;
7020 }
7021
7022 static void
7023 Opcode_wsr_epc6_Slot_inst_encode (xtensa_insnbuf slotbuf)
7024 {
7025 slotbuf[0] = 0xb631;
7026 }
7027
7028 static void
7029 Opcode_xsr_epc6_Slot_inst_encode (xtensa_insnbuf slotbuf)
7030 {
7031 slotbuf[0] = 0xb616;
7032 }
7033
7034 static void
7035 Opcode_rsr_excsave6_Slot_inst_encode (xtensa_insnbuf slotbuf)
7036 {
7037 slotbuf[0] = 0xd630;
7038 }
7039
7040 static void
7041 Opcode_wsr_excsave6_Slot_inst_encode (xtensa_insnbuf slotbuf)
7042 {
7043 slotbuf[0] = 0xd631;
7044 }
7045
7046 static void
7047 Opcode_xsr_excsave6_Slot_inst_encode (xtensa_insnbuf slotbuf)
7048 {
7049 slotbuf[0] = 0xd616;
7050 }
7051
7052 static void
7053 Opcode_rsr_epc7_Slot_inst_encode (xtensa_insnbuf slotbuf)
7054 {
7055 slotbuf[0] = 0xb730;
7056 }
7057
7058 static void
7059 Opcode_wsr_epc7_Slot_inst_encode (xtensa_insnbuf slotbuf)
7060 {
7061 slotbuf[0] = 0xb731;
7062 }
7063
7064 static void
7065 Opcode_xsr_epc7_Slot_inst_encode (xtensa_insnbuf slotbuf)
7066 {
7067 slotbuf[0] = 0xb716;
7068 }
7069
7070 static void
7071 Opcode_rsr_excsave7_Slot_inst_encode (xtensa_insnbuf slotbuf)
7072 {
7073 slotbuf[0] = 0xd730;
7074 }
7075
7076 static void
7077 Opcode_wsr_excsave7_Slot_inst_encode (xtensa_insnbuf slotbuf)
7078 {
7079 slotbuf[0] = 0xd731;
7080 }
7081
7082 static void
7083 Opcode_xsr_excsave7_Slot_inst_encode (xtensa_insnbuf slotbuf)
7084 {
7085 slotbuf[0] = 0xd716;
7086 }
7087
7088 static void
7089 Opcode_rsr_eps2_Slot_inst_encode (xtensa_insnbuf slotbuf)
7090 {
7091 slotbuf[0] = 0xc230;
7092 }
7093
7094 static void
7095 Opcode_wsr_eps2_Slot_inst_encode (xtensa_insnbuf slotbuf)
7096 {
7097 slotbuf[0] = 0xc231;
7098 }
7099
7100 static void
7101 Opcode_xsr_eps2_Slot_inst_encode (xtensa_insnbuf slotbuf)
7102 {
7103 slotbuf[0] = 0xc216;
7104 }
7105
7106 static void
7107 Opcode_rsr_eps3_Slot_inst_encode (xtensa_insnbuf slotbuf)
7108 {
7109 slotbuf[0] = 0xc330;
7110 }
7111
7112 static void
7113 Opcode_wsr_eps3_Slot_inst_encode (xtensa_insnbuf slotbuf)
7114 {
7115 slotbuf[0] = 0xc331;
7116 }
7117
7118 static void
7119 Opcode_xsr_eps3_Slot_inst_encode (xtensa_insnbuf slotbuf)
7120 {
7121 slotbuf[0] = 0xc316;
7122 }
7123
7124 static void
7125 Opcode_rsr_eps4_Slot_inst_encode (xtensa_insnbuf slotbuf)
7126 {
7127 slotbuf[0] = 0xc430;
7128 }
7129
7130 static void
7131 Opcode_wsr_eps4_Slot_inst_encode (xtensa_insnbuf slotbuf)
7132 {
7133 slotbuf[0] = 0xc431;
7134 }
7135
7136 static void
7137 Opcode_xsr_eps4_Slot_inst_encode (xtensa_insnbuf slotbuf)
7138 {
7139 slotbuf[0] = 0xc416;
7140 }
7141
7142 static void
7143 Opcode_rsr_eps5_Slot_inst_encode (xtensa_insnbuf slotbuf)
7144 {
7145 slotbuf[0] = 0xc530;
7146 }
7147
7148 static void
7149 Opcode_wsr_eps5_Slot_inst_encode (xtensa_insnbuf slotbuf)
7150 {
7151 slotbuf[0] = 0xc531;
7152 }
7153
7154 static void
7155 Opcode_xsr_eps5_Slot_inst_encode (xtensa_insnbuf slotbuf)
7156 {
7157 slotbuf[0] = 0xc516;
7158 }
7159
7160 static void
7161 Opcode_rsr_eps6_Slot_inst_encode (xtensa_insnbuf slotbuf)
7162 {
7163 slotbuf[0] = 0xc630;
7164 }
7165
7166 static void
7167 Opcode_wsr_eps6_Slot_inst_encode (xtensa_insnbuf slotbuf)
7168 {
7169 slotbuf[0] = 0xc631;
7170 }
7171
7172 static void
7173 Opcode_xsr_eps6_Slot_inst_encode (xtensa_insnbuf slotbuf)
7174 {
7175 slotbuf[0] = 0xc616;
7176 }
7177
7178 static void
7179 Opcode_rsr_eps7_Slot_inst_encode (xtensa_insnbuf slotbuf)
7180 {
7181 slotbuf[0] = 0xc730;
7182 }
7183
7184 static void
7185 Opcode_wsr_eps7_Slot_inst_encode (xtensa_insnbuf slotbuf)
7186 {
7187 slotbuf[0] = 0xc731;
7188 }
7189
7190 static void
7191 Opcode_xsr_eps7_Slot_inst_encode (xtensa_insnbuf slotbuf)
7192 {
7193 slotbuf[0] = 0xc716;
7194 }
7195
7196 static void
7197 Opcode_rsr_excvaddr_Slot_inst_encode (xtensa_insnbuf slotbuf)
7198 {
7199 slotbuf[0] = 0xee30;
7200 }
7201
7202 static void
7203 Opcode_wsr_excvaddr_Slot_inst_encode (xtensa_insnbuf slotbuf)
7204 {
7205 slotbuf[0] = 0xee31;
7206 }
7207
7208 static void
7209 Opcode_xsr_excvaddr_Slot_inst_encode (xtensa_insnbuf slotbuf)
7210 {
7211 slotbuf[0] = 0xee16;
7212 }
7213
7214 static void
7215 Opcode_rsr_depc_Slot_inst_encode (xtensa_insnbuf slotbuf)
7216 {
7217 slotbuf[0] = 0xc030;
7218 }
7219
7220 static void
7221 Opcode_wsr_depc_Slot_inst_encode (xtensa_insnbuf slotbuf)
7222 {
7223 slotbuf[0] = 0xc031;
7224 }
7225
7226 static void
7227 Opcode_xsr_depc_Slot_inst_encode (xtensa_insnbuf slotbuf)
7228 {
7229 slotbuf[0] = 0xc016;
7230 }
7231
7232 static void
7233 Opcode_rsr_exccause_Slot_inst_encode (xtensa_insnbuf slotbuf)
7234 {
7235 slotbuf[0] = 0xe830;
7236 }
7237
7238 static void
7239 Opcode_wsr_exccause_Slot_inst_encode (xtensa_insnbuf slotbuf)
7240 {
7241 slotbuf[0] = 0xe831;
7242 }
7243
7244 static void
7245 Opcode_xsr_exccause_Slot_inst_encode (xtensa_insnbuf slotbuf)
7246 {
7247 slotbuf[0] = 0xe816;
7248 }
7249
7250 static void
7251 Opcode_rsr_misc0_Slot_inst_encode (xtensa_insnbuf slotbuf)
7252 {
7253 slotbuf[0] = 0xf430;
7254 }
7255
7256 static void
7257 Opcode_wsr_misc0_Slot_inst_encode (xtensa_insnbuf slotbuf)
7258 {
7259 slotbuf[0] = 0xf431;
7260 }
7261
7262 static void
7263 Opcode_xsr_misc0_Slot_inst_encode (xtensa_insnbuf slotbuf)
7264 {
7265 slotbuf[0] = 0xf416;
7266 }
7267
7268 static void
7269 Opcode_rsr_misc1_Slot_inst_encode (xtensa_insnbuf slotbuf)
7270 {
7271 slotbuf[0] = 0xf530;
7272 }
7273
7274 static void
7275 Opcode_wsr_misc1_Slot_inst_encode (xtensa_insnbuf slotbuf)
7276 {
7277 slotbuf[0] = 0xf531;
7278 }
7279
7280 static void
7281 Opcode_xsr_misc1_Slot_inst_encode (xtensa_insnbuf slotbuf)
7282 {
7283 slotbuf[0] = 0xf516;
7284 }
7285
7286 static void
7287 Opcode_rsr_prid_Slot_inst_encode (xtensa_insnbuf slotbuf)
7288 {
7289 slotbuf[0] = 0xeb30;
7290 }
7291
7292 static void
7293 Opcode_rsr_vecbase_Slot_inst_encode (xtensa_insnbuf slotbuf)
7294 {
7295 slotbuf[0] = 0xe730;
7296 }
7297
7298 static void
7299 Opcode_wsr_vecbase_Slot_inst_encode (xtensa_insnbuf slotbuf)
7300 {
7301 slotbuf[0] = 0xe731;
7302 }
7303
7304 static void
7305 Opcode_xsr_vecbase_Slot_inst_encode (xtensa_insnbuf slotbuf)
7306 {
7307 slotbuf[0] = 0xe716;
7308 }
7309
7310 static void
7311 Opcode_mul16u_Slot_inst_encode (xtensa_insnbuf slotbuf)
7312 {
7313 slotbuf[0] = 0x1c;
7314 }
7315
7316 static void
7317 Opcode_mul16s_Slot_inst_encode (xtensa_insnbuf slotbuf)
7318 {
7319 slotbuf[0] = 0x1d;
7320 }
7321
7322 static void
7323 Opcode_rfi_Slot_inst_encode (xtensa_insnbuf slotbuf)
7324 {
7325 slotbuf[0] = 0x10300;
7326 }
7327
7328 static void
7329 Opcode_waiti_Slot_inst_encode (xtensa_insnbuf slotbuf)
7330 {
7331 slotbuf[0] = 0x700;
7332 }
7333
7334 static void
7335 Opcode_rsr_interrupt_Slot_inst_encode (xtensa_insnbuf slotbuf)
7336 {
7337 slotbuf[0] = 0xe230;
7338 }
7339
7340 static void
7341 Opcode_wsr_intset_Slot_inst_encode (xtensa_insnbuf slotbuf)
7342 {
7343 slotbuf[0] = 0xe231;
7344 }
7345
7346 static void
7347 Opcode_wsr_intclear_Slot_inst_encode (xtensa_insnbuf slotbuf)
7348 {
7349 slotbuf[0] = 0xe331;
7350 }
7351
7352 static void
7353 Opcode_rsr_intenable_Slot_inst_encode (xtensa_insnbuf slotbuf)
7354 {
7355 slotbuf[0] = 0xe430;
7356 }
7357
7358 static void
7359 Opcode_wsr_intenable_Slot_inst_encode (xtensa_insnbuf slotbuf)
7360 {
7361 slotbuf[0] = 0xe431;
7362 }
7363
7364 static void
7365 Opcode_xsr_intenable_Slot_inst_encode (xtensa_insnbuf slotbuf)
7366 {
7367 slotbuf[0] = 0xe416;
7368 }
7369
7370 static void
7371 Opcode_break_Slot_inst_encode (xtensa_insnbuf slotbuf)
7372 {
7373 slotbuf[0] = 0x400;
7374 }
7375
7376 static void
7377 Opcode_break_n_Slot_inst16b_encode (xtensa_insnbuf slotbuf)
7378 {
7379 slotbuf[0] = 0xd20f;
7380 }
7381
7382 static void
7383 Opcode_rsr_dbreaka0_Slot_inst_encode (xtensa_insnbuf slotbuf)
7384 {
7385 slotbuf[0] = 0x9030;
7386 }
7387
7388 static void
7389 Opcode_wsr_dbreaka0_Slot_inst_encode (xtensa_insnbuf slotbuf)
7390 {
7391 slotbuf[0] = 0x9031;
7392 }
7393
7394 static void
7395 Opcode_xsr_dbreaka0_Slot_inst_encode (xtensa_insnbuf slotbuf)
7396 {
7397 slotbuf[0] = 0x9016;
7398 }
7399
7400 static void
7401 Opcode_rsr_dbreakc0_Slot_inst_encode (xtensa_insnbuf slotbuf)
7402 {
7403 slotbuf[0] = 0xa030;
7404 }
7405
7406 static void
7407 Opcode_wsr_dbreakc0_Slot_inst_encode (xtensa_insnbuf slotbuf)
7408 {
7409 slotbuf[0] = 0xa031;
7410 }
7411
7412 static void
7413 Opcode_xsr_dbreakc0_Slot_inst_encode (xtensa_insnbuf slotbuf)
7414 {
7415 slotbuf[0] = 0xa016;
7416 }
7417
7418 static void
7419 Opcode_rsr_dbreaka1_Slot_inst_encode (xtensa_insnbuf slotbuf)
7420 {
7421 slotbuf[0] = 0x9130;
7422 }
7423
7424 static void
7425 Opcode_wsr_dbreaka1_Slot_inst_encode (xtensa_insnbuf slotbuf)
7426 {
7427 slotbuf[0] = 0x9131;
7428 }
7429
7430 static void
7431 Opcode_xsr_dbreaka1_Slot_inst_encode (xtensa_insnbuf slotbuf)
7432 {
7433 slotbuf[0] = 0x9116;
7434 }
7435
7436 static void
7437 Opcode_rsr_dbreakc1_Slot_inst_encode (xtensa_insnbuf slotbuf)
7438 {
7439 slotbuf[0] = 0xa130;
7440 }
7441
7442 static void
7443 Opcode_wsr_dbreakc1_Slot_inst_encode (xtensa_insnbuf slotbuf)
7444 {
7445 slotbuf[0] = 0xa131;
7446 }
7447
7448 static void
7449 Opcode_xsr_dbreakc1_Slot_inst_encode (xtensa_insnbuf slotbuf)
7450 {
7451 slotbuf[0] = 0xa116;
7452 }
7453
7454 static void
7455 Opcode_rsr_ibreaka0_Slot_inst_encode (xtensa_insnbuf slotbuf)
7456 {
7457 slotbuf[0] = 0x8030;
7458 }
7459
7460 static void
7461 Opcode_wsr_ibreaka0_Slot_inst_encode (xtensa_insnbuf slotbuf)
7462 {
7463 slotbuf[0] = 0x8031;
7464 }
7465
7466 static void
7467 Opcode_xsr_ibreaka0_Slot_inst_encode (xtensa_insnbuf slotbuf)
7468 {
7469 slotbuf[0] = 0x8016;
7470 }
7471
7472 static void
7473 Opcode_rsr_ibreaka1_Slot_inst_encode (xtensa_insnbuf slotbuf)
7474 {
7475 slotbuf[0] = 0x8130;
7476 }
7477
7478 static void
7479 Opcode_wsr_ibreaka1_Slot_inst_encode (xtensa_insnbuf slotbuf)
7480 {
7481 slotbuf[0] = 0x8131;
7482 }
7483
7484 static void
7485 Opcode_xsr_ibreaka1_Slot_inst_encode (xtensa_insnbuf slotbuf)
7486 {
7487 slotbuf[0] = 0x8116;
7488 }
7489
7490 static void
7491 Opcode_rsr_ibreakenable_Slot_inst_encode (xtensa_insnbuf slotbuf)
7492 {
7493 slotbuf[0] = 0x6030;
7494 }
7495
7496 static void
7497 Opcode_wsr_ibreakenable_Slot_inst_encode (xtensa_insnbuf slotbuf)
7498 {
7499 slotbuf[0] = 0x6031;
7500 }
7501
7502 static void
7503 Opcode_xsr_ibreakenable_Slot_inst_encode (xtensa_insnbuf slotbuf)
7504 {
7505 slotbuf[0] = 0x6016;
7506 }
7507
7508 static void
7509 Opcode_rsr_debugcause_Slot_inst_encode (xtensa_insnbuf slotbuf)
7510 {
7511 slotbuf[0] = 0xe930;
7512 }
7513
7514 static void
7515 Opcode_wsr_debugcause_Slot_inst_encode (xtensa_insnbuf slotbuf)
7516 {
7517 slotbuf[0] = 0xe931;
7518 }
7519
7520 static void
7521 Opcode_xsr_debugcause_Slot_inst_encode (xtensa_insnbuf slotbuf)
7522 {
7523 slotbuf[0] = 0xe916;
7524 }
7525
7526 static void
7527 Opcode_rsr_icount_Slot_inst_encode (xtensa_insnbuf slotbuf)
7528 {
7529 slotbuf[0] = 0xec30;
7530 }
7531
7532 static void
7533 Opcode_wsr_icount_Slot_inst_encode (xtensa_insnbuf slotbuf)
7534 {
7535 slotbuf[0] = 0xec31;
7536 }
7537
7538 static void
7539 Opcode_xsr_icount_Slot_inst_encode (xtensa_insnbuf slotbuf)
7540 {
7541 slotbuf[0] = 0xec16;
7542 }
7543
7544 static void
7545 Opcode_rsr_icountlevel_Slot_inst_encode (xtensa_insnbuf slotbuf)
7546 {
7547 slotbuf[0] = 0xed30;
7548 }
7549
7550 static void
7551 Opcode_wsr_icountlevel_Slot_inst_encode (xtensa_insnbuf slotbuf)
7552 {
7553 slotbuf[0] = 0xed31;
7554 }
7555
7556 static void
7557 Opcode_xsr_icountlevel_Slot_inst_encode (xtensa_insnbuf slotbuf)
7558 {
7559 slotbuf[0] = 0xed16;
7560 }
7561
7562 static void
7563 Opcode_rsr_ddr_Slot_inst_encode (xtensa_insnbuf slotbuf)
7564 {
7565 slotbuf[0] = 0x6830;
7566 }
7567
7568 static void
7569 Opcode_wsr_ddr_Slot_inst_encode (xtensa_insnbuf slotbuf)
7570 {
7571 slotbuf[0] = 0x6831;
7572 }
7573
7574 static void
7575 Opcode_xsr_ddr_Slot_inst_encode (xtensa_insnbuf slotbuf)
7576 {
7577 slotbuf[0] = 0x6816;
7578 }
7579
7580 static void
7581 Opcode_rfdo_Slot_inst_encode (xtensa_insnbuf slotbuf)
7582 {
7583 slotbuf[0] = 0xe1f;
7584 }
7585
7586 static void
7587 Opcode_rfdd_Slot_inst_encode (xtensa_insnbuf slotbuf)
7588 {
7589 slotbuf[0] = 0x10e1f;
7590 }
7591
7592 static void
7593 Opcode_wsr_mmid_Slot_inst_encode (xtensa_insnbuf slotbuf)
7594 {
7595 slotbuf[0] = 0x5931;
7596 }
7597
7598 static void
7599 Opcode_rsr_ccount_Slot_inst_encode (xtensa_insnbuf slotbuf)
7600 {
7601 slotbuf[0] = 0xea30;
7602 }
7603
7604 static void
7605 Opcode_wsr_ccount_Slot_inst_encode (xtensa_insnbuf slotbuf)
7606 {
7607 slotbuf[0] = 0xea31;
7608 }
7609
7610 static void
7611 Opcode_xsr_ccount_Slot_inst_encode (xtensa_insnbuf slotbuf)
7612 {
7613 slotbuf[0] = 0xea16;
7614 }
7615
7616 static void
7617 Opcode_rsr_ccompare0_Slot_inst_encode (xtensa_insnbuf slotbuf)
7618 {
7619 slotbuf[0] = 0xf030;
7620 }
7621
7622 static void
7623 Opcode_wsr_ccompare0_Slot_inst_encode (xtensa_insnbuf slotbuf)
7624 {
7625 slotbuf[0] = 0xf031;
7626 }
7627
7628 static void
7629 Opcode_xsr_ccompare0_Slot_inst_encode (xtensa_insnbuf slotbuf)
7630 {
7631 slotbuf[0] = 0xf016;
7632 }
7633
7634 static void
7635 Opcode_rsr_ccompare1_Slot_inst_encode (xtensa_insnbuf slotbuf)
7636 {
7637 slotbuf[0] = 0xf130;
7638 }
7639
7640 static void
7641 Opcode_wsr_ccompare1_Slot_inst_encode (xtensa_insnbuf slotbuf)
7642 {
7643 slotbuf[0] = 0xf131;
7644 }
7645
7646 static void
7647 Opcode_xsr_ccompare1_Slot_inst_encode (xtensa_insnbuf slotbuf)
7648 {
7649 slotbuf[0] = 0xf116;
7650 }
7651
7652 static void
7653 Opcode_rsr_ccompare2_Slot_inst_encode (xtensa_insnbuf slotbuf)
7654 {
7655 slotbuf[0] = 0xf230;
7656 }
7657
7658 static void
7659 Opcode_wsr_ccompare2_Slot_inst_encode (xtensa_insnbuf slotbuf)
7660 {
7661 slotbuf[0] = 0xf231;
7662 }
7663
7664 static void
7665 Opcode_xsr_ccompare2_Slot_inst_encode (xtensa_insnbuf slotbuf)
7666 {
7667 slotbuf[0] = 0xf216;
7668 }
7669
7670 static void
7671 Opcode_ipf_Slot_inst_encode (xtensa_insnbuf slotbuf)
7672 {
7673 slotbuf[0] = 0x2c0700;
7674 }
7675
7676 static void
7677 Opcode_ihi_Slot_inst_encode (xtensa_insnbuf slotbuf)
7678 {
7679 slotbuf[0] = 0x2e0700;
7680 }
7681
7682 static void
7683 Opcode_ipfl_Slot_inst_encode (xtensa_insnbuf slotbuf)
7684 {
7685 slotbuf[0] = 0x2d0700;
7686 }
7687
7688 static void
7689 Opcode_ihu_Slot_inst_encode (xtensa_insnbuf slotbuf)
7690 {
7691 slotbuf[0] = 0x2d0720;
7692 }
7693
7694 static void
7695 Opcode_iiu_Slot_inst_encode (xtensa_insnbuf slotbuf)
7696 {
7697 slotbuf[0] = 0x2d0730;
7698 }
7699
7700 static void
7701 Opcode_iii_Slot_inst_encode (xtensa_insnbuf slotbuf)
7702 {
7703 slotbuf[0] = 0x2f0700;
7704 }
7705
7706 static void
7707 Opcode_lict_Slot_inst_encode (xtensa_insnbuf slotbuf)
7708 {
7709 slotbuf[0] = 0x1f;
7710 }
7711
7712 static void
7713 Opcode_licw_Slot_inst_encode (xtensa_insnbuf slotbuf)
7714 {
7715 slotbuf[0] = 0x21f;
7716 }
7717
7718 static void
7719 Opcode_sict_Slot_inst_encode (xtensa_insnbuf slotbuf)
7720 {
7721 slotbuf[0] = 0x11f;
7722 }
7723
7724 static void
7725 Opcode_sicw_Slot_inst_encode (xtensa_insnbuf slotbuf)
7726 {
7727 slotbuf[0] = 0x31f;
7728 }
7729
7730 static void
7731 Opcode_dhwb_Slot_inst_encode (xtensa_insnbuf slotbuf)
7732 {
7733 slotbuf[0] = 0x240700;
7734 }
7735
7736 static void
7737 Opcode_dhwbi_Slot_inst_encode (xtensa_insnbuf slotbuf)
7738 {
7739 slotbuf[0] = 0x250700;
7740 }
7741
7742 static void
7743 Opcode_diwb_Slot_inst_encode (xtensa_insnbuf slotbuf)
7744 {
7745 slotbuf[0] = 0x280740;
7746 }
7747
7748 static void
7749 Opcode_diwbi_Slot_inst_encode (xtensa_insnbuf slotbuf)
7750 {
7751 slotbuf[0] = 0x280750;
7752 }
7753
7754 static void
7755 Opcode_dhi_Slot_inst_encode (xtensa_insnbuf slotbuf)
7756 {
7757 slotbuf[0] = 0x260700;
7758 }
7759
7760 static void
7761 Opcode_dii_Slot_inst_encode (xtensa_insnbuf slotbuf)
7762 {
7763 slotbuf[0] = 0x270700;
7764 }
7765
7766 static void
7767 Opcode_dpfr_Slot_inst_encode (xtensa_insnbuf slotbuf)
7768 {
7769 slotbuf[0] = 0x200700;
7770 }
7771
7772 static void
7773 Opcode_dpfw_Slot_inst_encode (xtensa_insnbuf slotbuf)
7774 {
7775 slotbuf[0] = 0x210700;
7776 }
7777
7778 static void
7779 Opcode_dpfro_Slot_inst_encode (xtensa_insnbuf slotbuf)
7780 {
7781 slotbuf[0] = 0x220700;
7782 }
7783
7784 static void
7785 Opcode_dpfwo_Slot_inst_encode (xtensa_insnbuf slotbuf)
7786 {
7787 slotbuf[0] = 0x230700;
7788 }
7789
7790 static void
7791 Opcode_dpfl_Slot_inst_encode (xtensa_insnbuf slotbuf)
7792 {
7793 slotbuf[0] = 0x280700;
7794 }
7795
7796 static void
7797 Opcode_dhu_Slot_inst_encode (xtensa_insnbuf slotbuf)
7798 {
7799 slotbuf[0] = 0x280720;
7800 }
7801
7802 static void
7803 Opcode_diu_Slot_inst_encode (xtensa_insnbuf slotbuf)
7804 {
7805 slotbuf[0] = 0x280730;
7806 }
7807
7808 static void
7809 Opcode_sdct_Slot_inst_encode (xtensa_insnbuf slotbuf)
7810 {
7811 slotbuf[0] = 0x91f;
7812 }
7813
7814 static void
7815 Opcode_ldct_Slot_inst_encode (xtensa_insnbuf slotbuf)
7816 {
7817 slotbuf[0] = 0x81f;
7818 }
7819
7820 static void
7821 Opcode_wsr_ptevaddr_Slot_inst_encode (xtensa_insnbuf slotbuf)
7822 {
7823 slotbuf[0] = 0x5331;
7824 }
7825
7826 static void
7827 Opcode_rsr_ptevaddr_Slot_inst_encode (xtensa_insnbuf slotbuf)
7828 {
7829 slotbuf[0] = 0x5330;
7830 }
7831
7832 static void
7833 Opcode_xsr_ptevaddr_Slot_inst_encode (xtensa_insnbuf slotbuf)
7834 {
7835 slotbuf[0] = 0x5316;
7836 }
7837
7838 static void
7839 Opcode_rsr_rasid_Slot_inst_encode (xtensa_insnbuf slotbuf)
7840 {
7841 slotbuf[0] = 0x5a30;
7842 }
7843
7844 static void
7845 Opcode_wsr_rasid_Slot_inst_encode (xtensa_insnbuf slotbuf)
7846 {
7847 slotbuf[0] = 0x5a31;
7848 }
7849
7850 static void
7851 Opcode_xsr_rasid_Slot_inst_encode (xtensa_insnbuf slotbuf)
7852 {
7853 slotbuf[0] = 0x5a16;
7854 }
7855
7856 static void
7857 Opcode_rsr_itlbcfg_Slot_inst_encode (xtensa_insnbuf slotbuf)
7858 {
7859 slotbuf[0] = 0x5b30;
7860 }
7861
7862 static void
7863 Opcode_wsr_itlbcfg_Slot_inst_encode (xtensa_insnbuf slotbuf)
7864 {
7865 slotbuf[0] = 0x5b31;
7866 }
7867
7868 static void
7869 Opcode_xsr_itlbcfg_Slot_inst_encode (xtensa_insnbuf slotbuf)
7870 {
7871 slotbuf[0] = 0x5b16;
7872 }
7873
7874 static void
7875 Opcode_rsr_dtlbcfg_Slot_inst_encode (xtensa_insnbuf slotbuf)
7876 {
7877 slotbuf[0] = 0x5c30;
7878 }
7879
7880 static void
7881 Opcode_wsr_dtlbcfg_Slot_inst_encode (xtensa_insnbuf slotbuf)
7882 {
7883 slotbuf[0] = 0x5c31;
7884 }
7885
7886 static void
7887 Opcode_xsr_dtlbcfg_Slot_inst_encode (xtensa_insnbuf slotbuf)
7888 {
7889 slotbuf[0] = 0x5c16;
7890 }
7891
7892 static void
7893 Opcode_idtlb_Slot_inst_encode (xtensa_insnbuf slotbuf)
7894 {
7895 slotbuf[0] = 0xc05;
7896 }
7897
7898 static void
7899 Opcode_pdtlb_Slot_inst_encode (xtensa_insnbuf slotbuf)
7900 {
7901 slotbuf[0] = 0xd05;
7902 }
7903
7904 static void
7905 Opcode_rdtlb0_Slot_inst_encode (xtensa_insnbuf slotbuf)
7906 {
7907 slotbuf[0] = 0xb05;
7908 }
7909
7910 static void
7911 Opcode_rdtlb1_Slot_inst_encode (xtensa_insnbuf slotbuf)
7912 {
7913 slotbuf[0] = 0xf05;
7914 }
7915
7916 static void
7917 Opcode_wdtlb_Slot_inst_encode (xtensa_insnbuf slotbuf)
7918 {
7919 slotbuf[0] = 0xe05;
7920 }
7921
7922 static void
7923 Opcode_iitlb_Slot_inst_encode (xtensa_insnbuf slotbuf)
7924 {
7925 slotbuf[0] = 0x405;
7926 }
7927
7928 static void
7929 Opcode_pitlb_Slot_inst_encode (xtensa_insnbuf slotbuf)
7930 {
7931 slotbuf[0] = 0x505;
7932 }
7933
7934 static void
7935 Opcode_ritlb0_Slot_inst_encode (xtensa_insnbuf slotbuf)
7936 {
7937 slotbuf[0] = 0x305;
7938 }
7939
7940 static void
7941 Opcode_ritlb1_Slot_inst_encode (xtensa_insnbuf slotbuf)
7942 {
7943 slotbuf[0] = 0x705;
7944 }
7945
7946 static void
7947 Opcode_witlb_Slot_inst_encode (xtensa_insnbuf slotbuf)
7948 {
7949 slotbuf[0] = 0x605;
7950 }
7951
7952 static void
7953 Opcode_ldpte_Slot_inst_encode (xtensa_insnbuf slotbuf)
7954 {
7955 slotbuf[0] = 0xf1f;
7956 }
7957
7958 static void
7959 Opcode_hwwitlba_Slot_inst_encode (xtensa_insnbuf slotbuf)
7960 {
7961 slotbuf[0] = 0x105;
7962 }
7963
7964 static void
7965 Opcode_hwwdtlba_Slot_inst_encode (xtensa_insnbuf slotbuf)
7966 {
7967 slotbuf[0] = 0x905;
7968 }
7969
7970 static void
7971 Opcode_rsr_cpenable_Slot_inst_encode (xtensa_insnbuf slotbuf)
7972 {
7973 slotbuf[0] = 0xe030;
7974 }
7975
7976 static void
7977 Opcode_wsr_cpenable_Slot_inst_encode (xtensa_insnbuf slotbuf)
7978 {
7979 slotbuf[0] = 0xe031;
7980 }
7981
7982 static void
7983 Opcode_xsr_cpenable_Slot_inst_encode (xtensa_insnbuf slotbuf)
7984 {
7985 slotbuf[0] = 0xe016;
7986 }
7987
7988 static void
7989 Opcode_clamps_Slot_inst_encode (xtensa_insnbuf slotbuf)
7990 {
7991 slotbuf[0] = 0x33;
7992 }
7993
7994 static void
7995 Opcode_min_Slot_inst_encode (xtensa_insnbuf slotbuf)
7996 {
7997 slotbuf[0] = 0x34;
7998 }
7999
8000 static void
8001 Opcode_max_Slot_inst_encode (xtensa_insnbuf slotbuf)
8002 {
8003 slotbuf[0] = 0x35;
8004 }
8005
8006 static void
8007 Opcode_minu_Slot_inst_encode (xtensa_insnbuf slotbuf)
8008 {
8009 slotbuf[0] = 0x36;
8010 }
8011
8012 static void
8013 Opcode_maxu_Slot_inst_encode (xtensa_insnbuf slotbuf)
8014 {
8015 slotbuf[0] = 0x37;
8016 }
8017
8018 static void
8019 Opcode_nsa_Slot_inst_encode (xtensa_insnbuf slotbuf)
8020 {
8021 slotbuf[0] = 0xe04;
8022 }
8023
8024 static void
8025 Opcode_nsau_Slot_inst_encode (xtensa_insnbuf slotbuf)
8026 {
8027 slotbuf[0] = 0xf04;
8028 }
8029
8030 static void
8031 Opcode_sext_Slot_inst_encode (xtensa_insnbuf slotbuf)
8032 {
8033 slotbuf[0] = 0x32;
8034 }
8035
8036 static void
8037 Opcode_l32ai_Slot_inst_encode (xtensa_insnbuf slotbuf)
8038 {
8039 slotbuf[0] = 0x200b00;
8040 }
8041
8042 static void
8043 Opcode_s32ri_Slot_inst_encode (xtensa_insnbuf slotbuf)
8044 {
8045 slotbuf[0] = 0x200f00;
8046 }
8047
8048 static void
8049 Opcode_s32c1i_Slot_inst_encode (xtensa_insnbuf slotbuf)
8050 {
8051 slotbuf[0] = 0x200e00;
8052 }
8053
8054 static void
8055 Opcode_rsr_scompare1_Slot_inst_encode (xtensa_insnbuf slotbuf)
8056 {
8057 slotbuf[0] = 0xc30;
8058 }
8059
8060 static void
8061 Opcode_wsr_scompare1_Slot_inst_encode (xtensa_insnbuf slotbuf)
8062 {
8063 slotbuf[0] = 0xc31;
8064 }
8065
8066 static void
8067 Opcode_xsr_scompare1_Slot_inst_encode (xtensa_insnbuf slotbuf)
8068 {
8069 slotbuf[0] = 0xc16;
8070 }
8071
8072 static void
8073 Opcode_quou_Slot_inst_encode (xtensa_insnbuf slotbuf)
8074 {
8075 slotbuf[0] = 0x2c;
8076 }
8077
8078 static void
8079 Opcode_quos_Slot_inst_encode (xtensa_insnbuf slotbuf)
8080 {
8081 slotbuf[0] = 0x2d;
8082 }
8083
8084 static void
8085 Opcode_remu_Slot_inst_encode (xtensa_insnbuf slotbuf)
8086 {
8087 slotbuf[0] = 0x2e;
8088 }
8089
8090 static void
8091 Opcode_rems_Slot_inst_encode (xtensa_insnbuf slotbuf)
8092 {
8093 slotbuf[0] = 0x2f;
8094 }
8095
8096 static void
8097 Opcode_mull_Slot_inst_encode (xtensa_insnbuf slotbuf)
8098 {
8099 slotbuf[0] = 0x28;
8100 }
8101
8102 xtensa_opcode_encode_fn Opcode_excw_encode_fns[] = {
8103 Opcode_excw_Slot_inst_encode, 0, 0
8104 };
8105
8106 xtensa_opcode_encode_fn Opcode_rfe_encode_fns[] = {
8107 Opcode_rfe_Slot_inst_encode, 0, 0
8108 };
8109
8110 xtensa_opcode_encode_fn Opcode_rfde_encode_fns[] = {
8111 Opcode_rfde_Slot_inst_encode, 0, 0
8112 };
8113
8114 xtensa_opcode_encode_fn Opcode_syscall_encode_fns[] = {
8115 Opcode_syscall_Slot_inst_encode, 0, 0
8116 };
8117
8118 xtensa_opcode_encode_fn Opcode_simcall_encode_fns[] = {
8119 Opcode_simcall_Slot_inst_encode, 0, 0
8120 };
8121
8122 xtensa_opcode_encode_fn Opcode_call12_encode_fns[] = {
8123 Opcode_call12_Slot_inst_encode, 0, 0
8124 };
8125
8126 xtensa_opcode_encode_fn Opcode_call8_encode_fns[] = {
8127 Opcode_call8_Slot_inst_encode, 0, 0
8128 };
8129
8130 xtensa_opcode_encode_fn Opcode_call4_encode_fns[] = {
8131 Opcode_call4_Slot_inst_encode, 0, 0
8132 };
8133
8134 xtensa_opcode_encode_fn Opcode_callx12_encode_fns[] = {
8135 Opcode_callx12_Slot_inst_encode, 0, 0
8136 };
8137
8138 xtensa_opcode_encode_fn Opcode_callx8_encode_fns[] = {
8139 Opcode_callx8_Slot_inst_encode, 0, 0
8140 };
8141
8142 xtensa_opcode_encode_fn Opcode_callx4_encode_fns[] = {
8143 Opcode_callx4_Slot_inst_encode, 0, 0
8144 };
8145
8146 xtensa_opcode_encode_fn Opcode_entry_encode_fns[] = {
8147 Opcode_entry_Slot_inst_encode, 0, 0
8148 };
8149
8150 xtensa_opcode_encode_fn Opcode_movsp_encode_fns[] = {
8151 Opcode_movsp_Slot_inst_encode, 0, 0
8152 };
8153
8154 xtensa_opcode_encode_fn Opcode_rotw_encode_fns[] = {
8155 Opcode_rotw_Slot_inst_encode, 0, 0
8156 };
8157
8158 xtensa_opcode_encode_fn Opcode_retw_encode_fns[] = {
8159 Opcode_retw_Slot_inst_encode, 0, 0
8160 };
8161
8162 xtensa_opcode_encode_fn Opcode_retw_n_encode_fns[] = {
8163 0, 0, Opcode_retw_n_Slot_inst16b_encode
8164 };
8165
8166 xtensa_opcode_encode_fn Opcode_rfwo_encode_fns[] = {
8167 Opcode_rfwo_Slot_inst_encode, 0, 0
8168 };
8169
8170 xtensa_opcode_encode_fn Opcode_rfwu_encode_fns[] = {
8171 Opcode_rfwu_Slot_inst_encode, 0, 0
8172 };
8173
8174 xtensa_opcode_encode_fn Opcode_l32e_encode_fns[] = {
8175 Opcode_l32e_Slot_inst_encode, 0, 0
8176 };
8177
8178 xtensa_opcode_encode_fn Opcode_s32e_encode_fns[] = {
8179 Opcode_s32e_Slot_inst_encode, 0, 0
8180 };
8181
8182 xtensa_opcode_encode_fn Opcode_rsr_windowbase_encode_fns[] = {
8183 Opcode_rsr_windowbase_Slot_inst_encode, 0, 0
8184 };
8185
8186 xtensa_opcode_encode_fn Opcode_wsr_windowbase_encode_fns[] = {
8187 Opcode_wsr_windowbase_Slot_inst_encode, 0, 0
8188 };
8189
8190 xtensa_opcode_encode_fn Opcode_xsr_windowbase_encode_fns[] = {
8191 Opcode_xsr_windowbase_Slot_inst_encode, 0, 0
8192 };
8193
8194 xtensa_opcode_encode_fn Opcode_rsr_windowstart_encode_fns[] = {
8195 Opcode_rsr_windowstart_Slot_inst_encode, 0, 0
8196 };
8197
8198 xtensa_opcode_encode_fn Opcode_wsr_windowstart_encode_fns[] = {
8199 Opcode_wsr_windowstart_Slot_inst_encode, 0, 0
8200 };
8201
8202 xtensa_opcode_encode_fn Opcode_xsr_windowstart_encode_fns[] = {
8203 Opcode_xsr_windowstart_Slot_inst_encode, 0, 0
8204 };
8205
8206 xtensa_opcode_encode_fn Opcode_add_n_encode_fns[] = {
8207 0, Opcode_add_n_Slot_inst16a_encode, 0
8208 };
8209
8210 xtensa_opcode_encode_fn Opcode_addi_n_encode_fns[] = {
8211 0, Opcode_addi_n_Slot_inst16a_encode, 0
8212 };
8213
8214 xtensa_opcode_encode_fn Opcode_beqz_n_encode_fns[] = {
8215 0, 0, Opcode_beqz_n_Slot_inst16b_encode
8216 };
8217
8218 xtensa_opcode_encode_fn Opcode_bnez_n_encode_fns[] = {
8219 0, 0, Opcode_bnez_n_Slot_inst16b_encode
8220 };
8221
8222 xtensa_opcode_encode_fn Opcode_ill_n_encode_fns[] = {
8223 0, 0, Opcode_ill_n_Slot_inst16b_encode
8224 };
8225
8226 xtensa_opcode_encode_fn Opcode_l32i_n_encode_fns[] = {
8227 0, Opcode_l32i_n_Slot_inst16a_encode, 0
8228 };
8229
8230 xtensa_opcode_encode_fn Opcode_mov_n_encode_fns[] = {
8231 0, 0, Opcode_mov_n_Slot_inst16b_encode
8232 };
8233
8234 xtensa_opcode_encode_fn Opcode_movi_n_encode_fns[] = {
8235 0, 0, Opcode_movi_n_Slot_inst16b_encode
8236 };
8237
8238 xtensa_opcode_encode_fn Opcode_nop_n_encode_fns[] = {
8239 0, 0, Opcode_nop_n_Slot_inst16b_encode
8240 };
8241
8242 xtensa_opcode_encode_fn Opcode_ret_n_encode_fns[] = {
8243 0, 0, Opcode_ret_n_Slot_inst16b_encode
8244 };
8245
8246 xtensa_opcode_encode_fn Opcode_s32i_n_encode_fns[] = {
8247 0, Opcode_s32i_n_Slot_inst16a_encode, 0
8248 };
8249
8250 xtensa_opcode_encode_fn Opcode_rur_threadptr_encode_fns[] = {
8251 Opcode_rur_threadptr_Slot_inst_encode, 0, 0
8252 };
8253
8254 xtensa_opcode_encode_fn Opcode_wur_threadptr_encode_fns[] = {
8255 Opcode_wur_threadptr_Slot_inst_encode, 0, 0
8256 };
8257
8258 xtensa_opcode_encode_fn Opcode_addi_encode_fns[] = {
8259 Opcode_addi_Slot_inst_encode, 0, 0
8260 };
8261
8262 xtensa_opcode_encode_fn Opcode_addmi_encode_fns[] = {
8263 Opcode_addmi_Slot_inst_encode, 0, 0
8264 };
8265
8266 xtensa_opcode_encode_fn Opcode_add_encode_fns[] = {
8267 Opcode_add_Slot_inst_encode, 0, 0
8268 };
8269
8270 xtensa_opcode_encode_fn Opcode_sub_encode_fns[] = {
8271 Opcode_sub_Slot_inst_encode, 0, 0
8272 };
8273
8274 xtensa_opcode_encode_fn Opcode_addx2_encode_fns[] = {
8275 Opcode_addx2_Slot_inst_encode, 0, 0
8276 };
8277
8278 xtensa_opcode_encode_fn Opcode_addx4_encode_fns[] = {
8279 Opcode_addx4_Slot_inst_encode, 0, 0
8280 };
8281
8282 xtensa_opcode_encode_fn Opcode_addx8_encode_fns[] = {
8283 Opcode_addx8_Slot_inst_encode, 0, 0
8284 };
8285
8286 xtensa_opcode_encode_fn Opcode_subx2_encode_fns[] = {
8287 Opcode_subx2_Slot_inst_encode, 0, 0
8288 };
8289
8290 xtensa_opcode_encode_fn Opcode_subx4_encode_fns[] = {
8291 Opcode_subx4_Slot_inst_encode, 0, 0
8292 };
8293
8294 xtensa_opcode_encode_fn Opcode_subx8_encode_fns[] = {
8295 Opcode_subx8_Slot_inst_encode, 0, 0
8296 };
8297
8298 xtensa_opcode_encode_fn Opcode_and_encode_fns[] = {
8299 Opcode_and_Slot_inst_encode, 0, 0
8300 };
8301
8302 xtensa_opcode_encode_fn Opcode_or_encode_fns[] = {
8303 Opcode_or_Slot_inst_encode, 0, 0
8304 };
8305
8306 xtensa_opcode_encode_fn Opcode_xor_encode_fns[] = {
8307 Opcode_xor_Slot_inst_encode, 0, 0
8308 };
8309
8310 xtensa_opcode_encode_fn Opcode_beqi_encode_fns[] = {
8311 Opcode_beqi_Slot_inst_encode, 0, 0
8312 };
8313
8314 xtensa_opcode_encode_fn Opcode_bnei_encode_fns[] = {
8315 Opcode_bnei_Slot_inst_encode, 0, 0
8316 };
8317
8318 xtensa_opcode_encode_fn Opcode_bgei_encode_fns[] = {
8319 Opcode_bgei_Slot_inst_encode, 0, 0
8320 };
8321
8322 xtensa_opcode_encode_fn Opcode_blti_encode_fns[] = {
8323 Opcode_blti_Slot_inst_encode, 0, 0
8324 };
8325
8326 xtensa_opcode_encode_fn Opcode_bbci_encode_fns[] = {
8327 Opcode_bbci_Slot_inst_encode, 0, 0
8328 };
8329
8330 xtensa_opcode_encode_fn Opcode_bbsi_encode_fns[] = {
8331 Opcode_bbsi_Slot_inst_encode, 0, 0
8332 };
8333
8334 xtensa_opcode_encode_fn Opcode_bgeui_encode_fns[] = {
8335 Opcode_bgeui_Slot_inst_encode, 0, 0
8336 };
8337
8338 xtensa_opcode_encode_fn Opcode_bltui_encode_fns[] = {
8339 Opcode_bltui_Slot_inst_encode, 0, 0
8340 };
8341
8342 xtensa_opcode_encode_fn Opcode_beq_encode_fns[] = {
8343 Opcode_beq_Slot_inst_encode, 0, 0
8344 };
8345
8346 xtensa_opcode_encode_fn Opcode_bne_encode_fns[] = {
8347 Opcode_bne_Slot_inst_encode, 0, 0
8348 };
8349
8350 xtensa_opcode_encode_fn Opcode_bge_encode_fns[] = {
8351 Opcode_bge_Slot_inst_encode, 0, 0
8352 };
8353
8354 xtensa_opcode_encode_fn Opcode_blt_encode_fns[] = {
8355 Opcode_blt_Slot_inst_encode, 0, 0
8356 };
8357
8358 xtensa_opcode_encode_fn Opcode_bgeu_encode_fns[] = {
8359 Opcode_bgeu_Slot_inst_encode, 0, 0
8360 };
8361
8362 xtensa_opcode_encode_fn Opcode_bltu_encode_fns[] = {
8363 Opcode_bltu_Slot_inst_encode, 0, 0
8364 };
8365
8366 xtensa_opcode_encode_fn Opcode_bany_encode_fns[] = {
8367 Opcode_bany_Slot_inst_encode, 0, 0
8368 };
8369
8370 xtensa_opcode_encode_fn Opcode_bnone_encode_fns[] = {
8371 Opcode_bnone_Slot_inst_encode, 0, 0
8372 };
8373
8374 xtensa_opcode_encode_fn Opcode_ball_encode_fns[] = {
8375 Opcode_ball_Slot_inst_encode, 0, 0
8376 };
8377
8378 xtensa_opcode_encode_fn Opcode_bnall_encode_fns[] = {
8379 Opcode_bnall_Slot_inst_encode, 0, 0
8380 };
8381
8382 xtensa_opcode_encode_fn Opcode_bbc_encode_fns[] = {
8383 Opcode_bbc_Slot_inst_encode, 0, 0
8384 };
8385
8386 xtensa_opcode_encode_fn Opcode_bbs_encode_fns[] = {
8387 Opcode_bbs_Slot_inst_encode, 0, 0
8388 };
8389
8390 xtensa_opcode_encode_fn Opcode_beqz_encode_fns[] = {
8391 Opcode_beqz_Slot_inst_encode, 0, 0
8392 };
8393
8394 xtensa_opcode_encode_fn Opcode_bnez_encode_fns[] = {
8395 Opcode_bnez_Slot_inst_encode, 0, 0
8396 };
8397
8398 xtensa_opcode_encode_fn Opcode_bgez_encode_fns[] = {
8399 Opcode_bgez_Slot_inst_encode, 0, 0
8400 };
8401
8402 xtensa_opcode_encode_fn Opcode_bltz_encode_fns[] = {
8403 Opcode_bltz_Slot_inst_encode, 0, 0
8404 };
8405
8406 xtensa_opcode_encode_fn Opcode_call0_encode_fns[] = {
8407 Opcode_call0_Slot_inst_encode, 0, 0
8408 };
8409
8410 xtensa_opcode_encode_fn Opcode_callx0_encode_fns[] = {
8411 Opcode_callx0_Slot_inst_encode, 0, 0
8412 };
8413
8414 xtensa_opcode_encode_fn Opcode_extui_encode_fns[] = {
8415 Opcode_extui_Slot_inst_encode, 0, 0
8416 };
8417
8418 xtensa_opcode_encode_fn Opcode_ill_encode_fns[] = {
8419 Opcode_ill_Slot_inst_encode, 0, 0
8420 };
8421
8422 xtensa_opcode_encode_fn Opcode_j_encode_fns[] = {
8423 Opcode_j_Slot_inst_encode, 0, 0
8424 };
8425
8426 xtensa_opcode_encode_fn Opcode_jx_encode_fns[] = {
8427 Opcode_jx_Slot_inst_encode, 0, 0
8428 };
8429
8430 xtensa_opcode_encode_fn Opcode_l16ui_encode_fns[] = {
8431 Opcode_l16ui_Slot_inst_encode, 0, 0
8432 };
8433
8434 xtensa_opcode_encode_fn Opcode_l16si_encode_fns[] = {
8435 Opcode_l16si_Slot_inst_encode, 0, 0
8436 };
8437
8438 xtensa_opcode_encode_fn Opcode_l32i_encode_fns[] = {
8439 Opcode_l32i_Slot_inst_encode, 0, 0
8440 };
8441
8442 xtensa_opcode_encode_fn Opcode_l32r_encode_fns[] = {
8443 Opcode_l32r_Slot_inst_encode, 0, 0
8444 };
8445
8446 xtensa_opcode_encode_fn Opcode_l8ui_encode_fns[] = {
8447 Opcode_l8ui_Slot_inst_encode, 0, 0
8448 };
8449
8450 xtensa_opcode_encode_fn Opcode_loop_encode_fns[] = {
8451 Opcode_loop_Slot_inst_encode, 0, 0
8452 };
8453
8454 xtensa_opcode_encode_fn Opcode_loopnez_encode_fns[] = {
8455 Opcode_loopnez_Slot_inst_encode, 0, 0
8456 };
8457
8458 xtensa_opcode_encode_fn Opcode_loopgtz_encode_fns[] = {
8459 Opcode_loopgtz_Slot_inst_encode, 0, 0
8460 };
8461
8462 xtensa_opcode_encode_fn Opcode_movi_encode_fns[] = {
8463 Opcode_movi_Slot_inst_encode, 0, 0
8464 };
8465
8466 xtensa_opcode_encode_fn Opcode_moveqz_encode_fns[] = {
8467 Opcode_moveqz_Slot_inst_encode, 0, 0
8468 };
8469
8470 xtensa_opcode_encode_fn Opcode_movnez_encode_fns[] = {
8471 Opcode_movnez_Slot_inst_encode, 0, 0
8472 };
8473
8474 xtensa_opcode_encode_fn Opcode_movltz_encode_fns[] = {
8475 Opcode_movltz_Slot_inst_encode, 0, 0
8476 };
8477
8478 xtensa_opcode_encode_fn Opcode_movgez_encode_fns[] = {
8479 Opcode_movgez_Slot_inst_encode, 0, 0
8480 };
8481
8482 xtensa_opcode_encode_fn Opcode_neg_encode_fns[] = {
8483 Opcode_neg_Slot_inst_encode, 0, 0
8484 };
8485
8486 xtensa_opcode_encode_fn Opcode_abs_encode_fns[] = {
8487 Opcode_abs_Slot_inst_encode, 0, 0
8488 };
8489
8490 xtensa_opcode_encode_fn Opcode_nop_encode_fns[] = {
8491 Opcode_nop_Slot_inst_encode, 0, 0
8492 };
8493
8494 xtensa_opcode_encode_fn Opcode_ret_encode_fns[] = {
8495 Opcode_ret_Slot_inst_encode, 0, 0
8496 };
8497
8498 xtensa_opcode_encode_fn Opcode_s16i_encode_fns[] = {
8499 Opcode_s16i_Slot_inst_encode, 0, 0
8500 };
8501
8502 xtensa_opcode_encode_fn Opcode_s32i_encode_fns[] = {
8503 Opcode_s32i_Slot_inst_encode, 0, 0
8504 };
8505
8506 xtensa_opcode_encode_fn Opcode_s8i_encode_fns[] = {
8507 Opcode_s8i_Slot_inst_encode, 0, 0
8508 };
8509
8510 xtensa_opcode_encode_fn Opcode_ssr_encode_fns[] = {
8511 Opcode_ssr_Slot_inst_encode, 0, 0
8512 };
8513
8514 xtensa_opcode_encode_fn Opcode_ssl_encode_fns[] = {
8515 Opcode_ssl_Slot_inst_encode, 0, 0
8516 };
8517
8518 xtensa_opcode_encode_fn Opcode_ssa8l_encode_fns[] = {
8519 Opcode_ssa8l_Slot_inst_encode, 0, 0
8520 };
8521
8522 xtensa_opcode_encode_fn Opcode_ssa8b_encode_fns[] = {
8523 Opcode_ssa8b_Slot_inst_encode, 0, 0
8524 };
8525
8526 xtensa_opcode_encode_fn Opcode_ssai_encode_fns[] = {
8527 Opcode_ssai_Slot_inst_encode, 0, 0
8528 };
8529
8530 xtensa_opcode_encode_fn Opcode_sll_encode_fns[] = {
8531 Opcode_sll_Slot_inst_encode, 0, 0
8532 };
8533
8534 xtensa_opcode_encode_fn Opcode_src_encode_fns[] = {
8535 Opcode_src_Slot_inst_encode, 0, 0
8536 };
8537
8538 xtensa_opcode_encode_fn Opcode_srl_encode_fns[] = {
8539 Opcode_srl_Slot_inst_encode, 0, 0
8540 };
8541
8542 xtensa_opcode_encode_fn Opcode_sra_encode_fns[] = {
8543 Opcode_sra_Slot_inst_encode, 0, 0
8544 };
8545
8546 xtensa_opcode_encode_fn Opcode_slli_encode_fns[] = {
8547 Opcode_slli_Slot_inst_encode, 0, 0
8548 };
8549
8550 xtensa_opcode_encode_fn Opcode_srai_encode_fns[] = {
8551 Opcode_srai_Slot_inst_encode, 0, 0
8552 };
8553
8554 xtensa_opcode_encode_fn Opcode_srli_encode_fns[] = {
8555 Opcode_srli_Slot_inst_encode, 0, 0
8556 };
8557
8558 xtensa_opcode_encode_fn Opcode_memw_encode_fns[] = {
8559 Opcode_memw_Slot_inst_encode, 0, 0
8560 };
8561
8562 xtensa_opcode_encode_fn Opcode_extw_encode_fns[] = {
8563 Opcode_extw_Slot_inst_encode, 0, 0
8564 };
8565
8566 xtensa_opcode_encode_fn Opcode_isync_encode_fns[] = {
8567 Opcode_isync_Slot_inst_encode, 0, 0
8568 };
8569
8570 xtensa_opcode_encode_fn Opcode_rsync_encode_fns[] = {
8571 Opcode_rsync_Slot_inst_encode, 0, 0
8572 };
8573
8574 xtensa_opcode_encode_fn Opcode_esync_encode_fns[] = {
8575 Opcode_esync_Slot_inst_encode, 0, 0
8576 };
8577
8578 xtensa_opcode_encode_fn Opcode_dsync_encode_fns[] = {
8579 Opcode_dsync_Slot_inst_encode, 0, 0
8580 };
8581
8582 xtensa_opcode_encode_fn Opcode_rsil_encode_fns[] = {
8583 Opcode_rsil_Slot_inst_encode, 0, 0
8584 };
8585
8586 xtensa_opcode_encode_fn Opcode_rsr_lend_encode_fns[] = {
8587 Opcode_rsr_lend_Slot_inst_encode, 0, 0
8588 };
8589
8590 xtensa_opcode_encode_fn Opcode_wsr_lend_encode_fns[] = {
8591 Opcode_wsr_lend_Slot_inst_encode, 0, 0
8592 };
8593
8594 xtensa_opcode_encode_fn Opcode_xsr_lend_encode_fns[] = {
8595 Opcode_xsr_lend_Slot_inst_encode, 0, 0
8596 };
8597
8598 xtensa_opcode_encode_fn Opcode_rsr_lcount_encode_fns[] = {
8599 Opcode_rsr_lcount_Slot_inst_encode, 0, 0
8600 };
8601
8602 xtensa_opcode_encode_fn Opcode_wsr_lcount_encode_fns[] = {
8603 Opcode_wsr_lcount_Slot_inst_encode, 0, 0
8604 };
8605
8606 xtensa_opcode_encode_fn Opcode_xsr_lcount_encode_fns[] = {
8607 Opcode_xsr_lcount_Slot_inst_encode, 0, 0
8608 };
8609
8610 xtensa_opcode_encode_fn Opcode_rsr_lbeg_encode_fns[] = {
8611 Opcode_rsr_lbeg_Slot_inst_encode, 0, 0
8612 };
8613
8614 xtensa_opcode_encode_fn Opcode_wsr_lbeg_encode_fns[] = {
8615 Opcode_wsr_lbeg_Slot_inst_encode, 0, 0
8616 };
8617
8618 xtensa_opcode_encode_fn Opcode_xsr_lbeg_encode_fns[] = {
8619 Opcode_xsr_lbeg_Slot_inst_encode, 0, 0
8620 };
8621
8622 xtensa_opcode_encode_fn Opcode_rsr_sar_encode_fns[] = {
8623 Opcode_rsr_sar_Slot_inst_encode, 0, 0
8624 };
8625
8626 xtensa_opcode_encode_fn Opcode_wsr_sar_encode_fns[] = {
8627 Opcode_wsr_sar_Slot_inst_encode, 0, 0
8628 };
8629
8630 xtensa_opcode_encode_fn Opcode_xsr_sar_encode_fns[] = {
8631 Opcode_xsr_sar_Slot_inst_encode, 0, 0
8632 };
8633
8634 xtensa_opcode_encode_fn Opcode_rsr_litbase_encode_fns[] = {
8635 Opcode_rsr_litbase_Slot_inst_encode, 0, 0
8636 };
8637
8638 xtensa_opcode_encode_fn Opcode_wsr_litbase_encode_fns[] = {
8639 Opcode_wsr_litbase_Slot_inst_encode, 0, 0
8640 };
8641
8642 xtensa_opcode_encode_fn Opcode_xsr_litbase_encode_fns[] = {
8643 Opcode_xsr_litbase_Slot_inst_encode, 0, 0
8644 };
8645
8646 xtensa_opcode_encode_fn Opcode_rsr_176_encode_fns[] = {
8647 Opcode_rsr_176_Slot_inst_encode, 0, 0
8648 };
8649
8650 xtensa_opcode_encode_fn Opcode_wsr_176_encode_fns[] = {
8651 Opcode_wsr_176_Slot_inst_encode, 0, 0
8652 };
8653
8654 xtensa_opcode_encode_fn Opcode_rsr_208_encode_fns[] = {
8655 Opcode_rsr_208_Slot_inst_encode, 0, 0
8656 };
8657
8658 xtensa_opcode_encode_fn Opcode_rsr_ps_encode_fns[] = {
8659 Opcode_rsr_ps_Slot_inst_encode, 0, 0
8660 };
8661
8662 xtensa_opcode_encode_fn Opcode_wsr_ps_encode_fns[] = {
8663 Opcode_wsr_ps_Slot_inst_encode, 0, 0
8664 };
8665
8666 xtensa_opcode_encode_fn Opcode_xsr_ps_encode_fns[] = {
8667 Opcode_xsr_ps_Slot_inst_encode, 0, 0
8668 };
8669
8670 xtensa_opcode_encode_fn Opcode_rsr_epc1_encode_fns[] = {
8671 Opcode_rsr_epc1_Slot_inst_encode, 0, 0
8672 };
8673
8674 xtensa_opcode_encode_fn Opcode_wsr_epc1_encode_fns[] = {
8675 Opcode_wsr_epc1_Slot_inst_encode, 0, 0
8676 };
8677
8678 xtensa_opcode_encode_fn Opcode_xsr_epc1_encode_fns[] = {
8679 Opcode_xsr_epc1_Slot_inst_encode, 0, 0
8680 };
8681
8682 xtensa_opcode_encode_fn Opcode_rsr_excsave1_encode_fns[] = {
8683 Opcode_rsr_excsave1_Slot_inst_encode, 0, 0
8684 };
8685
8686 xtensa_opcode_encode_fn Opcode_wsr_excsave1_encode_fns[] = {
8687 Opcode_wsr_excsave1_Slot_inst_encode, 0, 0
8688 };
8689
8690 xtensa_opcode_encode_fn Opcode_xsr_excsave1_encode_fns[] = {
8691 Opcode_xsr_excsave1_Slot_inst_encode, 0, 0
8692 };
8693
8694 xtensa_opcode_encode_fn Opcode_rsr_epc2_encode_fns[] = {
8695 Opcode_rsr_epc2_Slot_inst_encode, 0, 0
8696 };
8697
8698 xtensa_opcode_encode_fn Opcode_wsr_epc2_encode_fns[] = {
8699 Opcode_wsr_epc2_Slot_inst_encode, 0, 0
8700 };
8701
8702 xtensa_opcode_encode_fn Opcode_xsr_epc2_encode_fns[] = {
8703 Opcode_xsr_epc2_Slot_inst_encode, 0, 0
8704 };
8705
8706 xtensa_opcode_encode_fn Opcode_rsr_excsave2_encode_fns[] = {
8707 Opcode_rsr_excsave2_Slot_inst_encode, 0, 0
8708 };
8709
8710 xtensa_opcode_encode_fn Opcode_wsr_excsave2_encode_fns[] = {
8711 Opcode_wsr_excsave2_Slot_inst_encode, 0, 0
8712 };
8713
8714 xtensa_opcode_encode_fn Opcode_xsr_excsave2_encode_fns[] = {
8715 Opcode_xsr_excsave2_Slot_inst_encode, 0, 0
8716 };
8717
8718 xtensa_opcode_encode_fn Opcode_rsr_epc3_encode_fns[] = {
8719 Opcode_rsr_epc3_Slot_inst_encode, 0, 0
8720 };
8721
8722 xtensa_opcode_encode_fn Opcode_wsr_epc3_encode_fns[] = {
8723 Opcode_wsr_epc3_Slot_inst_encode, 0, 0
8724 };
8725
8726 xtensa_opcode_encode_fn Opcode_xsr_epc3_encode_fns[] = {
8727 Opcode_xsr_epc3_Slot_inst_encode, 0, 0
8728 };
8729
8730 xtensa_opcode_encode_fn Opcode_rsr_excsave3_encode_fns[] = {
8731 Opcode_rsr_excsave3_Slot_inst_encode, 0, 0
8732 };
8733
8734 xtensa_opcode_encode_fn Opcode_wsr_excsave3_encode_fns[] = {
8735 Opcode_wsr_excsave3_Slot_inst_encode, 0, 0
8736 };
8737
8738 xtensa_opcode_encode_fn Opcode_xsr_excsave3_encode_fns[] = {
8739 Opcode_xsr_excsave3_Slot_inst_encode, 0, 0
8740 };
8741
8742 xtensa_opcode_encode_fn Opcode_rsr_epc4_encode_fns[] = {
8743 Opcode_rsr_epc4_Slot_inst_encode, 0, 0
8744 };
8745
8746 xtensa_opcode_encode_fn Opcode_wsr_epc4_encode_fns[] = {
8747 Opcode_wsr_epc4_Slot_inst_encode, 0, 0
8748 };
8749
8750 xtensa_opcode_encode_fn Opcode_xsr_epc4_encode_fns[] = {
8751 Opcode_xsr_epc4_Slot_inst_encode, 0, 0
8752 };
8753
8754 xtensa_opcode_encode_fn Opcode_rsr_excsave4_encode_fns[] = {
8755 Opcode_rsr_excsave4_Slot_inst_encode, 0, 0
8756 };
8757
8758 xtensa_opcode_encode_fn Opcode_wsr_excsave4_encode_fns[] = {
8759 Opcode_wsr_excsave4_Slot_inst_encode, 0, 0
8760 };
8761
8762 xtensa_opcode_encode_fn Opcode_xsr_excsave4_encode_fns[] = {
8763 Opcode_xsr_excsave4_Slot_inst_encode, 0, 0
8764 };
8765
8766 xtensa_opcode_encode_fn Opcode_rsr_epc5_encode_fns[] = {
8767 Opcode_rsr_epc5_Slot_inst_encode, 0, 0
8768 };
8769
8770 xtensa_opcode_encode_fn Opcode_wsr_epc5_encode_fns[] = {
8771 Opcode_wsr_epc5_Slot_inst_encode, 0, 0
8772 };
8773
8774 xtensa_opcode_encode_fn Opcode_xsr_epc5_encode_fns[] = {
8775 Opcode_xsr_epc5_Slot_inst_encode, 0, 0
8776 };
8777
8778 xtensa_opcode_encode_fn Opcode_rsr_excsave5_encode_fns[] = {
8779 Opcode_rsr_excsave5_Slot_inst_encode, 0, 0
8780 };
8781
8782 xtensa_opcode_encode_fn Opcode_wsr_excsave5_encode_fns[] = {
8783 Opcode_wsr_excsave5_Slot_inst_encode, 0, 0
8784 };
8785
8786 xtensa_opcode_encode_fn Opcode_xsr_excsave5_encode_fns[] = {
8787 Opcode_xsr_excsave5_Slot_inst_encode, 0, 0
8788 };
8789
8790 xtensa_opcode_encode_fn Opcode_rsr_epc6_encode_fns[] = {
8791 Opcode_rsr_epc6_Slot_inst_encode, 0, 0
8792 };
8793
8794 xtensa_opcode_encode_fn Opcode_wsr_epc6_encode_fns[] = {
8795 Opcode_wsr_epc6_Slot_inst_encode, 0, 0
8796 };
8797
8798 xtensa_opcode_encode_fn Opcode_xsr_epc6_encode_fns[] = {
8799 Opcode_xsr_epc6_Slot_inst_encode, 0, 0
8800 };
8801
8802 xtensa_opcode_encode_fn Opcode_rsr_excsave6_encode_fns[] = {
8803 Opcode_rsr_excsave6_Slot_inst_encode, 0, 0
8804 };
8805
8806 xtensa_opcode_encode_fn Opcode_wsr_excsave6_encode_fns[] = {
8807 Opcode_wsr_excsave6_Slot_inst_encode, 0, 0
8808 };
8809
8810 xtensa_opcode_encode_fn Opcode_xsr_excsave6_encode_fns[] = {
8811 Opcode_xsr_excsave6_Slot_inst_encode, 0, 0
8812 };
8813
8814 xtensa_opcode_encode_fn Opcode_rsr_epc7_encode_fns[] = {
8815 Opcode_rsr_epc7_Slot_inst_encode, 0, 0
8816 };
8817
8818 xtensa_opcode_encode_fn Opcode_wsr_epc7_encode_fns[] = {
8819 Opcode_wsr_epc7_Slot_inst_encode, 0, 0
8820 };
8821
8822 xtensa_opcode_encode_fn Opcode_xsr_epc7_encode_fns[] = {
8823 Opcode_xsr_epc7_Slot_inst_encode, 0, 0
8824 };
8825
8826 xtensa_opcode_encode_fn Opcode_rsr_excsave7_encode_fns[] = {
8827 Opcode_rsr_excsave7_Slot_inst_encode, 0, 0
8828 };
8829
8830 xtensa_opcode_encode_fn Opcode_wsr_excsave7_encode_fns[] = {
8831 Opcode_wsr_excsave7_Slot_inst_encode, 0, 0
8832 };
8833
8834 xtensa_opcode_encode_fn Opcode_xsr_excsave7_encode_fns[] = {
8835 Opcode_xsr_excsave7_Slot_inst_encode, 0, 0
8836 };
8837
8838 xtensa_opcode_encode_fn Opcode_rsr_eps2_encode_fns[] = {
8839 Opcode_rsr_eps2_Slot_inst_encode, 0, 0
8840 };
8841
8842 xtensa_opcode_encode_fn Opcode_wsr_eps2_encode_fns[] = {
8843 Opcode_wsr_eps2_Slot_inst_encode, 0, 0
8844 };
8845
8846 xtensa_opcode_encode_fn Opcode_xsr_eps2_encode_fns[] = {
8847 Opcode_xsr_eps2_Slot_inst_encode, 0, 0
8848 };
8849
8850 xtensa_opcode_encode_fn Opcode_rsr_eps3_encode_fns[] = {
8851 Opcode_rsr_eps3_Slot_inst_encode, 0, 0
8852 };
8853
8854 xtensa_opcode_encode_fn Opcode_wsr_eps3_encode_fns[] = {
8855 Opcode_wsr_eps3_Slot_inst_encode, 0, 0
8856 };
8857
8858 xtensa_opcode_encode_fn Opcode_xsr_eps3_encode_fns[] = {
8859 Opcode_xsr_eps3_Slot_inst_encode, 0, 0
8860 };
8861
8862 xtensa_opcode_encode_fn Opcode_rsr_eps4_encode_fns[] = {
8863 Opcode_rsr_eps4_Slot_inst_encode, 0, 0
8864 };
8865
8866 xtensa_opcode_encode_fn Opcode_wsr_eps4_encode_fns[] = {
8867 Opcode_wsr_eps4_Slot_inst_encode, 0, 0
8868 };
8869
8870 xtensa_opcode_encode_fn Opcode_xsr_eps4_encode_fns[] = {
8871 Opcode_xsr_eps4_Slot_inst_encode, 0, 0
8872 };
8873
8874 xtensa_opcode_encode_fn Opcode_rsr_eps5_encode_fns[] = {
8875 Opcode_rsr_eps5_Slot_inst_encode, 0, 0
8876 };
8877
8878 xtensa_opcode_encode_fn Opcode_wsr_eps5_encode_fns[] = {
8879 Opcode_wsr_eps5_Slot_inst_encode, 0, 0
8880 };
8881
8882 xtensa_opcode_encode_fn Opcode_xsr_eps5_encode_fns[] = {
8883 Opcode_xsr_eps5_Slot_inst_encode, 0, 0
8884 };
8885
8886 xtensa_opcode_encode_fn Opcode_rsr_eps6_encode_fns[] = {
8887 Opcode_rsr_eps6_Slot_inst_encode, 0, 0
8888 };
8889
8890 xtensa_opcode_encode_fn Opcode_wsr_eps6_encode_fns[] = {
8891 Opcode_wsr_eps6_Slot_inst_encode, 0, 0
8892 };
8893
8894 xtensa_opcode_encode_fn Opcode_xsr_eps6_encode_fns[] = {
8895 Opcode_xsr_eps6_Slot_inst_encode, 0, 0
8896 };
8897
8898 xtensa_opcode_encode_fn Opcode_rsr_eps7_encode_fns[] = {
8899 Opcode_rsr_eps7_Slot_inst_encode, 0, 0
8900 };
8901
8902 xtensa_opcode_encode_fn Opcode_wsr_eps7_encode_fns[] = {
8903 Opcode_wsr_eps7_Slot_inst_encode, 0, 0
8904 };
8905
8906 xtensa_opcode_encode_fn Opcode_xsr_eps7_encode_fns[] = {
8907 Opcode_xsr_eps7_Slot_inst_encode, 0, 0
8908 };
8909
8910 xtensa_opcode_encode_fn Opcode_rsr_excvaddr_encode_fns[] = {
8911 Opcode_rsr_excvaddr_Slot_inst_encode, 0, 0
8912 };
8913
8914 xtensa_opcode_encode_fn Opcode_wsr_excvaddr_encode_fns[] = {
8915 Opcode_wsr_excvaddr_Slot_inst_encode, 0, 0
8916 };
8917
8918 xtensa_opcode_encode_fn Opcode_xsr_excvaddr_encode_fns[] = {
8919 Opcode_xsr_excvaddr_Slot_inst_encode, 0, 0
8920 };
8921
8922 xtensa_opcode_encode_fn Opcode_rsr_depc_encode_fns[] = {
8923 Opcode_rsr_depc_Slot_inst_encode, 0, 0
8924 };
8925
8926 xtensa_opcode_encode_fn Opcode_wsr_depc_encode_fns[] = {
8927 Opcode_wsr_depc_Slot_inst_encode, 0, 0
8928 };
8929
8930 xtensa_opcode_encode_fn Opcode_xsr_depc_encode_fns[] = {
8931 Opcode_xsr_depc_Slot_inst_encode, 0, 0
8932 };
8933
8934 xtensa_opcode_encode_fn Opcode_rsr_exccause_encode_fns[] = {
8935 Opcode_rsr_exccause_Slot_inst_encode, 0, 0
8936 };
8937
8938 xtensa_opcode_encode_fn Opcode_wsr_exccause_encode_fns[] = {
8939 Opcode_wsr_exccause_Slot_inst_encode, 0, 0
8940 };
8941
8942 xtensa_opcode_encode_fn Opcode_xsr_exccause_encode_fns[] = {
8943 Opcode_xsr_exccause_Slot_inst_encode, 0, 0
8944 };
8945
8946 xtensa_opcode_encode_fn Opcode_rsr_misc0_encode_fns[] = {
8947 Opcode_rsr_misc0_Slot_inst_encode, 0, 0
8948 };
8949
8950 xtensa_opcode_encode_fn Opcode_wsr_misc0_encode_fns[] = {
8951 Opcode_wsr_misc0_Slot_inst_encode, 0, 0
8952 };
8953
8954 xtensa_opcode_encode_fn Opcode_xsr_misc0_encode_fns[] = {
8955 Opcode_xsr_misc0_Slot_inst_encode, 0, 0
8956 };
8957
8958 xtensa_opcode_encode_fn Opcode_rsr_misc1_encode_fns[] = {
8959 Opcode_rsr_misc1_Slot_inst_encode, 0, 0
8960 };
8961
8962 xtensa_opcode_encode_fn Opcode_wsr_misc1_encode_fns[] = {
8963 Opcode_wsr_misc1_Slot_inst_encode, 0, 0
8964 };
8965
8966 xtensa_opcode_encode_fn Opcode_xsr_misc1_encode_fns[] = {
8967 Opcode_xsr_misc1_Slot_inst_encode, 0, 0
8968 };
8969
8970 xtensa_opcode_encode_fn Opcode_rsr_prid_encode_fns[] = {
8971 Opcode_rsr_prid_Slot_inst_encode, 0, 0
8972 };
8973
8974 xtensa_opcode_encode_fn Opcode_rsr_vecbase_encode_fns[] = {
8975 Opcode_rsr_vecbase_Slot_inst_encode, 0, 0
8976 };
8977
8978 xtensa_opcode_encode_fn Opcode_wsr_vecbase_encode_fns[] = {
8979 Opcode_wsr_vecbase_Slot_inst_encode, 0, 0
8980 };
8981
8982 xtensa_opcode_encode_fn Opcode_xsr_vecbase_encode_fns[] = {
8983 Opcode_xsr_vecbase_Slot_inst_encode, 0, 0
8984 };
8985
8986 xtensa_opcode_encode_fn Opcode_mul16u_encode_fns[] = {
8987 Opcode_mul16u_Slot_inst_encode, 0, 0
8988 };
8989
8990 xtensa_opcode_encode_fn Opcode_mul16s_encode_fns[] = {
8991 Opcode_mul16s_Slot_inst_encode, 0, 0
8992 };
8993
8994 xtensa_opcode_encode_fn Opcode_rfi_encode_fns[] = {
8995 Opcode_rfi_Slot_inst_encode, 0, 0
8996 };
8997
8998 xtensa_opcode_encode_fn Opcode_waiti_encode_fns[] = {
8999 Opcode_waiti_Slot_inst_encode, 0, 0
9000 };
9001
9002 xtensa_opcode_encode_fn Opcode_rsr_interrupt_encode_fns[] = {
9003 Opcode_rsr_interrupt_Slot_inst_encode, 0, 0
9004 };
9005
9006 xtensa_opcode_encode_fn Opcode_wsr_intset_encode_fns[] = {
9007 Opcode_wsr_intset_Slot_inst_encode, 0, 0
9008 };
9009
9010 xtensa_opcode_encode_fn Opcode_wsr_intclear_encode_fns[] = {
9011 Opcode_wsr_intclear_Slot_inst_encode, 0, 0
9012 };
9013
9014 xtensa_opcode_encode_fn Opcode_rsr_intenable_encode_fns[] = {
9015 Opcode_rsr_intenable_Slot_inst_encode, 0, 0
9016 };
9017
9018 xtensa_opcode_encode_fn Opcode_wsr_intenable_encode_fns[] = {
9019 Opcode_wsr_intenable_Slot_inst_encode, 0, 0
9020 };
9021
9022 xtensa_opcode_encode_fn Opcode_xsr_intenable_encode_fns[] = {
9023 Opcode_xsr_intenable_Slot_inst_encode, 0, 0
9024 };
9025
9026 xtensa_opcode_encode_fn Opcode_break_encode_fns[] = {
9027 Opcode_break_Slot_inst_encode, 0, 0
9028 };
9029
9030 xtensa_opcode_encode_fn Opcode_break_n_encode_fns[] = {
9031 0, 0, Opcode_break_n_Slot_inst16b_encode
9032 };
9033
9034 xtensa_opcode_encode_fn Opcode_rsr_dbreaka0_encode_fns[] = {
9035 Opcode_rsr_dbreaka0_Slot_inst_encode, 0, 0
9036 };
9037
9038 xtensa_opcode_encode_fn Opcode_wsr_dbreaka0_encode_fns[] = {
9039 Opcode_wsr_dbreaka0_Slot_inst_encode, 0, 0
9040 };
9041
9042 xtensa_opcode_encode_fn Opcode_xsr_dbreaka0_encode_fns[] = {
9043 Opcode_xsr_dbreaka0_Slot_inst_encode, 0, 0
9044 };
9045
9046 xtensa_opcode_encode_fn Opcode_rsr_dbreakc0_encode_fns[] = {
9047 Opcode_rsr_dbreakc0_Slot_inst_encode, 0, 0
9048 };
9049
9050 xtensa_opcode_encode_fn Opcode_wsr_dbreakc0_encode_fns[] = {
9051 Opcode_wsr_dbreakc0_Slot_inst_encode, 0, 0
9052 };
9053
9054 xtensa_opcode_encode_fn Opcode_xsr_dbreakc0_encode_fns[] = {
9055 Opcode_xsr_dbreakc0_Slot_inst_encode, 0, 0
9056 };
9057
9058 xtensa_opcode_encode_fn Opcode_rsr_dbreaka1_encode_fns[] = {
9059 Opcode_rsr_dbreaka1_Slot_inst_encode, 0, 0
9060 };
9061
9062 xtensa_opcode_encode_fn Opcode_wsr_dbreaka1_encode_fns[] = {
9063 Opcode_wsr_dbreaka1_Slot_inst_encode, 0, 0
9064 };
9065
9066 xtensa_opcode_encode_fn Opcode_xsr_dbreaka1_encode_fns[] = {
9067 Opcode_xsr_dbreaka1_Slot_inst_encode, 0, 0
9068 };
9069
9070 xtensa_opcode_encode_fn Opcode_rsr_dbreakc1_encode_fns[] = {
9071 Opcode_rsr_dbreakc1_Slot_inst_encode, 0, 0
9072 };
9073
9074 xtensa_opcode_encode_fn Opcode_wsr_dbreakc1_encode_fns[] = {
9075 Opcode_wsr_dbreakc1_Slot_inst_encode, 0, 0
9076 };
9077
9078 xtensa_opcode_encode_fn Opcode_xsr_dbreakc1_encode_fns[] = {
9079 Opcode_xsr_dbreakc1_Slot_inst_encode, 0, 0
9080 };
9081
9082 xtensa_opcode_encode_fn Opcode_rsr_ibreaka0_encode_fns[] = {
9083 Opcode_rsr_ibreaka0_Slot_inst_encode, 0, 0
9084 };
9085
9086 xtensa_opcode_encode_fn Opcode_wsr_ibreaka0_encode_fns[] = {
9087 Opcode_wsr_ibreaka0_Slot_inst_encode, 0, 0
9088 };
9089
9090 xtensa_opcode_encode_fn Opcode_xsr_ibreaka0_encode_fns[] = {
9091 Opcode_xsr_ibreaka0_Slot_inst_encode, 0, 0
9092 };
9093
9094 xtensa_opcode_encode_fn Opcode_rsr_ibreaka1_encode_fns[] = {
9095 Opcode_rsr_ibreaka1_Slot_inst_encode, 0, 0
9096 };
9097
9098 xtensa_opcode_encode_fn Opcode_wsr_ibreaka1_encode_fns[] = {
9099 Opcode_wsr_ibreaka1_Slot_inst_encode, 0, 0
9100 };
9101
9102 xtensa_opcode_encode_fn Opcode_xsr_ibreaka1_encode_fns[] = {
9103 Opcode_xsr_ibreaka1_Slot_inst_encode, 0, 0
9104 };
9105
9106 xtensa_opcode_encode_fn Opcode_rsr_ibreakenable_encode_fns[] = {
9107 Opcode_rsr_ibreakenable_Slot_inst_encode, 0, 0
9108 };
9109
9110 xtensa_opcode_encode_fn Opcode_wsr_ibreakenable_encode_fns[] = {
9111 Opcode_wsr_ibreakenable_Slot_inst_encode, 0, 0
9112 };
9113
9114 xtensa_opcode_encode_fn Opcode_xsr_ibreakenable_encode_fns[] = {
9115 Opcode_xsr_ibreakenable_Slot_inst_encode, 0, 0
9116 };
9117
9118 xtensa_opcode_encode_fn Opcode_rsr_debugcause_encode_fns[] = {
9119 Opcode_rsr_debugcause_Slot_inst_encode, 0, 0
9120 };
9121
9122 xtensa_opcode_encode_fn Opcode_wsr_debugcause_encode_fns[] = {
9123 Opcode_wsr_debugcause_Slot_inst_encode, 0, 0
9124 };
9125
9126 xtensa_opcode_encode_fn Opcode_xsr_debugcause_encode_fns[] = {
9127 Opcode_xsr_debugcause_Slot_inst_encode, 0, 0
9128 };
9129
9130 xtensa_opcode_encode_fn Opcode_rsr_icount_encode_fns[] = {
9131 Opcode_rsr_icount_Slot_inst_encode, 0, 0
9132 };
9133
9134 xtensa_opcode_encode_fn Opcode_wsr_icount_encode_fns[] = {
9135 Opcode_wsr_icount_Slot_inst_encode, 0, 0
9136 };
9137
9138 xtensa_opcode_encode_fn Opcode_xsr_icount_encode_fns[] = {
9139 Opcode_xsr_icount_Slot_inst_encode, 0, 0
9140 };
9141
9142 xtensa_opcode_encode_fn Opcode_rsr_icountlevel_encode_fns[] = {
9143 Opcode_rsr_icountlevel_Slot_inst_encode, 0, 0
9144 };
9145
9146 xtensa_opcode_encode_fn Opcode_wsr_icountlevel_encode_fns[] = {
9147 Opcode_wsr_icountlevel_Slot_inst_encode, 0, 0
9148 };
9149
9150 xtensa_opcode_encode_fn Opcode_xsr_icountlevel_encode_fns[] = {
9151 Opcode_xsr_icountlevel_Slot_inst_encode, 0, 0
9152 };
9153
9154 xtensa_opcode_encode_fn Opcode_rsr_ddr_encode_fns[] = {
9155 Opcode_rsr_ddr_Slot_inst_encode, 0, 0
9156 };
9157
9158 xtensa_opcode_encode_fn Opcode_wsr_ddr_encode_fns[] = {
9159 Opcode_wsr_ddr_Slot_inst_encode, 0, 0
9160 };
9161
9162 xtensa_opcode_encode_fn Opcode_xsr_ddr_encode_fns[] = {
9163 Opcode_xsr_ddr_Slot_inst_encode, 0, 0
9164 };
9165
9166 xtensa_opcode_encode_fn Opcode_rfdo_encode_fns[] = {
9167 Opcode_rfdo_Slot_inst_encode, 0, 0
9168 };
9169
9170 xtensa_opcode_encode_fn Opcode_rfdd_encode_fns[] = {
9171 Opcode_rfdd_Slot_inst_encode, 0, 0
9172 };
9173
9174 xtensa_opcode_encode_fn Opcode_wsr_mmid_encode_fns[] = {
9175 Opcode_wsr_mmid_Slot_inst_encode, 0, 0
9176 };
9177
9178 xtensa_opcode_encode_fn Opcode_rsr_ccount_encode_fns[] = {
9179 Opcode_rsr_ccount_Slot_inst_encode, 0, 0
9180 };
9181
9182 xtensa_opcode_encode_fn Opcode_wsr_ccount_encode_fns[] = {
9183 Opcode_wsr_ccount_Slot_inst_encode, 0, 0
9184 };
9185
9186 xtensa_opcode_encode_fn Opcode_xsr_ccount_encode_fns[] = {
9187 Opcode_xsr_ccount_Slot_inst_encode, 0, 0
9188 };
9189
9190 xtensa_opcode_encode_fn Opcode_rsr_ccompare0_encode_fns[] = {
9191 Opcode_rsr_ccompare0_Slot_inst_encode, 0, 0
9192 };
9193
9194 xtensa_opcode_encode_fn Opcode_wsr_ccompare0_encode_fns[] = {
9195 Opcode_wsr_ccompare0_Slot_inst_encode, 0, 0
9196 };
9197
9198 xtensa_opcode_encode_fn Opcode_xsr_ccompare0_encode_fns[] = {
9199 Opcode_xsr_ccompare0_Slot_inst_encode, 0, 0
9200 };
9201
9202 xtensa_opcode_encode_fn Opcode_rsr_ccompare1_encode_fns[] = {
9203 Opcode_rsr_ccompare1_Slot_inst_encode, 0, 0
9204 };
9205
9206 xtensa_opcode_encode_fn Opcode_wsr_ccompare1_encode_fns[] = {
9207 Opcode_wsr_ccompare1_Slot_inst_encode, 0, 0
9208 };
9209
9210 xtensa_opcode_encode_fn Opcode_xsr_ccompare1_encode_fns[] = {
9211 Opcode_xsr_ccompare1_Slot_inst_encode, 0, 0
9212 };
9213
9214 xtensa_opcode_encode_fn Opcode_rsr_ccompare2_encode_fns[] = {
9215 Opcode_rsr_ccompare2_Slot_inst_encode, 0, 0
9216 };
9217
9218 xtensa_opcode_encode_fn Opcode_wsr_ccompare2_encode_fns[] = {
9219 Opcode_wsr_ccompare2_Slot_inst_encode, 0, 0
9220 };
9221
9222 xtensa_opcode_encode_fn Opcode_xsr_ccompare2_encode_fns[] = {
9223 Opcode_xsr_ccompare2_Slot_inst_encode, 0, 0
9224 };
9225
9226 xtensa_opcode_encode_fn Opcode_ipf_encode_fns[] = {
9227 Opcode_ipf_Slot_inst_encode, 0, 0
9228 };
9229
9230 xtensa_opcode_encode_fn Opcode_ihi_encode_fns[] = {
9231 Opcode_ihi_Slot_inst_encode, 0, 0
9232 };
9233
9234 xtensa_opcode_encode_fn Opcode_ipfl_encode_fns[] = {
9235 Opcode_ipfl_Slot_inst_encode, 0, 0
9236 };
9237
9238 xtensa_opcode_encode_fn Opcode_ihu_encode_fns[] = {
9239 Opcode_ihu_Slot_inst_encode, 0, 0
9240 };
9241
9242 xtensa_opcode_encode_fn Opcode_iiu_encode_fns[] = {
9243 Opcode_iiu_Slot_inst_encode, 0, 0
9244 };
9245
9246 xtensa_opcode_encode_fn Opcode_iii_encode_fns[] = {
9247 Opcode_iii_Slot_inst_encode, 0, 0
9248 };
9249
9250 xtensa_opcode_encode_fn Opcode_lict_encode_fns[] = {
9251 Opcode_lict_Slot_inst_encode, 0, 0
9252 };
9253
9254 xtensa_opcode_encode_fn Opcode_licw_encode_fns[] = {
9255 Opcode_licw_Slot_inst_encode, 0, 0
9256 };
9257
9258 xtensa_opcode_encode_fn Opcode_sict_encode_fns[] = {
9259 Opcode_sict_Slot_inst_encode, 0, 0
9260 };
9261
9262 xtensa_opcode_encode_fn Opcode_sicw_encode_fns[] = {
9263 Opcode_sicw_Slot_inst_encode, 0, 0
9264 };
9265
9266 xtensa_opcode_encode_fn Opcode_dhwb_encode_fns[] = {
9267 Opcode_dhwb_Slot_inst_encode, 0, 0
9268 };
9269
9270 xtensa_opcode_encode_fn Opcode_dhwbi_encode_fns[] = {
9271 Opcode_dhwbi_Slot_inst_encode, 0, 0
9272 };
9273
9274 xtensa_opcode_encode_fn Opcode_diwb_encode_fns[] = {
9275 Opcode_diwb_Slot_inst_encode, 0, 0
9276 };
9277
9278 xtensa_opcode_encode_fn Opcode_diwbi_encode_fns[] = {
9279 Opcode_diwbi_Slot_inst_encode, 0, 0
9280 };
9281
9282 xtensa_opcode_encode_fn Opcode_dhi_encode_fns[] = {
9283 Opcode_dhi_Slot_inst_encode, 0, 0
9284 };
9285
9286 xtensa_opcode_encode_fn Opcode_dii_encode_fns[] = {
9287 Opcode_dii_Slot_inst_encode, 0, 0
9288 };
9289
9290 xtensa_opcode_encode_fn Opcode_dpfr_encode_fns[] = {
9291 Opcode_dpfr_Slot_inst_encode, 0, 0
9292 };
9293
9294 xtensa_opcode_encode_fn Opcode_dpfw_encode_fns[] = {
9295 Opcode_dpfw_Slot_inst_encode, 0, 0
9296 };
9297
9298 xtensa_opcode_encode_fn Opcode_dpfro_encode_fns[] = {
9299 Opcode_dpfro_Slot_inst_encode, 0, 0
9300 };
9301
9302 xtensa_opcode_encode_fn Opcode_dpfwo_encode_fns[] = {
9303 Opcode_dpfwo_Slot_inst_encode, 0, 0
9304 };
9305
9306 xtensa_opcode_encode_fn Opcode_dpfl_encode_fns[] = {
9307 Opcode_dpfl_Slot_inst_encode, 0, 0
9308 };
9309
9310 xtensa_opcode_encode_fn Opcode_dhu_encode_fns[] = {
9311 Opcode_dhu_Slot_inst_encode, 0, 0
9312 };
9313
9314 xtensa_opcode_encode_fn Opcode_diu_encode_fns[] = {
9315 Opcode_diu_Slot_inst_encode, 0, 0
9316 };
9317
9318 xtensa_opcode_encode_fn Opcode_sdct_encode_fns[] = {
9319 Opcode_sdct_Slot_inst_encode, 0, 0
9320 };
9321
9322 xtensa_opcode_encode_fn Opcode_ldct_encode_fns[] = {
9323 Opcode_ldct_Slot_inst_encode, 0, 0
9324 };
9325
9326 xtensa_opcode_encode_fn Opcode_wsr_ptevaddr_encode_fns[] = {
9327 Opcode_wsr_ptevaddr_Slot_inst_encode, 0, 0
9328 };
9329
9330 xtensa_opcode_encode_fn Opcode_rsr_ptevaddr_encode_fns[] = {
9331 Opcode_rsr_ptevaddr_Slot_inst_encode, 0, 0
9332 };
9333
9334 xtensa_opcode_encode_fn Opcode_xsr_ptevaddr_encode_fns[] = {
9335 Opcode_xsr_ptevaddr_Slot_inst_encode, 0, 0
9336 };
9337
9338 xtensa_opcode_encode_fn Opcode_rsr_rasid_encode_fns[] = {
9339 Opcode_rsr_rasid_Slot_inst_encode, 0, 0
9340 };
9341
9342 xtensa_opcode_encode_fn Opcode_wsr_rasid_encode_fns[] = {
9343 Opcode_wsr_rasid_Slot_inst_encode, 0, 0
9344 };
9345
9346 xtensa_opcode_encode_fn Opcode_xsr_rasid_encode_fns[] = {
9347 Opcode_xsr_rasid_Slot_inst_encode, 0, 0
9348 };
9349
9350 xtensa_opcode_encode_fn Opcode_rsr_itlbcfg_encode_fns[] = {
9351 Opcode_rsr_itlbcfg_Slot_inst_encode, 0, 0
9352 };
9353
9354 xtensa_opcode_encode_fn Opcode_wsr_itlbcfg_encode_fns[] = {
9355 Opcode_wsr_itlbcfg_Slot_inst_encode, 0, 0
9356 };
9357
9358 xtensa_opcode_encode_fn Opcode_xsr_itlbcfg_encode_fns[] = {
9359 Opcode_xsr_itlbcfg_Slot_inst_encode, 0, 0
9360 };
9361
9362 xtensa_opcode_encode_fn Opcode_rsr_dtlbcfg_encode_fns[] = {
9363 Opcode_rsr_dtlbcfg_Slot_inst_encode, 0, 0
9364 };
9365
9366 xtensa_opcode_encode_fn Opcode_wsr_dtlbcfg_encode_fns[] = {
9367 Opcode_wsr_dtlbcfg_Slot_inst_encode, 0, 0
9368 };
9369
9370 xtensa_opcode_encode_fn Opcode_xsr_dtlbcfg_encode_fns[] = {
9371 Opcode_xsr_dtlbcfg_Slot_inst_encode, 0, 0
9372 };
9373
9374 xtensa_opcode_encode_fn Opcode_idtlb_encode_fns[] = {
9375 Opcode_idtlb_Slot_inst_encode, 0, 0
9376 };
9377
9378 xtensa_opcode_encode_fn Opcode_pdtlb_encode_fns[] = {
9379 Opcode_pdtlb_Slot_inst_encode, 0, 0
9380 };
9381
9382 xtensa_opcode_encode_fn Opcode_rdtlb0_encode_fns[] = {
9383 Opcode_rdtlb0_Slot_inst_encode, 0, 0
9384 };
9385
9386 xtensa_opcode_encode_fn Opcode_rdtlb1_encode_fns[] = {
9387 Opcode_rdtlb1_Slot_inst_encode, 0, 0
9388 };
9389
9390 xtensa_opcode_encode_fn Opcode_wdtlb_encode_fns[] = {
9391 Opcode_wdtlb_Slot_inst_encode, 0, 0
9392 };
9393
9394 xtensa_opcode_encode_fn Opcode_iitlb_encode_fns[] = {
9395 Opcode_iitlb_Slot_inst_encode, 0, 0
9396 };
9397
9398 xtensa_opcode_encode_fn Opcode_pitlb_encode_fns[] = {
9399 Opcode_pitlb_Slot_inst_encode, 0, 0
9400 };
9401
9402 xtensa_opcode_encode_fn Opcode_ritlb0_encode_fns[] = {
9403 Opcode_ritlb0_Slot_inst_encode, 0, 0
9404 };
9405
9406 xtensa_opcode_encode_fn Opcode_ritlb1_encode_fns[] = {
9407 Opcode_ritlb1_Slot_inst_encode, 0, 0
9408 };
9409
9410 xtensa_opcode_encode_fn Opcode_witlb_encode_fns[] = {
9411 Opcode_witlb_Slot_inst_encode, 0, 0
9412 };
9413
9414 xtensa_opcode_encode_fn Opcode_ldpte_encode_fns[] = {
9415 Opcode_ldpte_Slot_inst_encode, 0, 0
9416 };
9417
9418 xtensa_opcode_encode_fn Opcode_hwwitlba_encode_fns[] = {
9419 Opcode_hwwitlba_Slot_inst_encode, 0, 0
9420 };
9421
9422 xtensa_opcode_encode_fn Opcode_hwwdtlba_encode_fns[] = {
9423 Opcode_hwwdtlba_Slot_inst_encode, 0, 0
9424 };
9425
9426 xtensa_opcode_encode_fn Opcode_rsr_cpenable_encode_fns[] = {
9427 Opcode_rsr_cpenable_Slot_inst_encode, 0, 0
9428 };
9429
9430 xtensa_opcode_encode_fn Opcode_wsr_cpenable_encode_fns[] = {
9431 Opcode_wsr_cpenable_Slot_inst_encode, 0, 0
9432 };
9433
9434 xtensa_opcode_encode_fn Opcode_xsr_cpenable_encode_fns[] = {
9435 Opcode_xsr_cpenable_Slot_inst_encode, 0, 0
9436 };
9437
9438 xtensa_opcode_encode_fn Opcode_clamps_encode_fns[] = {
9439 Opcode_clamps_Slot_inst_encode, 0, 0
9440 };
9441
9442 xtensa_opcode_encode_fn Opcode_min_encode_fns[] = {
9443 Opcode_min_Slot_inst_encode, 0, 0
9444 };
9445
9446 xtensa_opcode_encode_fn Opcode_max_encode_fns[] = {
9447 Opcode_max_Slot_inst_encode, 0, 0
9448 };
9449
9450 xtensa_opcode_encode_fn Opcode_minu_encode_fns[] = {
9451 Opcode_minu_Slot_inst_encode, 0, 0
9452 };
9453
9454 xtensa_opcode_encode_fn Opcode_maxu_encode_fns[] = {
9455 Opcode_maxu_Slot_inst_encode, 0, 0
9456 };
9457
9458 xtensa_opcode_encode_fn Opcode_nsa_encode_fns[] = {
9459 Opcode_nsa_Slot_inst_encode, 0, 0
9460 };
9461
9462 xtensa_opcode_encode_fn Opcode_nsau_encode_fns[] = {
9463 Opcode_nsau_Slot_inst_encode, 0, 0
9464 };
9465
9466 xtensa_opcode_encode_fn Opcode_sext_encode_fns[] = {
9467 Opcode_sext_Slot_inst_encode, 0, 0
9468 };
9469
9470 xtensa_opcode_encode_fn Opcode_l32ai_encode_fns[] = {
9471 Opcode_l32ai_Slot_inst_encode, 0, 0
9472 };
9473
9474 xtensa_opcode_encode_fn Opcode_s32ri_encode_fns[] = {
9475 Opcode_s32ri_Slot_inst_encode, 0, 0
9476 };
9477
9478 xtensa_opcode_encode_fn Opcode_s32c1i_encode_fns[] = {
9479 Opcode_s32c1i_Slot_inst_encode, 0, 0
9480 };
9481
9482 xtensa_opcode_encode_fn Opcode_rsr_scompare1_encode_fns[] = {
9483 Opcode_rsr_scompare1_Slot_inst_encode, 0, 0
9484 };
9485
9486 xtensa_opcode_encode_fn Opcode_wsr_scompare1_encode_fns[] = {
9487 Opcode_wsr_scompare1_Slot_inst_encode, 0, 0
9488 };
9489
9490 xtensa_opcode_encode_fn Opcode_xsr_scompare1_encode_fns[] = {
9491 Opcode_xsr_scompare1_Slot_inst_encode, 0, 0
9492 };
9493
9494 xtensa_opcode_encode_fn Opcode_quou_encode_fns[] = {
9495 Opcode_quou_Slot_inst_encode, 0, 0
9496 };
9497
9498 xtensa_opcode_encode_fn Opcode_quos_encode_fns[] = {
9499 Opcode_quos_Slot_inst_encode, 0, 0
9500 };
9501
9502 xtensa_opcode_encode_fn Opcode_remu_encode_fns[] = {
9503 Opcode_remu_Slot_inst_encode, 0, 0
9504 };
9505
9506 xtensa_opcode_encode_fn Opcode_rems_encode_fns[] = {
9507 Opcode_rems_Slot_inst_encode, 0, 0
9508 };
9509
9510 xtensa_opcode_encode_fn Opcode_mull_encode_fns[] = {
9511 Opcode_mull_Slot_inst_encode, 0, 0
9512 };
9513
9514 \f
9515 /* Opcode table. */
9516
9517 static xtensa_opcode_internal opcodes[] = {
9518 { "excw", ICLASS_xt_iclass_excw,
9519 0,
9520 Opcode_excw_encode_fns, 0, 0 },
9521 { "rfe", ICLASS_xt_iclass_rfe,
9522 XTENSA_OPCODE_IS_JUMP,
9523 Opcode_rfe_encode_fns, 0, 0 },
9524 { "rfde", ICLASS_xt_iclass_rfde,
9525 XTENSA_OPCODE_IS_JUMP,
9526 Opcode_rfde_encode_fns, 0, 0 },
9527 { "syscall", ICLASS_xt_iclass_syscall,
9528 0,
9529 Opcode_syscall_encode_fns, 0, 0 },
9530 { "simcall", ICLASS_xt_iclass_simcall,
9531 0,
9532 Opcode_simcall_encode_fns, 0, 0 },
9533 { "call12", ICLASS_xt_iclass_call12,
9534 XTENSA_OPCODE_IS_CALL,
9535 Opcode_call12_encode_fns, 0, 0 },
9536 { "call8", ICLASS_xt_iclass_call8,
9537 XTENSA_OPCODE_IS_CALL,
9538 Opcode_call8_encode_fns, 0, 0 },
9539 { "call4", ICLASS_xt_iclass_call4,
9540 XTENSA_OPCODE_IS_CALL,
9541 Opcode_call4_encode_fns, 0, 0 },
9542 { "callx12", ICLASS_xt_iclass_callx12,
9543 XTENSA_OPCODE_IS_CALL,
9544 Opcode_callx12_encode_fns, 0, 0 },
9545 { "callx8", ICLASS_xt_iclass_callx8,
9546 XTENSA_OPCODE_IS_CALL,
9547 Opcode_callx8_encode_fns, 0, 0 },
9548 { "callx4", ICLASS_xt_iclass_callx4,
9549 XTENSA_OPCODE_IS_CALL,
9550 Opcode_callx4_encode_fns, 0, 0 },
9551 { "entry", ICLASS_xt_iclass_entry,
9552 0,
9553 Opcode_entry_encode_fns, 0, 0 },
9554 { "movsp", ICLASS_xt_iclass_movsp,
9555 0,
9556 Opcode_movsp_encode_fns, 0, 0 },
9557 { "rotw", ICLASS_xt_iclass_rotw,
9558 0,
9559 Opcode_rotw_encode_fns, 0, 0 },
9560 { "retw", ICLASS_xt_iclass_retw,
9561 XTENSA_OPCODE_IS_JUMP,
9562 Opcode_retw_encode_fns, 0, 0 },
9563 { "retw.n", ICLASS_xt_iclass_retw,
9564 XTENSA_OPCODE_IS_JUMP,
9565 Opcode_retw_n_encode_fns, 0, 0 },
9566 { "rfwo", ICLASS_xt_iclass_rfwou,
9567 XTENSA_OPCODE_IS_JUMP,
9568 Opcode_rfwo_encode_fns, 0, 0 },
9569 { "rfwu", ICLASS_xt_iclass_rfwou,
9570 XTENSA_OPCODE_IS_JUMP,
9571 Opcode_rfwu_encode_fns, 0, 0 },
9572 { "l32e", ICLASS_xt_iclass_l32e,
9573 0,
9574 Opcode_l32e_encode_fns, 0, 0 },
9575 { "s32e", ICLASS_xt_iclass_s32e,
9576 0,
9577 Opcode_s32e_encode_fns, 0, 0 },
9578 { "rsr.windowbase", ICLASS_xt_iclass_rsr_windowbase,
9579 0,
9580 Opcode_rsr_windowbase_encode_fns, 0, 0 },
9581 { "wsr.windowbase", ICLASS_xt_iclass_wsr_windowbase,
9582 0,
9583 Opcode_wsr_windowbase_encode_fns, 0, 0 },
9584 { "xsr.windowbase", ICLASS_xt_iclass_xsr_windowbase,
9585 0,
9586 Opcode_xsr_windowbase_encode_fns, 0, 0 },
9587 { "rsr.windowstart", ICLASS_xt_iclass_rsr_windowstart,
9588 0,
9589 Opcode_rsr_windowstart_encode_fns, 0, 0 },
9590 { "wsr.windowstart", ICLASS_xt_iclass_wsr_windowstart,
9591 0,
9592 Opcode_wsr_windowstart_encode_fns, 0, 0 },
9593 { "xsr.windowstart", ICLASS_xt_iclass_xsr_windowstart,
9594 0,
9595 Opcode_xsr_windowstart_encode_fns, 0, 0 },
9596 { "add.n", ICLASS_xt_iclass_add_n,
9597 0,
9598 Opcode_add_n_encode_fns, 0, 0 },
9599 { "addi.n", ICLASS_xt_iclass_addi_n,
9600 0,
9601 Opcode_addi_n_encode_fns, 0, 0 },
9602 { "beqz.n", ICLASS_xt_iclass_bz6,
9603 XTENSA_OPCODE_IS_BRANCH,
9604 Opcode_beqz_n_encode_fns, 0, 0 },
9605 { "bnez.n", ICLASS_xt_iclass_bz6,
9606 XTENSA_OPCODE_IS_BRANCH,
9607 Opcode_bnez_n_encode_fns, 0, 0 },
9608 { "ill.n", ICLASS_xt_iclass_ill_n,
9609 0,
9610 Opcode_ill_n_encode_fns, 0, 0 },
9611 { "l32i.n", ICLASS_xt_iclass_loadi4,
9612 0,
9613 Opcode_l32i_n_encode_fns, 0, 0 },
9614 { "mov.n", ICLASS_xt_iclass_mov_n,
9615 0,
9616 Opcode_mov_n_encode_fns, 0, 0 },
9617 { "movi.n", ICLASS_xt_iclass_movi_n,
9618 0,
9619 Opcode_movi_n_encode_fns, 0, 0 },
9620 { "nop.n", ICLASS_xt_iclass_nopn,
9621 0,
9622 Opcode_nop_n_encode_fns, 0, 0 },
9623 { "ret.n", ICLASS_xt_iclass_retn,
9624 XTENSA_OPCODE_IS_JUMP,
9625 Opcode_ret_n_encode_fns, 0, 0 },
9626 { "s32i.n", ICLASS_xt_iclass_storei4,
9627 0,
9628 Opcode_s32i_n_encode_fns, 0, 0 },
9629 { "rur.threadptr", ICLASS_rur_threadptr,
9630 0,
9631 Opcode_rur_threadptr_encode_fns, 0, 0 },
9632 { "wur.threadptr", ICLASS_wur_threadptr,
9633 0,
9634 Opcode_wur_threadptr_encode_fns, 0, 0 },
9635 { "addi", ICLASS_xt_iclass_addi,
9636 0,
9637 Opcode_addi_encode_fns, 0, 0 },
9638 { "addmi", ICLASS_xt_iclass_addmi,
9639 0,
9640 Opcode_addmi_encode_fns, 0, 0 },
9641 { "add", ICLASS_xt_iclass_addsub,
9642 0,
9643 Opcode_add_encode_fns, 0, 0 },
9644 { "sub", ICLASS_xt_iclass_addsub,
9645 0,
9646 Opcode_sub_encode_fns, 0, 0 },
9647 { "addx2", ICLASS_xt_iclass_addsub,
9648 0,
9649 Opcode_addx2_encode_fns, 0, 0 },
9650 { "addx4", ICLASS_xt_iclass_addsub,
9651 0,
9652 Opcode_addx4_encode_fns, 0, 0 },
9653 { "addx8", ICLASS_xt_iclass_addsub,
9654 0,
9655 Opcode_addx8_encode_fns, 0, 0 },
9656 { "subx2", ICLASS_xt_iclass_addsub,
9657 0,
9658 Opcode_subx2_encode_fns, 0, 0 },
9659 { "subx4", ICLASS_xt_iclass_addsub,
9660 0,
9661 Opcode_subx4_encode_fns, 0, 0 },
9662 { "subx8", ICLASS_xt_iclass_addsub,
9663 0,
9664 Opcode_subx8_encode_fns, 0, 0 },
9665 { "and", ICLASS_xt_iclass_bit,
9666 0,
9667 Opcode_and_encode_fns, 0, 0 },
9668 { "or", ICLASS_xt_iclass_bit,
9669 0,
9670 Opcode_or_encode_fns, 0, 0 },
9671 { "xor", ICLASS_xt_iclass_bit,
9672 0,
9673 Opcode_xor_encode_fns, 0, 0 },
9674 { "beqi", ICLASS_xt_iclass_bsi8,
9675 XTENSA_OPCODE_IS_BRANCH,
9676 Opcode_beqi_encode_fns, 0, 0 },
9677 { "bnei", ICLASS_xt_iclass_bsi8,
9678 XTENSA_OPCODE_IS_BRANCH,
9679 Opcode_bnei_encode_fns, 0, 0 },
9680 { "bgei", ICLASS_xt_iclass_bsi8,
9681 XTENSA_OPCODE_IS_BRANCH,
9682 Opcode_bgei_encode_fns, 0, 0 },
9683 { "blti", ICLASS_xt_iclass_bsi8,
9684 XTENSA_OPCODE_IS_BRANCH,
9685 Opcode_blti_encode_fns, 0, 0 },
9686 { "bbci", ICLASS_xt_iclass_bsi8b,
9687 XTENSA_OPCODE_IS_BRANCH,
9688 Opcode_bbci_encode_fns, 0, 0 },
9689 { "bbsi", ICLASS_xt_iclass_bsi8b,
9690 XTENSA_OPCODE_IS_BRANCH,
9691 Opcode_bbsi_encode_fns, 0, 0 },
9692 { "bgeui", ICLASS_xt_iclass_bsi8u,
9693 XTENSA_OPCODE_IS_BRANCH,
9694 Opcode_bgeui_encode_fns, 0, 0 },
9695 { "bltui", ICLASS_xt_iclass_bsi8u,
9696 XTENSA_OPCODE_IS_BRANCH,
9697 Opcode_bltui_encode_fns, 0, 0 },
9698 { "beq", ICLASS_xt_iclass_bst8,
9699 XTENSA_OPCODE_IS_BRANCH,
9700 Opcode_beq_encode_fns, 0, 0 },
9701 { "bne", ICLASS_xt_iclass_bst8,
9702 XTENSA_OPCODE_IS_BRANCH,
9703 Opcode_bne_encode_fns, 0, 0 },
9704 { "bge", ICLASS_xt_iclass_bst8,
9705 XTENSA_OPCODE_IS_BRANCH,
9706 Opcode_bge_encode_fns, 0, 0 },
9707 { "blt", ICLASS_xt_iclass_bst8,
9708 XTENSA_OPCODE_IS_BRANCH,
9709 Opcode_blt_encode_fns, 0, 0 },
9710 { "bgeu", ICLASS_xt_iclass_bst8,
9711 XTENSA_OPCODE_IS_BRANCH,
9712 Opcode_bgeu_encode_fns, 0, 0 },
9713 { "bltu", ICLASS_xt_iclass_bst8,
9714 XTENSA_OPCODE_IS_BRANCH,
9715 Opcode_bltu_encode_fns, 0, 0 },
9716 { "bany", ICLASS_xt_iclass_bst8,
9717 XTENSA_OPCODE_IS_BRANCH,
9718 Opcode_bany_encode_fns, 0, 0 },
9719 { "bnone", ICLASS_xt_iclass_bst8,
9720 XTENSA_OPCODE_IS_BRANCH,
9721 Opcode_bnone_encode_fns, 0, 0 },
9722 { "ball", ICLASS_xt_iclass_bst8,
9723 XTENSA_OPCODE_IS_BRANCH,
9724 Opcode_ball_encode_fns, 0, 0 },
9725 { "bnall", ICLASS_xt_iclass_bst8,
9726 XTENSA_OPCODE_IS_BRANCH,
9727 Opcode_bnall_encode_fns, 0, 0 },
9728 { "bbc", ICLASS_xt_iclass_bst8,
9729 XTENSA_OPCODE_IS_BRANCH,
9730 Opcode_bbc_encode_fns, 0, 0 },
9731 { "bbs", ICLASS_xt_iclass_bst8,
9732 XTENSA_OPCODE_IS_BRANCH,
9733 Opcode_bbs_encode_fns, 0, 0 },
9734 { "beqz", ICLASS_xt_iclass_bsz12,
9735 XTENSA_OPCODE_IS_BRANCH,
9736 Opcode_beqz_encode_fns, 0, 0 },
9737 { "bnez", ICLASS_xt_iclass_bsz12,
9738 XTENSA_OPCODE_IS_BRANCH,
9739 Opcode_bnez_encode_fns, 0, 0 },
9740 { "bgez", ICLASS_xt_iclass_bsz12,
9741 XTENSA_OPCODE_IS_BRANCH,
9742 Opcode_bgez_encode_fns, 0, 0 },
9743 { "bltz", ICLASS_xt_iclass_bsz12,
9744 XTENSA_OPCODE_IS_BRANCH,
9745 Opcode_bltz_encode_fns, 0, 0 },
9746 { "call0", ICLASS_xt_iclass_call0,
9747 XTENSA_OPCODE_IS_CALL,
9748 Opcode_call0_encode_fns, 0, 0 },
9749 { "callx0", ICLASS_xt_iclass_callx0,
9750 XTENSA_OPCODE_IS_CALL,
9751 Opcode_callx0_encode_fns, 0, 0 },
9752 { "extui", ICLASS_xt_iclass_exti,
9753 0,
9754 Opcode_extui_encode_fns, 0, 0 },
9755 { "ill", ICLASS_xt_iclass_ill,
9756 0,
9757 Opcode_ill_encode_fns, 0, 0 },
9758 { "j", ICLASS_xt_iclass_jump,
9759 XTENSA_OPCODE_IS_JUMP,
9760 Opcode_j_encode_fns, 0, 0 },
9761 { "jx", ICLASS_xt_iclass_jumpx,
9762 XTENSA_OPCODE_IS_JUMP,
9763 Opcode_jx_encode_fns, 0, 0 },
9764 { "l16ui", ICLASS_xt_iclass_l16ui,
9765 0,
9766 Opcode_l16ui_encode_fns, 0, 0 },
9767 { "l16si", ICLASS_xt_iclass_l16si,
9768 0,
9769 Opcode_l16si_encode_fns, 0, 0 },
9770 { "l32i", ICLASS_xt_iclass_l32i,
9771 0,
9772 Opcode_l32i_encode_fns, 0, 0 },
9773 { "l32r", ICLASS_xt_iclass_l32r,
9774 0,
9775 Opcode_l32r_encode_fns, 0, 0 },
9776 { "l8ui", ICLASS_xt_iclass_l8i,
9777 0,
9778 Opcode_l8ui_encode_fns, 0, 0 },
9779 { "loop", ICLASS_xt_iclass_loop,
9780 XTENSA_OPCODE_IS_LOOP,
9781 Opcode_loop_encode_fns, 0, 0 },
9782 { "loopnez", ICLASS_xt_iclass_loopz,
9783 XTENSA_OPCODE_IS_LOOP,
9784 Opcode_loopnez_encode_fns, 0, 0 },
9785 { "loopgtz", ICLASS_xt_iclass_loopz,
9786 XTENSA_OPCODE_IS_LOOP,
9787 Opcode_loopgtz_encode_fns, 0, 0 },
9788 { "movi", ICLASS_xt_iclass_movi,
9789 0,
9790 Opcode_movi_encode_fns, 0, 0 },
9791 { "moveqz", ICLASS_xt_iclass_movz,
9792 0,
9793 Opcode_moveqz_encode_fns, 0, 0 },
9794 { "movnez", ICLASS_xt_iclass_movz,
9795 0,
9796 Opcode_movnez_encode_fns, 0, 0 },
9797 { "movltz", ICLASS_xt_iclass_movz,
9798 0,
9799 Opcode_movltz_encode_fns, 0, 0 },
9800 { "movgez", ICLASS_xt_iclass_movz,
9801 0,
9802 Opcode_movgez_encode_fns, 0, 0 },
9803 { "neg", ICLASS_xt_iclass_neg,
9804 0,
9805 Opcode_neg_encode_fns, 0, 0 },
9806 { "abs", ICLASS_xt_iclass_neg,
9807 0,
9808 Opcode_abs_encode_fns, 0, 0 },
9809 { "nop", ICLASS_xt_iclass_nop,
9810 0,
9811 Opcode_nop_encode_fns, 0, 0 },
9812 { "ret", ICLASS_xt_iclass_return,
9813 XTENSA_OPCODE_IS_JUMP,
9814 Opcode_ret_encode_fns, 0, 0 },
9815 { "s16i", ICLASS_xt_iclass_s16i,
9816 0,
9817 Opcode_s16i_encode_fns, 0, 0 },
9818 { "s32i", ICLASS_xt_iclass_s32i,
9819 0,
9820 Opcode_s32i_encode_fns, 0, 0 },
9821 { "s8i", ICLASS_xt_iclass_s8i,
9822 0,
9823 Opcode_s8i_encode_fns, 0, 0 },
9824 { "ssr", ICLASS_xt_iclass_sar,
9825 0,
9826 Opcode_ssr_encode_fns, 0, 0 },
9827 { "ssl", ICLASS_xt_iclass_sar,
9828 0,
9829 Opcode_ssl_encode_fns, 0, 0 },
9830 { "ssa8l", ICLASS_xt_iclass_sar,
9831 0,
9832 Opcode_ssa8l_encode_fns, 0, 0 },
9833 { "ssa8b", ICLASS_xt_iclass_sar,
9834 0,
9835 Opcode_ssa8b_encode_fns, 0, 0 },
9836 { "ssai", ICLASS_xt_iclass_sari,
9837 0,
9838 Opcode_ssai_encode_fns, 0, 0 },
9839 { "sll", ICLASS_xt_iclass_shifts,
9840 0,
9841 Opcode_sll_encode_fns, 0, 0 },
9842 { "src", ICLASS_xt_iclass_shiftst,
9843 0,
9844 Opcode_src_encode_fns, 0, 0 },
9845 { "srl", ICLASS_xt_iclass_shiftt,
9846 0,
9847 Opcode_srl_encode_fns, 0, 0 },
9848 { "sra", ICLASS_xt_iclass_shiftt,
9849 0,
9850 Opcode_sra_encode_fns, 0, 0 },
9851 { "slli", ICLASS_xt_iclass_slli,
9852 0,
9853 Opcode_slli_encode_fns, 0, 0 },
9854 { "srai", ICLASS_xt_iclass_srai,
9855 0,
9856 Opcode_srai_encode_fns, 0, 0 },
9857 { "srli", ICLASS_xt_iclass_srli,
9858 0,
9859 Opcode_srli_encode_fns, 0, 0 },
9860 { "memw", ICLASS_xt_iclass_memw,
9861 0,
9862 Opcode_memw_encode_fns, 0, 0 },
9863 { "extw", ICLASS_xt_iclass_extw,
9864 0,
9865 Opcode_extw_encode_fns, 0, 0 },
9866 { "isync", ICLASS_xt_iclass_isync,
9867 0,
9868 Opcode_isync_encode_fns, 0, 0 },
9869 { "rsync", ICLASS_xt_iclass_sync,
9870 0,
9871 Opcode_rsync_encode_fns, 0, 0 },
9872 { "esync", ICLASS_xt_iclass_sync,
9873 0,
9874 Opcode_esync_encode_fns, 0, 0 },
9875 { "dsync", ICLASS_xt_iclass_sync,
9876 0,
9877 Opcode_dsync_encode_fns, 0, 0 },
9878 { "rsil", ICLASS_xt_iclass_rsil,
9879 0,
9880 Opcode_rsil_encode_fns, 0, 0 },
9881 { "rsr.lend", ICLASS_xt_iclass_rsr_lend,
9882 0,
9883 Opcode_rsr_lend_encode_fns, 0, 0 },
9884 { "wsr.lend", ICLASS_xt_iclass_wsr_lend,
9885 0,
9886 Opcode_wsr_lend_encode_fns, 0, 0 },
9887 { "xsr.lend", ICLASS_xt_iclass_xsr_lend,
9888 0,
9889 Opcode_xsr_lend_encode_fns, 0, 0 },
9890 { "rsr.lcount", ICLASS_xt_iclass_rsr_lcount,
9891 0,
9892 Opcode_rsr_lcount_encode_fns, 0, 0 },
9893 { "wsr.lcount", ICLASS_xt_iclass_wsr_lcount,
9894 0,
9895 Opcode_wsr_lcount_encode_fns, 0, 0 },
9896 { "xsr.lcount", ICLASS_xt_iclass_xsr_lcount,
9897 0,
9898 Opcode_xsr_lcount_encode_fns, 0, 0 },
9899 { "rsr.lbeg", ICLASS_xt_iclass_rsr_lbeg,
9900 0,
9901 Opcode_rsr_lbeg_encode_fns, 0, 0 },
9902 { "wsr.lbeg", ICLASS_xt_iclass_wsr_lbeg,
9903 0,
9904 Opcode_wsr_lbeg_encode_fns, 0, 0 },
9905 { "xsr.lbeg", ICLASS_xt_iclass_xsr_lbeg,
9906 0,
9907 Opcode_xsr_lbeg_encode_fns, 0, 0 },
9908 { "rsr.sar", ICLASS_xt_iclass_rsr_sar,
9909 0,
9910 Opcode_rsr_sar_encode_fns, 0, 0 },
9911 { "wsr.sar", ICLASS_xt_iclass_wsr_sar,
9912 0,
9913 Opcode_wsr_sar_encode_fns, 0, 0 },
9914 { "xsr.sar", ICLASS_xt_iclass_xsr_sar,
9915 0,
9916 Opcode_xsr_sar_encode_fns, 0, 0 },
9917 { "rsr.litbase", ICLASS_xt_iclass_rsr_litbase,
9918 0,
9919 Opcode_rsr_litbase_encode_fns, 0, 0 },
9920 { "wsr.litbase", ICLASS_xt_iclass_wsr_litbase,
9921 0,
9922 Opcode_wsr_litbase_encode_fns, 0, 0 },
9923 { "xsr.litbase", ICLASS_xt_iclass_xsr_litbase,
9924 0,
9925 Opcode_xsr_litbase_encode_fns, 0, 0 },
9926 { "rsr.176", ICLASS_xt_iclass_rsr_176,
9927 0,
9928 Opcode_rsr_176_encode_fns, 0, 0 },
9929 { "wsr.176", ICLASS_xt_iclass_wsr_176,
9930 0,
9931 Opcode_wsr_176_encode_fns, 0, 0 },
9932 { "rsr.208", ICLASS_xt_iclass_rsr_208,
9933 0,
9934 Opcode_rsr_208_encode_fns, 0, 0 },
9935 { "rsr.ps", ICLASS_xt_iclass_rsr_ps,
9936 0,
9937 Opcode_rsr_ps_encode_fns, 0, 0 },
9938 { "wsr.ps", ICLASS_xt_iclass_wsr_ps,
9939 0,
9940 Opcode_wsr_ps_encode_fns, 0, 0 },
9941 { "xsr.ps", ICLASS_xt_iclass_xsr_ps,
9942 0,
9943 Opcode_xsr_ps_encode_fns, 0, 0 },
9944 { "rsr.epc1", ICLASS_xt_iclass_rsr_epc1,
9945 0,
9946 Opcode_rsr_epc1_encode_fns, 0, 0 },
9947 { "wsr.epc1", ICLASS_xt_iclass_wsr_epc1,
9948 0,
9949 Opcode_wsr_epc1_encode_fns, 0, 0 },
9950 { "xsr.epc1", ICLASS_xt_iclass_xsr_epc1,
9951 0,
9952 Opcode_xsr_epc1_encode_fns, 0, 0 },
9953 { "rsr.excsave1", ICLASS_xt_iclass_rsr_excsave1,
9954 0,
9955 Opcode_rsr_excsave1_encode_fns, 0, 0 },
9956 { "wsr.excsave1", ICLASS_xt_iclass_wsr_excsave1,
9957 0,
9958 Opcode_wsr_excsave1_encode_fns, 0, 0 },
9959 { "xsr.excsave1", ICLASS_xt_iclass_xsr_excsave1,
9960 0,
9961 Opcode_xsr_excsave1_encode_fns, 0, 0 },
9962 { "rsr.epc2", ICLASS_xt_iclass_rsr_epc2,
9963 0,
9964 Opcode_rsr_epc2_encode_fns, 0, 0 },
9965 { "wsr.epc2", ICLASS_xt_iclass_wsr_epc2,
9966 0,
9967 Opcode_wsr_epc2_encode_fns, 0, 0 },
9968 { "xsr.epc2", ICLASS_xt_iclass_xsr_epc2,
9969 0,
9970 Opcode_xsr_epc2_encode_fns, 0, 0 },
9971 { "rsr.excsave2", ICLASS_xt_iclass_rsr_excsave2,
9972 0,
9973 Opcode_rsr_excsave2_encode_fns, 0, 0 },
9974 { "wsr.excsave2", ICLASS_xt_iclass_wsr_excsave2,
9975 0,
9976 Opcode_wsr_excsave2_encode_fns, 0, 0 },
9977 { "xsr.excsave2", ICLASS_xt_iclass_xsr_excsave2,
9978 0,
9979 Opcode_xsr_excsave2_encode_fns, 0, 0 },
9980 { "rsr.epc3", ICLASS_xt_iclass_rsr_epc3,
9981 0,
9982 Opcode_rsr_epc3_encode_fns, 0, 0 },
9983 { "wsr.epc3", ICLASS_xt_iclass_wsr_epc3,
9984 0,
9985 Opcode_wsr_epc3_encode_fns, 0, 0 },
9986 { "xsr.epc3", ICLASS_xt_iclass_xsr_epc3,
9987 0,
9988 Opcode_xsr_epc3_encode_fns, 0, 0 },
9989 { "rsr.excsave3", ICLASS_xt_iclass_rsr_excsave3,
9990 0,
9991 Opcode_rsr_excsave3_encode_fns, 0, 0 },
9992 { "wsr.excsave3", ICLASS_xt_iclass_wsr_excsave3,
9993 0,
9994 Opcode_wsr_excsave3_encode_fns, 0, 0 },
9995 { "xsr.excsave3", ICLASS_xt_iclass_xsr_excsave3,
9996 0,
9997 Opcode_xsr_excsave3_encode_fns, 0, 0 },
9998 { "rsr.epc4", ICLASS_xt_iclass_rsr_epc4,
9999 0,
10000 Opcode_rsr_epc4_encode_fns, 0, 0 },
10001 { "wsr.epc4", ICLASS_xt_iclass_wsr_epc4,
10002 0,
10003 Opcode_wsr_epc4_encode_fns, 0, 0 },
10004 { "xsr.epc4", ICLASS_xt_iclass_xsr_epc4,
10005 0,
10006 Opcode_xsr_epc4_encode_fns, 0, 0 },
10007 { "rsr.excsave4", ICLASS_xt_iclass_rsr_excsave4,
10008 0,
10009 Opcode_rsr_excsave4_encode_fns, 0, 0 },
10010 { "wsr.excsave4", ICLASS_xt_iclass_wsr_excsave4,
10011 0,
10012 Opcode_wsr_excsave4_encode_fns, 0, 0 },
10013 { "xsr.excsave4", ICLASS_xt_iclass_xsr_excsave4,
10014 0,
10015 Opcode_xsr_excsave4_encode_fns, 0, 0 },
10016 { "rsr.epc5", ICLASS_xt_iclass_rsr_epc5,
10017 0,
10018 Opcode_rsr_epc5_encode_fns, 0, 0 },
10019 { "wsr.epc5", ICLASS_xt_iclass_wsr_epc5,
10020 0,
10021 Opcode_wsr_epc5_encode_fns, 0, 0 },
10022 { "xsr.epc5", ICLASS_xt_iclass_xsr_epc5,
10023 0,
10024 Opcode_xsr_epc5_encode_fns, 0, 0 },
10025 { "rsr.excsave5", ICLASS_xt_iclass_rsr_excsave5,
10026 0,
10027 Opcode_rsr_excsave5_encode_fns, 0, 0 },
10028 { "wsr.excsave5", ICLASS_xt_iclass_wsr_excsave5,
10029 0,
10030 Opcode_wsr_excsave5_encode_fns, 0, 0 },
10031 { "xsr.excsave5", ICLASS_xt_iclass_xsr_excsave5,
10032 0,
10033 Opcode_xsr_excsave5_encode_fns, 0, 0 },
10034 { "rsr.epc6", ICLASS_xt_iclass_rsr_epc6,
10035 0,
10036 Opcode_rsr_epc6_encode_fns, 0, 0 },
10037 { "wsr.epc6", ICLASS_xt_iclass_wsr_epc6,
10038 0,
10039 Opcode_wsr_epc6_encode_fns, 0, 0 },
10040 { "xsr.epc6", ICLASS_xt_iclass_xsr_epc6,
10041 0,
10042 Opcode_xsr_epc6_encode_fns, 0, 0 },
10043 { "rsr.excsave6", ICLASS_xt_iclass_rsr_excsave6,
10044 0,
10045 Opcode_rsr_excsave6_encode_fns, 0, 0 },
10046 { "wsr.excsave6", ICLASS_xt_iclass_wsr_excsave6,
10047 0,
10048 Opcode_wsr_excsave6_encode_fns, 0, 0 },
10049 { "xsr.excsave6", ICLASS_xt_iclass_xsr_excsave6,
10050 0,
10051 Opcode_xsr_excsave6_encode_fns, 0, 0 },
10052 { "rsr.epc7", ICLASS_xt_iclass_rsr_epc7,
10053 0,
10054 Opcode_rsr_epc7_encode_fns, 0, 0 },
10055 { "wsr.epc7", ICLASS_xt_iclass_wsr_epc7,
10056 0,
10057 Opcode_wsr_epc7_encode_fns, 0, 0 },
10058 { "xsr.epc7", ICLASS_xt_iclass_xsr_epc7,
10059 0,
10060 Opcode_xsr_epc7_encode_fns, 0, 0 },
10061 { "rsr.excsave7", ICLASS_xt_iclass_rsr_excsave7,
10062 0,
10063 Opcode_rsr_excsave7_encode_fns, 0, 0 },
10064 { "wsr.excsave7", ICLASS_xt_iclass_wsr_excsave7,
10065 0,
10066 Opcode_wsr_excsave7_encode_fns, 0, 0 },
10067 { "xsr.excsave7", ICLASS_xt_iclass_xsr_excsave7,
10068 0,
10069 Opcode_xsr_excsave7_encode_fns, 0, 0 },
10070 { "rsr.eps2", ICLASS_xt_iclass_rsr_eps2,
10071 0,
10072 Opcode_rsr_eps2_encode_fns, 0, 0 },
10073 { "wsr.eps2", ICLASS_xt_iclass_wsr_eps2,
10074 0,
10075 Opcode_wsr_eps2_encode_fns, 0, 0 },
10076 { "xsr.eps2", ICLASS_xt_iclass_xsr_eps2,
10077 0,
10078 Opcode_xsr_eps2_encode_fns, 0, 0 },
10079 { "rsr.eps3", ICLASS_xt_iclass_rsr_eps3,
10080 0,
10081 Opcode_rsr_eps3_encode_fns, 0, 0 },
10082 { "wsr.eps3", ICLASS_xt_iclass_wsr_eps3,
10083 0,
10084 Opcode_wsr_eps3_encode_fns, 0, 0 },
10085 { "xsr.eps3", ICLASS_xt_iclass_xsr_eps3,
10086 0,
10087 Opcode_xsr_eps3_encode_fns, 0, 0 },
10088 { "rsr.eps4", ICLASS_xt_iclass_rsr_eps4,
10089 0,
10090 Opcode_rsr_eps4_encode_fns, 0, 0 },
10091 { "wsr.eps4", ICLASS_xt_iclass_wsr_eps4,
10092 0,
10093 Opcode_wsr_eps4_encode_fns, 0, 0 },
10094 { "xsr.eps4", ICLASS_xt_iclass_xsr_eps4,
10095 0,
10096 Opcode_xsr_eps4_encode_fns, 0, 0 },
10097 { "rsr.eps5", ICLASS_xt_iclass_rsr_eps5,
10098 0,
10099 Opcode_rsr_eps5_encode_fns, 0, 0 },
10100 { "wsr.eps5", ICLASS_xt_iclass_wsr_eps5,
10101 0,
10102 Opcode_wsr_eps5_encode_fns, 0, 0 },
10103 { "xsr.eps5", ICLASS_xt_iclass_xsr_eps5,
10104 0,
10105 Opcode_xsr_eps5_encode_fns, 0, 0 },
10106 { "rsr.eps6", ICLASS_xt_iclass_rsr_eps6,
10107 0,
10108 Opcode_rsr_eps6_encode_fns, 0, 0 },
10109 { "wsr.eps6", ICLASS_xt_iclass_wsr_eps6,
10110 0,
10111 Opcode_wsr_eps6_encode_fns, 0, 0 },
10112 { "xsr.eps6", ICLASS_xt_iclass_xsr_eps6,
10113 0,
10114 Opcode_xsr_eps6_encode_fns, 0, 0 },
10115 { "rsr.eps7", ICLASS_xt_iclass_rsr_eps7,
10116 0,
10117 Opcode_rsr_eps7_encode_fns, 0, 0 },
10118 { "wsr.eps7", ICLASS_xt_iclass_wsr_eps7,
10119 0,
10120 Opcode_wsr_eps7_encode_fns, 0, 0 },
10121 { "xsr.eps7", ICLASS_xt_iclass_xsr_eps7,
10122 0,
10123 Opcode_xsr_eps7_encode_fns, 0, 0 },
10124 { "rsr.excvaddr", ICLASS_xt_iclass_rsr_excvaddr,
10125 0,
10126 Opcode_rsr_excvaddr_encode_fns, 0, 0 },
10127 { "wsr.excvaddr", ICLASS_xt_iclass_wsr_excvaddr,
10128 0,
10129 Opcode_wsr_excvaddr_encode_fns, 0, 0 },
10130 { "xsr.excvaddr", ICLASS_xt_iclass_xsr_excvaddr,
10131 0,
10132 Opcode_xsr_excvaddr_encode_fns, 0, 0 },
10133 { "rsr.depc", ICLASS_xt_iclass_rsr_depc,
10134 0,
10135 Opcode_rsr_depc_encode_fns, 0, 0 },
10136 { "wsr.depc", ICLASS_xt_iclass_wsr_depc,
10137 0,
10138 Opcode_wsr_depc_encode_fns, 0, 0 },
10139 { "xsr.depc", ICLASS_xt_iclass_xsr_depc,
10140 0,
10141 Opcode_xsr_depc_encode_fns, 0, 0 },
10142 { "rsr.exccause", ICLASS_xt_iclass_rsr_exccause,
10143 0,
10144 Opcode_rsr_exccause_encode_fns, 0, 0 },
10145 { "wsr.exccause", ICLASS_xt_iclass_wsr_exccause,
10146 0,
10147 Opcode_wsr_exccause_encode_fns, 0, 0 },
10148 { "xsr.exccause", ICLASS_xt_iclass_xsr_exccause,
10149 0,
10150 Opcode_xsr_exccause_encode_fns, 0, 0 },
10151 { "rsr.misc0", ICLASS_xt_iclass_rsr_misc0,
10152 0,
10153 Opcode_rsr_misc0_encode_fns, 0, 0 },
10154 { "wsr.misc0", ICLASS_xt_iclass_wsr_misc0,
10155 0,
10156 Opcode_wsr_misc0_encode_fns, 0, 0 },
10157 { "xsr.misc0", ICLASS_xt_iclass_xsr_misc0,
10158 0,
10159 Opcode_xsr_misc0_encode_fns, 0, 0 },
10160 { "rsr.misc1", ICLASS_xt_iclass_rsr_misc1,
10161 0,
10162 Opcode_rsr_misc1_encode_fns, 0, 0 },
10163 { "wsr.misc1", ICLASS_xt_iclass_wsr_misc1,
10164 0,
10165 Opcode_wsr_misc1_encode_fns, 0, 0 },
10166 { "xsr.misc1", ICLASS_xt_iclass_xsr_misc1,
10167 0,
10168 Opcode_xsr_misc1_encode_fns, 0, 0 },
10169 { "rsr.prid", ICLASS_xt_iclass_rsr_prid,
10170 0,
10171 Opcode_rsr_prid_encode_fns, 0, 0 },
10172 { "rsr.vecbase", ICLASS_xt_iclass_rsr_vecbase,
10173 0,
10174 Opcode_rsr_vecbase_encode_fns, 0, 0 },
10175 { "wsr.vecbase", ICLASS_xt_iclass_wsr_vecbase,
10176 0,
10177 Opcode_wsr_vecbase_encode_fns, 0, 0 },
10178 { "xsr.vecbase", ICLASS_xt_iclass_xsr_vecbase,
10179 0,
10180 Opcode_xsr_vecbase_encode_fns, 0, 0 },
10181 { "mul16u", ICLASS_xt_iclass_mul16,
10182 0,
10183 Opcode_mul16u_encode_fns, 0, 0 },
10184 { "mul16s", ICLASS_xt_iclass_mul16,
10185 0,
10186 Opcode_mul16s_encode_fns, 0, 0 },
10187 { "rfi", ICLASS_xt_iclass_rfi,
10188 XTENSA_OPCODE_IS_JUMP,
10189 Opcode_rfi_encode_fns, 0, 0 },
10190 { "waiti", ICLASS_xt_iclass_wait,
10191 0,
10192 Opcode_waiti_encode_fns, 0, 0 },
10193 { "rsr.interrupt", ICLASS_xt_iclass_rsr_interrupt,
10194 0,
10195 Opcode_rsr_interrupt_encode_fns, 0, 0 },
10196 { "wsr.intset", ICLASS_xt_iclass_wsr_intset,
10197 0,
10198 Opcode_wsr_intset_encode_fns, 0, 0 },
10199 { "wsr.intclear", ICLASS_xt_iclass_wsr_intclear,
10200 0,
10201 Opcode_wsr_intclear_encode_fns, 0, 0 },
10202 { "rsr.intenable", ICLASS_xt_iclass_rsr_intenable,
10203 0,
10204 Opcode_rsr_intenable_encode_fns, 0, 0 },
10205 { "wsr.intenable", ICLASS_xt_iclass_wsr_intenable,
10206 0,
10207 Opcode_wsr_intenable_encode_fns, 0, 0 },
10208 { "xsr.intenable", ICLASS_xt_iclass_xsr_intenable,
10209 0,
10210 Opcode_xsr_intenable_encode_fns, 0, 0 },
10211 { "break", ICLASS_xt_iclass_break,
10212 0,
10213 Opcode_break_encode_fns, 0, 0 },
10214 { "break.n", ICLASS_xt_iclass_break_n,
10215 0,
10216 Opcode_break_n_encode_fns, 0, 0 },
10217 { "rsr.dbreaka0", ICLASS_xt_iclass_rsr_dbreaka0,
10218 0,
10219 Opcode_rsr_dbreaka0_encode_fns, 0, 0 },
10220 { "wsr.dbreaka0", ICLASS_xt_iclass_wsr_dbreaka0,
10221 0,
10222 Opcode_wsr_dbreaka0_encode_fns, 0, 0 },
10223 { "xsr.dbreaka0", ICLASS_xt_iclass_xsr_dbreaka0,
10224 0,
10225 Opcode_xsr_dbreaka0_encode_fns, 0, 0 },
10226 { "rsr.dbreakc0", ICLASS_xt_iclass_rsr_dbreakc0,
10227 0,
10228 Opcode_rsr_dbreakc0_encode_fns, 0, 0 },
10229 { "wsr.dbreakc0", ICLASS_xt_iclass_wsr_dbreakc0,
10230 0,
10231 Opcode_wsr_dbreakc0_encode_fns, 0, 0 },
10232 { "xsr.dbreakc0", ICLASS_xt_iclass_xsr_dbreakc0,
10233 0,
10234 Opcode_xsr_dbreakc0_encode_fns, 0, 0 },
10235 { "rsr.dbreaka1", ICLASS_xt_iclass_rsr_dbreaka1,
10236 0,
10237 Opcode_rsr_dbreaka1_encode_fns, 0, 0 },
10238 { "wsr.dbreaka1", ICLASS_xt_iclass_wsr_dbreaka1,
10239 0,
10240 Opcode_wsr_dbreaka1_encode_fns, 0, 0 },
10241 { "xsr.dbreaka1", ICLASS_xt_iclass_xsr_dbreaka1,
10242 0,
10243 Opcode_xsr_dbreaka1_encode_fns, 0, 0 },
10244 { "rsr.dbreakc1", ICLASS_xt_iclass_rsr_dbreakc1,
10245 0,
10246 Opcode_rsr_dbreakc1_encode_fns, 0, 0 },
10247 { "wsr.dbreakc1", ICLASS_xt_iclass_wsr_dbreakc1,
10248 0,
10249 Opcode_wsr_dbreakc1_encode_fns, 0, 0 },
10250 { "xsr.dbreakc1", ICLASS_xt_iclass_xsr_dbreakc1,
10251 0,
10252 Opcode_xsr_dbreakc1_encode_fns, 0, 0 },
10253 { "rsr.ibreaka0", ICLASS_xt_iclass_rsr_ibreaka0,
10254 0,
10255 Opcode_rsr_ibreaka0_encode_fns, 0, 0 },
10256 { "wsr.ibreaka0", ICLASS_xt_iclass_wsr_ibreaka0,
10257 0,
10258 Opcode_wsr_ibreaka0_encode_fns, 0, 0 },
10259 { "xsr.ibreaka0", ICLASS_xt_iclass_xsr_ibreaka0,
10260 0,
10261 Opcode_xsr_ibreaka0_encode_fns, 0, 0 },
10262 { "rsr.ibreaka1", ICLASS_xt_iclass_rsr_ibreaka1,
10263 0,
10264 Opcode_rsr_ibreaka1_encode_fns, 0, 0 },
10265 { "wsr.ibreaka1", ICLASS_xt_iclass_wsr_ibreaka1,
10266 0,
10267 Opcode_wsr_ibreaka1_encode_fns, 0, 0 },
10268 { "xsr.ibreaka1", ICLASS_xt_iclass_xsr_ibreaka1,
10269 0,
10270 Opcode_xsr_ibreaka1_encode_fns, 0, 0 },
10271 { "rsr.ibreakenable", ICLASS_xt_iclass_rsr_ibreakenable,
10272 0,
10273 Opcode_rsr_ibreakenable_encode_fns, 0, 0 },
10274 { "wsr.ibreakenable", ICLASS_xt_iclass_wsr_ibreakenable,
10275 0,
10276 Opcode_wsr_ibreakenable_encode_fns, 0, 0 },
10277 { "xsr.ibreakenable", ICLASS_xt_iclass_xsr_ibreakenable,
10278 0,
10279 Opcode_xsr_ibreakenable_encode_fns, 0, 0 },
10280 { "rsr.debugcause", ICLASS_xt_iclass_rsr_debugcause,
10281 0,
10282 Opcode_rsr_debugcause_encode_fns, 0, 0 },
10283 { "wsr.debugcause", ICLASS_xt_iclass_wsr_debugcause,
10284 0,
10285 Opcode_wsr_debugcause_encode_fns, 0, 0 },
10286 { "xsr.debugcause", ICLASS_xt_iclass_xsr_debugcause,
10287 0,
10288 Opcode_xsr_debugcause_encode_fns, 0, 0 },
10289 { "rsr.icount", ICLASS_xt_iclass_rsr_icount,
10290 0,
10291 Opcode_rsr_icount_encode_fns, 0, 0 },
10292 { "wsr.icount", ICLASS_xt_iclass_wsr_icount,
10293 0,
10294 Opcode_wsr_icount_encode_fns, 0, 0 },
10295 { "xsr.icount", ICLASS_xt_iclass_xsr_icount,
10296 0,
10297 Opcode_xsr_icount_encode_fns, 0, 0 },
10298 { "rsr.icountlevel", ICLASS_xt_iclass_rsr_icountlevel,
10299 0,
10300 Opcode_rsr_icountlevel_encode_fns, 0, 0 },
10301 { "wsr.icountlevel", ICLASS_xt_iclass_wsr_icountlevel,
10302 0,
10303 Opcode_wsr_icountlevel_encode_fns, 0, 0 },
10304 { "xsr.icountlevel", ICLASS_xt_iclass_xsr_icountlevel,
10305 0,
10306 Opcode_xsr_icountlevel_encode_fns, 0, 0 },
10307 { "rsr.ddr", ICLASS_xt_iclass_rsr_ddr,
10308 0,
10309 Opcode_rsr_ddr_encode_fns, 0, 0 },
10310 { "wsr.ddr", ICLASS_xt_iclass_wsr_ddr,
10311 0,
10312 Opcode_wsr_ddr_encode_fns, 0, 0 },
10313 { "xsr.ddr", ICLASS_xt_iclass_xsr_ddr,
10314 0,
10315 Opcode_xsr_ddr_encode_fns, 0, 0 },
10316 { "rfdo", ICLASS_xt_iclass_rfdo,
10317 XTENSA_OPCODE_IS_JUMP,
10318 Opcode_rfdo_encode_fns, 0, 0 },
10319 { "rfdd", ICLASS_xt_iclass_rfdd,
10320 XTENSA_OPCODE_IS_JUMP,
10321 Opcode_rfdd_encode_fns, 0, 0 },
10322 { "wsr.mmid", ICLASS_xt_iclass_wsr_mmid,
10323 0,
10324 Opcode_wsr_mmid_encode_fns, 0, 0 },
10325 { "rsr.ccount", ICLASS_xt_iclass_rsr_ccount,
10326 0,
10327 Opcode_rsr_ccount_encode_fns, 0, 0 },
10328 { "wsr.ccount", ICLASS_xt_iclass_wsr_ccount,
10329 0,
10330 Opcode_wsr_ccount_encode_fns, 0, 0 },
10331 { "xsr.ccount", ICLASS_xt_iclass_xsr_ccount,
10332 0,
10333 Opcode_xsr_ccount_encode_fns, 0, 0 },
10334 { "rsr.ccompare0", ICLASS_xt_iclass_rsr_ccompare0,
10335 0,
10336 Opcode_rsr_ccompare0_encode_fns, 0, 0 },
10337 { "wsr.ccompare0", ICLASS_xt_iclass_wsr_ccompare0,
10338 0,
10339 Opcode_wsr_ccompare0_encode_fns, 0, 0 },
10340 { "xsr.ccompare0", ICLASS_xt_iclass_xsr_ccompare0,
10341 0,
10342 Opcode_xsr_ccompare0_encode_fns, 0, 0 },
10343 { "rsr.ccompare1", ICLASS_xt_iclass_rsr_ccompare1,
10344 0,
10345 Opcode_rsr_ccompare1_encode_fns, 0, 0 },
10346 { "wsr.ccompare1", ICLASS_xt_iclass_wsr_ccompare1,
10347 0,
10348 Opcode_wsr_ccompare1_encode_fns, 0, 0 },
10349 { "xsr.ccompare1", ICLASS_xt_iclass_xsr_ccompare1,
10350 0,
10351 Opcode_xsr_ccompare1_encode_fns, 0, 0 },
10352 { "rsr.ccompare2", ICLASS_xt_iclass_rsr_ccompare2,
10353 0,
10354 Opcode_rsr_ccompare2_encode_fns, 0, 0 },
10355 { "wsr.ccompare2", ICLASS_xt_iclass_wsr_ccompare2,
10356 0,
10357 Opcode_wsr_ccompare2_encode_fns, 0, 0 },
10358 { "xsr.ccompare2", ICLASS_xt_iclass_xsr_ccompare2,
10359 0,
10360 Opcode_xsr_ccompare2_encode_fns, 0, 0 },
10361 { "ipf", ICLASS_xt_iclass_icache,
10362 0,
10363 Opcode_ipf_encode_fns, 0, 0 },
10364 { "ihi", ICLASS_xt_iclass_icache,
10365 0,
10366 Opcode_ihi_encode_fns, 0, 0 },
10367 { "ipfl", ICLASS_xt_iclass_icache_lock,
10368 0,
10369 Opcode_ipfl_encode_fns, 0, 0 },
10370 { "ihu", ICLASS_xt_iclass_icache_lock,
10371 0,
10372 Opcode_ihu_encode_fns, 0, 0 },
10373 { "iiu", ICLASS_xt_iclass_icache_lock,
10374 0,
10375 Opcode_iiu_encode_fns, 0, 0 },
10376 { "iii", ICLASS_xt_iclass_icache_inv,
10377 0,
10378 Opcode_iii_encode_fns, 0, 0 },
10379 { "lict", ICLASS_xt_iclass_licx,
10380 0,
10381 Opcode_lict_encode_fns, 0, 0 },
10382 { "licw", ICLASS_xt_iclass_licx,
10383 0,
10384 Opcode_licw_encode_fns, 0, 0 },
10385 { "sict", ICLASS_xt_iclass_sicx,
10386 0,
10387 Opcode_sict_encode_fns, 0, 0 },
10388 { "sicw", ICLASS_xt_iclass_sicx,
10389 0,
10390 Opcode_sicw_encode_fns, 0, 0 },
10391 { "dhwb", ICLASS_xt_iclass_dcache,
10392 0,
10393 Opcode_dhwb_encode_fns, 0, 0 },
10394 { "dhwbi", ICLASS_xt_iclass_dcache,
10395 0,
10396 Opcode_dhwbi_encode_fns, 0, 0 },
10397 { "diwb", ICLASS_xt_iclass_dcache_ind,
10398 0,
10399 Opcode_diwb_encode_fns, 0, 0 },
10400 { "diwbi", ICLASS_xt_iclass_dcache_ind,
10401 0,
10402 Opcode_diwbi_encode_fns, 0, 0 },
10403 { "dhi", ICLASS_xt_iclass_dcache_inv,
10404 0,
10405 Opcode_dhi_encode_fns, 0, 0 },
10406 { "dii", ICLASS_xt_iclass_dcache_inv,
10407 0,
10408 Opcode_dii_encode_fns, 0, 0 },
10409 { "dpfr", ICLASS_xt_iclass_dpf,
10410 0,
10411 Opcode_dpfr_encode_fns, 0, 0 },
10412 { "dpfw", ICLASS_xt_iclass_dpf,
10413 0,
10414 Opcode_dpfw_encode_fns, 0, 0 },
10415 { "dpfro", ICLASS_xt_iclass_dpf,
10416 0,
10417 Opcode_dpfro_encode_fns, 0, 0 },
10418 { "dpfwo", ICLASS_xt_iclass_dpf,
10419 0,
10420 Opcode_dpfwo_encode_fns, 0, 0 },
10421 { "dpfl", ICLASS_xt_iclass_dcache_lock,
10422 0,
10423 Opcode_dpfl_encode_fns, 0, 0 },
10424 { "dhu", ICLASS_xt_iclass_dcache_lock,
10425 0,
10426 Opcode_dhu_encode_fns, 0, 0 },
10427 { "diu", ICLASS_xt_iclass_dcache_lock,
10428 0,
10429 Opcode_diu_encode_fns, 0, 0 },
10430 { "sdct", ICLASS_xt_iclass_sdct,
10431 0,
10432 Opcode_sdct_encode_fns, 0, 0 },
10433 { "ldct", ICLASS_xt_iclass_ldct,
10434 0,
10435 Opcode_ldct_encode_fns, 0, 0 },
10436 { "wsr.ptevaddr", ICLASS_xt_iclass_wsr_ptevaddr,
10437 0,
10438 Opcode_wsr_ptevaddr_encode_fns, 0, 0 },
10439 { "rsr.ptevaddr", ICLASS_xt_iclass_rsr_ptevaddr,
10440 0,
10441 Opcode_rsr_ptevaddr_encode_fns, 0, 0 },
10442 { "xsr.ptevaddr", ICLASS_xt_iclass_xsr_ptevaddr,
10443 0,
10444 Opcode_xsr_ptevaddr_encode_fns, 0, 0 },
10445 { "rsr.rasid", ICLASS_xt_iclass_rsr_rasid,
10446 0,
10447 Opcode_rsr_rasid_encode_fns, 0, 0 },
10448 { "wsr.rasid", ICLASS_xt_iclass_wsr_rasid,
10449 0,
10450 Opcode_wsr_rasid_encode_fns, 0, 0 },
10451 { "xsr.rasid", ICLASS_xt_iclass_xsr_rasid,
10452 0,
10453 Opcode_xsr_rasid_encode_fns, 0, 0 },
10454 { "rsr.itlbcfg", ICLASS_xt_iclass_rsr_itlbcfg,
10455 0,
10456 Opcode_rsr_itlbcfg_encode_fns, 0, 0 },
10457 { "wsr.itlbcfg", ICLASS_xt_iclass_wsr_itlbcfg,
10458 0,
10459 Opcode_wsr_itlbcfg_encode_fns, 0, 0 },
10460 { "xsr.itlbcfg", ICLASS_xt_iclass_xsr_itlbcfg,
10461 0,
10462 Opcode_xsr_itlbcfg_encode_fns, 0, 0 },
10463 { "rsr.dtlbcfg", ICLASS_xt_iclass_rsr_dtlbcfg,
10464 0,
10465 Opcode_rsr_dtlbcfg_encode_fns, 0, 0 },
10466 { "wsr.dtlbcfg", ICLASS_xt_iclass_wsr_dtlbcfg,
10467 0,
10468 Opcode_wsr_dtlbcfg_encode_fns, 0, 0 },
10469 { "xsr.dtlbcfg", ICLASS_xt_iclass_xsr_dtlbcfg,
10470 0,
10471 Opcode_xsr_dtlbcfg_encode_fns, 0, 0 },
10472 { "idtlb", ICLASS_xt_iclass_idtlb,
10473 0,
10474 Opcode_idtlb_encode_fns, 0, 0 },
10475 { "pdtlb", ICLASS_xt_iclass_rdtlb,
10476 0,
10477 Opcode_pdtlb_encode_fns, 0, 0 },
10478 { "rdtlb0", ICLASS_xt_iclass_rdtlb,
10479 0,
10480 Opcode_rdtlb0_encode_fns, 0, 0 },
10481 { "rdtlb1", ICLASS_xt_iclass_rdtlb,
10482 0,
10483 Opcode_rdtlb1_encode_fns, 0, 0 },
10484 { "wdtlb", ICLASS_xt_iclass_wdtlb,
10485 0,
10486 Opcode_wdtlb_encode_fns, 0, 0 },
10487 { "iitlb", ICLASS_xt_iclass_iitlb,
10488 0,
10489 Opcode_iitlb_encode_fns, 0, 0 },
10490 { "pitlb", ICLASS_xt_iclass_ritlb,
10491 0,
10492 Opcode_pitlb_encode_fns, 0, 0 },
10493 { "ritlb0", ICLASS_xt_iclass_ritlb,
10494 0,
10495 Opcode_ritlb0_encode_fns, 0, 0 },
10496 { "ritlb1", ICLASS_xt_iclass_ritlb,
10497 0,
10498 Opcode_ritlb1_encode_fns, 0, 0 },
10499 { "witlb", ICLASS_xt_iclass_witlb,
10500 0,
10501 Opcode_witlb_encode_fns, 0, 0 },
10502 { "ldpte", ICLASS_xt_iclass_ldpte,
10503 0,
10504 Opcode_ldpte_encode_fns, 0, 0 },
10505 { "hwwitlba", ICLASS_xt_iclass_hwwitlba,
10506 XTENSA_OPCODE_IS_BRANCH,
10507 Opcode_hwwitlba_encode_fns, 0, 0 },
10508 { "hwwdtlba", ICLASS_xt_iclass_hwwdtlba,
10509 0,
10510 Opcode_hwwdtlba_encode_fns, 0, 0 },
10511 { "rsr.cpenable", ICLASS_xt_iclass_rsr_cpenable,
10512 0,
10513 Opcode_rsr_cpenable_encode_fns, 0, 0 },
10514 { "wsr.cpenable", ICLASS_xt_iclass_wsr_cpenable,
10515 0,
10516 Opcode_wsr_cpenable_encode_fns, 0, 0 },
10517 { "xsr.cpenable", ICLASS_xt_iclass_xsr_cpenable,
10518 0,
10519 Opcode_xsr_cpenable_encode_fns, 0, 0 },
10520 { "clamps", ICLASS_xt_iclass_clamp,
10521 0,
10522 Opcode_clamps_encode_fns, 0, 0 },
10523 { "min", ICLASS_xt_iclass_minmax,
10524 0,
10525 Opcode_min_encode_fns, 0, 0 },
10526 { "max", ICLASS_xt_iclass_minmax,
10527 0,
10528 Opcode_max_encode_fns, 0, 0 },
10529 { "minu", ICLASS_xt_iclass_minmax,
10530 0,
10531 Opcode_minu_encode_fns, 0, 0 },
10532 { "maxu", ICLASS_xt_iclass_minmax,
10533 0,
10534 Opcode_maxu_encode_fns, 0, 0 },
10535 { "nsa", ICLASS_xt_iclass_nsa,
10536 0,
10537 Opcode_nsa_encode_fns, 0, 0 },
10538 { "nsau", ICLASS_xt_iclass_nsa,
10539 0,
10540 Opcode_nsau_encode_fns, 0, 0 },
10541 { "sext", ICLASS_xt_iclass_sx,
10542 0,
10543 Opcode_sext_encode_fns, 0, 0 },
10544 { "l32ai", ICLASS_xt_iclass_l32ai,
10545 0,
10546 Opcode_l32ai_encode_fns, 0, 0 },
10547 { "s32ri", ICLASS_xt_iclass_s32ri,
10548 0,
10549 Opcode_s32ri_encode_fns, 0, 0 },
10550 { "s32c1i", ICLASS_xt_iclass_s32c1i,
10551 0,
10552 Opcode_s32c1i_encode_fns, 0, 0 },
10553 { "rsr.scompare1", ICLASS_xt_iclass_rsr_scompare1,
10554 0,
10555 Opcode_rsr_scompare1_encode_fns, 0, 0 },
10556 { "wsr.scompare1", ICLASS_xt_iclass_wsr_scompare1,
10557 0,
10558 Opcode_wsr_scompare1_encode_fns, 0, 0 },
10559 { "xsr.scompare1", ICLASS_xt_iclass_xsr_scompare1,
10560 0,
10561 Opcode_xsr_scompare1_encode_fns, 0, 0 },
10562 { "quou", ICLASS_xt_iclass_div,
10563 0,
10564 Opcode_quou_encode_fns, 0, 0 },
10565 { "quos", ICLASS_xt_iclass_div,
10566 0,
10567 Opcode_quos_encode_fns, 0, 0 },
10568 { "remu", ICLASS_xt_iclass_div,
10569 0,
10570 Opcode_remu_encode_fns, 0, 0 },
10571 { "rems", ICLASS_xt_iclass_div,
10572 0,
10573 Opcode_rems_encode_fns, 0, 0 },
10574 { "mull", ICLASS_xt_mul32,
10575 0,
10576 Opcode_mull_encode_fns, 0, 0 }
10577 };
10578
10579 enum xtensa_opcode_id {
10580 OPCODE_EXCW,
10581 OPCODE_RFE,
10582 OPCODE_RFDE,
10583 OPCODE_SYSCALL,
10584 OPCODE_SIMCALL,
10585 OPCODE_CALL12,
10586 OPCODE_CALL8,
10587 OPCODE_CALL4,
10588 OPCODE_CALLX12,
10589 OPCODE_CALLX8,
10590 OPCODE_CALLX4,
10591 OPCODE_ENTRY,
10592 OPCODE_MOVSP,
10593 OPCODE_ROTW,
10594 OPCODE_RETW,
10595 OPCODE_RETW_N,
10596 OPCODE_RFWO,
10597 OPCODE_RFWU,
10598 OPCODE_L32E,
10599 OPCODE_S32E,
10600 OPCODE_RSR_WINDOWBASE,
10601 OPCODE_WSR_WINDOWBASE,
10602 OPCODE_XSR_WINDOWBASE,
10603 OPCODE_RSR_WINDOWSTART,
10604 OPCODE_WSR_WINDOWSTART,
10605 OPCODE_XSR_WINDOWSTART,
10606 OPCODE_ADD_N,
10607 OPCODE_ADDI_N,
10608 OPCODE_BEQZ_N,
10609 OPCODE_BNEZ_N,
10610 OPCODE_ILL_N,
10611 OPCODE_L32I_N,
10612 OPCODE_MOV_N,
10613 OPCODE_MOVI_N,
10614 OPCODE_NOP_N,
10615 OPCODE_RET_N,
10616 OPCODE_S32I_N,
10617 OPCODE_RUR_THREADPTR,
10618 OPCODE_WUR_THREADPTR,
10619 OPCODE_ADDI,
10620 OPCODE_ADDMI,
10621 OPCODE_ADD,
10622 OPCODE_SUB,
10623 OPCODE_ADDX2,
10624 OPCODE_ADDX4,
10625 OPCODE_ADDX8,
10626 OPCODE_SUBX2,
10627 OPCODE_SUBX4,
10628 OPCODE_SUBX8,
10629 OPCODE_AND,
10630 OPCODE_OR,
10631 OPCODE_XOR,
10632 OPCODE_BEQI,
10633 OPCODE_BNEI,
10634 OPCODE_BGEI,
10635 OPCODE_BLTI,
10636 OPCODE_BBCI,
10637 OPCODE_BBSI,
10638 OPCODE_BGEUI,
10639 OPCODE_BLTUI,
10640 OPCODE_BEQ,
10641 OPCODE_BNE,
10642 OPCODE_BGE,
10643 OPCODE_BLT,
10644 OPCODE_BGEU,
10645 OPCODE_BLTU,
10646 OPCODE_BANY,
10647 OPCODE_BNONE,
10648 OPCODE_BALL,
10649 OPCODE_BNALL,
10650 OPCODE_BBC,
10651 OPCODE_BBS,
10652 OPCODE_BEQZ,
10653 OPCODE_BNEZ,
10654 OPCODE_BGEZ,
10655 OPCODE_BLTZ,
10656 OPCODE_CALL0,
10657 OPCODE_CALLX0,
10658 OPCODE_EXTUI,
10659 OPCODE_ILL,
10660 OPCODE_J,
10661 OPCODE_JX,
10662 OPCODE_L16UI,
10663 OPCODE_L16SI,
10664 OPCODE_L32I,
10665 OPCODE_L32R,
10666 OPCODE_L8UI,
10667 OPCODE_LOOP,
10668 OPCODE_LOOPNEZ,
10669 OPCODE_LOOPGTZ,
10670 OPCODE_MOVI,
10671 OPCODE_MOVEQZ,
10672 OPCODE_MOVNEZ,
10673 OPCODE_MOVLTZ,
10674 OPCODE_MOVGEZ,
10675 OPCODE_NEG,
10676 OPCODE_ABS,
10677 OPCODE_NOP,
10678 OPCODE_RET,
10679 OPCODE_S16I,
10680 OPCODE_S32I,
10681 OPCODE_S8I,
10682 OPCODE_SSR,
10683 OPCODE_SSL,
10684 OPCODE_SSA8L,
10685 OPCODE_SSA8B,
10686 OPCODE_SSAI,
10687 OPCODE_SLL,
10688 OPCODE_SRC,
10689 OPCODE_SRL,
10690 OPCODE_SRA,
10691 OPCODE_SLLI,
10692 OPCODE_SRAI,
10693 OPCODE_SRLI,
10694 OPCODE_MEMW,
10695 OPCODE_EXTW,
10696 OPCODE_ISYNC,
10697 OPCODE_RSYNC,
10698 OPCODE_ESYNC,
10699 OPCODE_DSYNC,
10700 OPCODE_RSIL,
10701 OPCODE_RSR_LEND,
10702 OPCODE_WSR_LEND,
10703 OPCODE_XSR_LEND,
10704 OPCODE_RSR_LCOUNT,
10705 OPCODE_WSR_LCOUNT,
10706 OPCODE_XSR_LCOUNT,
10707 OPCODE_RSR_LBEG,
10708 OPCODE_WSR_LBEG,
10709 OPCODE_XSR_LBEG,
10710 OPCODE_RSR_SAR,
10711 OPCODE_WSR_SAR,
10712 OPCODE_XSR_SAR,
10713 OPCODE_RSR_LITBASE,
10714 OPCODE_WSR_LITBASE,
10715 OPCODE_XSR_LITBASE,
10716 OPCODE_RSR_176,
10717 OPCODE_WSR_176,
10718 OPCODE_RSR_208,
10719 OPCODE_RSR_PS,
10720 OPCODE_WSR_PS,
10721 OPCODE_XSR_PS,
10722 OPCODE_RSR_EPC1,
10723 OPCODE_WSR_EPC1,
10724 OPCODE_XSR_EPC1,
10725 OPCODE_RSR_EXCSAVE1,
10726 OPCODE_WSR_EXCSAVE1,
10727 OPCODE_XSR_EXCSAVE1,
10728 OPCODE_RSR_EPC2,
10729 OPCODE_WSR_EPC2,
10730 OPCODE_XSR_EPC2,
10731 OPCODE_RSR_EXCSAVE2,
10732 OPCODE_WSR_EXCSAVE2,
10733 OPCODE_XSR_EXCSAVE2,
10734 OPCODE_RSR_EPC3,
10735 OPCODE_WSR_EPC3,
10736 OPCODE_XSR_EPC3,
10737 OPCODE_RSR_EXCSAVE3,
10738 OPCODE_WSR_EXCSAVE3,
10739 OPCODE_XSR_EXCSAVE3,
10740 OPCODE_RSR_EPC4,
10741 OPCODE_WSR_EPC4,
10742 OPCODE_XSR_EPC4,
10743 OPCODE_RSR_EXCSAVE4,
10744 OPCODE_WSR_EXCSAVE4,
10745 OPCODE_XSR_EXCSAVE4,
10746 OPCODE_RSR_EPC5,
10747 OPCODE_WSR_EPC5,
10748 OPCODE_XSR_EPC5,
10749 OPCODE_RSR_EXCSAVE5,
10750 OPCODE_WSR_EXCSAVE5,
10751 OPCODE_XSR_EXCSAVE5,
10752 OPCODE_RSR_EPC6,
10753 OPCODE_WSR_EPC6,
10754 OPCODE_XSR_EPC6,
10755 OPCODE_RSR_EXCSAVE6,
10756 OPCODE_WSR_EXCSAVE6,
10757 OPCODE_XSR_EXCSAVE6,
10758 OPCODE_RSR_EPC7,
10759 OPCODE_WSR_EPC7,
10760 OPCODE_XSR_EPC7,
10761 OPCODE_RSR_EXCSAVE7,
10762 OPCODE_WSR_EXCSAVE7,
10763 OPCODE_XSR_EXCSAVE7,
10764 OPCODE_RSR_EPS2,
10765 OPCODE_WSR_EPS2,
10766 OPCODE_XSR_EPS2,
10767 OPCODE_RSR_EPS3,
10768 OPCODE_WSR_EPS3,
10769 OPCODE_XSR_EPS3,
10770 OPCODE_RSR_EPS4,
10771 OPCODE_WSR_EPS4,
10772 OPCODE_XSR_EPS4,
10773 OPCODE_RSR_EPS5,
10774 OPCODE_WSR_EPS5,
10775 OPCODE_XSR_EPS5,
10776 OPCODE_RSR_EPS6,
10777 OPCODE_WSR_EPS6,
10778 OPCODE_XSR_EPS6,
10779 OPCODE_RSR_EPS7,
10780 OPCODE_WSR_EPS7,
10781 OPCODE_XSR_EPS7,
10782 OPCODE_RSR_EXCVADDR,
10783 OPCODE_WSR_EXCVADDR,
10784 OPCODE_XSR_EXCVADDR,
10785 OPCODE_RSR_DEPC,
10786 OPCODE_WSR_DEPC,
10787 OPCODE_XSR_DEPC,
10788 OPCODE_RSR_EXCCAUSE,
10789 OPCODE_WSR_EXCCAUSE,
10790 OPCODE_XSR_EXCCAUSE,
10791 OPCODE_RSR_MISC0,
10792 OPCODE_WSR_MISC0,
10793 OPCODE_XSR_MISC0,
10794 OPCODE_RSR_MISC1,
10795 OPCODE_WSR_MISC1,
10796 OPCODE_XSR_MISC1,
10797 OPCODE_RSR_PRID,
10798 OPCODE_RSR_VECBASE,
10799 OPCODE_WSR_VECBASE,
10800 OPCODE_XSR_VECBASE,
10801 OPCODE_MUL16U,
10802 OPCODE_MUL16S,
10803 OPCODE_RFI,
10804 OPCODE_WAITI,
10805 OPCODE_RSR_INTERRUPT,
10806 OPCODE_WSR_INTSET,
10807 OPCODE_WSR_INTCLEAR,
10808 OPCODE_RSR_INTENABLE,
10809 OPCODE_WSR_INTENABLE,
10810 OPCODE_XSR_INTENABLE,
10811 OPCODE_BREAK,
10812 OPCODE_BREAK_N,
10813 OPCODE_RSR_DBREAKA0,
10814 OPCODE_WSR_DBREAKA0,
10815 OPCODE_XSR_DBREAKA0,
10816 OPCODE_RSR_DBREAKC0,
10817 OPCODE_WSR_DBREAKC0,
10818 OPCODE_XSR_DBREAKC0,
10819 OPCODE_RSR_DBREAKA1,
10820 OPCODE_WSR_DBREAKA1,
10821 OPCODE_XSR_DBREAKA1,
10822 OPCODE_RSR_DBREAKC1,
10823 OPCODE_WSR_DBREAKC1,
10824 OPCODE_XSR_DBREAKC1,
10825 OPCODE_RSR_IBREAKA0,
10826 OPCODE_WSR_IBREAKA0,
10827 OPCODE_XSR_IBREAKA0,
10828 OPCODE_RSR_IBREAKA1,
10829 OPCODE_WSR_IBREAKA1,
10830 OPCODE_XSR_IBREAKA1,
10831 OPCODE_RSR_IBREAKENABLE,
10832 OPCODE_WSR_IBREAKENABLE,
10833 OPCODE_XSR_IBREAKENABLE,
10834 OPCODE_RSR_DEBUGCAUSE,
10835 OPCODE_WSR_DEBUGCAUSE,
10836 OPCODE_XSR_DEBUGCAUSE,
10837 OPCODE_RSR_ICOUNT,
10838 OPCODE_WSR_ICOUNT,
10839 OPCODE_XSR_ICOUNT,
10840 OPCODE_RSR_ICOUNTLEVEL,
10841 OPCODE_WSR_ICOUNTLEVEL,
10842 OPCODE_XSR_ICOUNTLEVEL,
10843 OPCODE_RSR_DDR,
10844 OPCODE_WSR_DDR,
10845 OPCODE_XSR_DDR,
10846 OPCODE_RFDO,
10847 OPCODE_RFDD,
10848 OPCODE_WSR_MMID,
10849 OPCODE_RSR_CCOUNT,
10850 OPCODE_WSR_CCOUNT,
10851 OPCODE_XSR_CCOUNT,
10852 OPCODE_RSR_CCOMPARE0,
10853 OPCODE_WSR_CCOMPARE0,
10854 OPCODE_XSR_CCOMPARE0,
10855 OPCODE_RSR_CCOMPARE1,
10856 OPCODE_WSR_CCOMPARE1,
10857 OPCODE_XSR_CCOMPARE1,
10858 OPCODE_RSR_CCOMPARE2,
10859 OPCODE_WSR_CCOMPARE2,
10860 OPCODE_XSR_CCOMPARE2,
10861 OPCODE_IPF,
10862 OPCODE_IHI,
10863 OPCODE_IPFL,
10864 OPCODE_IHU,
10865 OPCODE_IIU,
10866 OPCODE_III,
10867 OPCODE_LICT,
10868 OPCODE_LICW,
10869 OPCODE_SICT,
10870 OPCODE_SICW,
10871 OPCODE_DHWB,
10872 OPCODE_DHWBI,
10873 OPCODE_DIWB,
10874 OPCODE_DIWBI,
10875 OPCODE_DHI,
10876 OPCODE_DII,
10877 OPCODE_DPFR,
10878 OPCODE_DPFW,
10879 OPCODE_DPFRO,
10880 OPCODE_DPFWO,
10881 OPCODE_DPFL,
10882 OPCODE_DHU,
10883 OPCODE_DIU,
10884 OPCODE_SDCT,
10885 OPCODE_LDCT,
10886 OPCODE_WSR_PTEVADDR,
10887 OPCODE_RSR_PTEVADDR,
10888 OPCODE_XSR_PTEVADDR,
10889 OPCODE_RSR_RASID,
10890 OPCODE_WSR_RASID,
10891 OPCODE_XSR_RASID,
10892 OPCODE_RSR_ITLBCFG,
10893 OPCODE_WSR_ITLBCFG,
10894 OPCODE_XSR_ITLBCFG,
10895 OPCODE_RSR_DTLBCFG,
10896 OPCODE_WSR_DTLBCFG,
10897 OPCODE_XSR_DTLBCFG,
10898 OPCODE_IDTLB,
10899 OPCODE_PDTLB,
10900 OPCODE_RDTLB0,
10901 OPCODE_RDTLB1,
10902 OPCODE_WDTLB,
10903 OPCODE_IITLB,
10904 OPCODE_PITLB,
10905 OPCODE_RITLB0,
10906 OPCODE_RITLB1,
10907 OPCODE_WITLB,
10908 OPCODE_LDPTE,
10909 OPCODE_HWWITLBA,
10910 OPCODE_HWWDTLBA,
10911 OPCODE_RSR_CPENABLE,
10912 OPCODE_WSR_CPENABLE,
10913 OPCODE_XSR_CPENABLE,
10914 OPCODE_CLAMPS,
10915 OPCODE_MIN,
10916 OPCODE_MAX,
10917 OPCODE_MINU,
10918 OPCODE_MAXU,
10919 OPCODE_NSA,
10920 OPCODE_NSAU,
10921 OPCODE_SEXT,
10922 OPCODE_L32AI,
10923 OPCODE_S32RI,
10924 OPCODE_S32C1I,
10925 OPCODE_RSR_SCOMPARE1,
10926 OPCODE_WSR_SCOMPARE1,
10927 OPCODE_XSR_SCOMPARE1,
10928 OPCODE_QUOU,
10929 OPCODE_QUOS,
10930 OPCODE_REMU,
10931 OPCODE_REMS,
10932 OPCODE_MULL
10933 };
10934
10935 \f
10936 /* Slot-specific opcode decode functions. */
10937
10938 static int
10939 Slot_inst_decode (const xtensa_insnbuf insn)
10940 {
10941 switch (Field_op0_Slot_inst_get (insn))
10942 {
10943 case 0:
10944 switch (Field_op1_Slot_inst_get (insn))
10945 {
10946 case 0:
10947 switch (Field_op2_Slot_inst_get (insn))
10948 {
10949 case 0:
10950 switch (Field_r_Slot_inst_get (insn))
10951 {
10952 case 0:
10953 switch (Field_m_Slot_inst_get (insn))
10954 {
10955 case 0:
10956 if (Field_s_Slot_inst_get (insn) == 0 &&
10957 Field_n_Slot_inst_get (insn) == 0)
10958 return OPCODE_ILL;
10959 break;
10960 case 2:
10961 switch (Field_n_Slot_inst_get (insn))
10962 {
10963 case 0:
10964 return OPCODE_RET;
10965 case 1:
10966 return OPCODE_RETW;
10967 case 2:
10968 return OPCODE_JX;
10969 }
10970 break;
10971 case 3:
10972 switch (Field_n_Slot_inst_get (insn))
10973 {
10974 case 0:
10975 return OPCODE_CALLX0;
10976 case 1:
10977 return OPCODE_CALLX4;
10978 case 2:
10979 return OPCODE_CALLX8;
10980 case 3:
10981 return OPCODE_CALLX12;
10982 }
10983 break;
10984 }
10985 break;
10986 case 1:
10987 return OPCODE_MOVSP;
10988 case 2:
10989 if (Field_s_Slot_inst_get (insn) == 0)
10990 {
10991 switch (Field_t_Slot_inst_get (insn))
10992 {
10993 case 0:
10994 return OPCODE_ISYNC;
10995 case 1:
10996 return OPCODE_RSYNC;
10997 case 2:
10998 return OPCODE_ESYNC;
10999 case 3:
11000 return OPCODE_DSYNC;
11001 case 8:
11002 return OPCODE_EXCW;
11003 case 12:
11004 return OPCODE_MEMW;
11005 case 13:
11006 return OPCODE_EXTW;
11007 case 15:
11008 return OPCODE_NOP;
11009 }
11010 }
11011 break;
11012 case 3:
11013 switch (Field_t_Slot_inst_get (insn))
11014 {
11015 case 0:
11016 switch (Field_s_Slot_inst_get (insn))
11017 {
11018 case 0:
11019 return OPCODE_RFE;
11020 case 2:
11021 return OPCODE_RFDE;
11022 case 4:
11023 return OPCODE_RFWO;
11024 case 5:
11025 return OPCODE_RFWU;
11026 }
11027 break;
11028 case 1:
11029 return OPCODE_RFI;
11030 }
11031 break;
11032 case 4:
11033 return OPCODE_BREAK;
11034 case 5:
11035 switch (Field_s_Slot_inst_get (insn))
11036 {
11037 case 0:
11038 if (Field_t_Slot_inst_get (insn) == 0)
11039 return OPCODE_SYSCALL;
11040 break;
11041 case 1:
11042 if (Field_t_Slot_inst_get (insn) == 0)
11043 return OPCODE_SIMCALL;
11044 break;
11045 }
11046 break;
11047 case 6:
11048 return OPCODE_RSIL;
11049 case 7:
11050 if (Field_t_Slot_inst_get (insn) == 0)
11051 return OPCODE_WAITI;
11052 break;
11053 }
11054 break;
11055 case 1:
11056 return OPCODE_AND;
11057 case 2:
11058 return OPCODE_OR;
11059 case 3:
11060 return OPCODE_XOR;
11061 case 4:
11062 switch (Field_r_Slot_inst_get (insn))
11063 {
11064 case 0:
11065 if (Field_t_Slot_inst_get (insn) == 0)
11066 return OPCODE_SSR;
11067 break;
11068 case 1:
11069 if (Field_t_Slot_inst_get (insn) == 0)
11070 return OPCODE_SSL;
11071 break;
11072 case 2:
11073 if (Field_t_Slot_inst_get (insn) == 0)
11074 return OPCODE_SSA8L;
11075 break;
11076 case 3:
11077 if (Field_t_Slot_inst_get (insn) == 0)
11078 return OPCODE_SSA8B;
11079 break;
11080 case 4:
11081 if (Field_thi3_Slot_inst_get (insn) == 0)
11082 return OPCODE_SSAI;
11083 break;
11084 case 8:
11085 if (Field_s_Slot_inst_get (insn) == 0)
11086 return OPCODE_ROTW;
11087 break;
11088 case 14:
11089 return OPCODE_NSA;
11090 case 15:
11091 return OPCODE_NSAU;
11092 }
11093 break;
11094 case 5:
11095 switch (Field_r_Slot_inst_get (insn))
11096 {
11097 case 1:
11098 return OPCODE_HWWITLBA;
11099 case 3:
11100 return OPCODE_RITLB0;
11101 case 4:
11102 if (Field_t_Slot_inst_get (insn) == 0)
11103 return OPCODE_IITLB;
11104 break;
11105 case 5:
11106 return OPCODE_PITLB;
11107 case 6:
11108 return OPCODE_WITLB;
11109 case 7:
11110 return OPCODE_RITLB1;
11111 case 9:
11112 return OPCODE_HWWDTLBA;
11113 case 11:
11114 return OPCODE_RDTLB0;
11115 case 12:
11116 if (Field_t_Slot_inst_get (insn) == 0)
11117 return OPCODE_IDTLB;
11118 break;
11119 case 13:
11120 return OPCODE_PDTLB;
11121 case 14:
11122 return OPCODE_WDTLB;
11123 case 15:
11124 return OPCODE_RDTLB1;
11125 }
11126 break;
11127 case 6:
11128 switch (Field_s_Slot_inst_get (insn))
11129 {
11130 case 0:
11131 return OPCODE_NEG;
11132 case 1:
11133 return OPCODE_ABS;
11134 }
11135 break;
11136 case 8:
11137 return OPCODE_ADD;
11138 case 9:
11139 return OPCODE_ADDX2;
11140 case 10:
11141 return OPCODE_ADDX4;
11142 case 11:
11143 return OPCODE_ADDX8;
11144 case 12:
11145 return OPCODE_SUB;
11146 case 13:
11147 return OPCODE_SUBX2;
11148 case 14:
11149 return OPCODE_SUBX4;
11150 case 15:
11151 return OPCODE_SUBX8;
11152 }
11153 break;
11154 case 1:
11155 switch (Field_op2_Slot_inst_get (insn))
11156 {
11157 case 0:
11158 case 1:
11159 return OPCODE_SLLI;
11160 case 2:
11161 case 3:
11162 return OPCODE_SRAI;
11163 case 4:
11164 return OPCODE_SRLI;
11165 case 6:
11166 switch (Field_sr_Slot_inst_get (insn))
11167 {
11168 case 0:
11169 return OPCODE_XSR_LBEG;
11170 case 1:
11171 return OPCODE_XSR_LEND;
11172 case 2:
11173 return OPCODE_XSR_LCOUNT;
11174 case 3:
11175 return OPCODE_XSR_SAR;
11176 case 5:
11177 return OPCODE_XSR_LITBASE;
11178 case 12:
11179 return OPCODE_XSR_SCOMPARE1;
11180 case 72:
11181 return OPCODE_XSR_WINDOWBASE;
11182 case 73:
11183 return OPCODE_XSR_WINDOWSTART;
11184 case 83:
11185 return OPCODE_XSR_PTEVADDR;
11186 case 90:
11187 return OPCODE_XSR_RASID;
11188 case 91:
11189 return OPCODE_XSR_ITLBCFG;
11190 case 92:
11191 return OPCODE_XSR_DTLBCFG;
11192 case 96:
11193 return OPCODE_XSR_IBREAKENABLE;
11194 case 104:
11195 return OPCODE_XSR_DDR;
11196 case 128:
11197 return OPCODE_XSR_IBREAKA0;
11198 case 129:
11199 return OPCODE_XSR_IBREAKA1;
11200 case 144:
11201 return OPCODE_XSR_DBREAKA0;
11202 case 145:
11203 return OPCODE_XSR_DBREAKA1;
11204 case 160:
11205 return OPCODE_XSR_DBREAKC0;
11206 case 161:
11207 return OPCODE_XSR_DBREAKC1;
11208 case 177:
11209 return OPCODE_XSR_EPC1;
11210 case 178:
11211 return OPCODE_XSR_EPC2;
11212 case 179:
11213 return OPCODE_XSR_EPC3;
11214 case 180:
11215 return OPCODE_XSR_EPC4;
11216 case 181:
11217 return OPCODE_XSR_EPC5;
11218 case 182:
11219 return OPCODE_XSR_EPC6;
11220 case 183:
11221 return OPCODE_XSR_EPC7;
11222 case 192:
11223 return OPCODE_XSR_DEPC;
11224 case 194:
11225 return OPCODE_XSR_EPS2;
11226 case 195:
11227 return OPCODE_XSR_EPS3;
11228 case 196:
11229 return OPCODE_XSR_EPS4;
11230 case 197:
11231 return OPCODE_XSR_EPS5;
11232 case 198:
11233 return OPCODE_XSR_EPS6;
11234 case 199:
11235 return OPCODE_XSR_EPS7;
11236 case 209:
11237 return OPCODE_XSR_EXCSAVE1;
11238 case 210:
11239 return OPCODE_XSR_EXCSAVE2;
11240 case 211:
11241 return OPCODE_XSR_EXCSAVE3;
11242 case 212:
11243 return OPCODE_XSR_EXCSAVE4;
11244 case 213:
11245 return OPCODE_XSR_EXCSAVE5;
11246 case 214:
11247 return OPCODE_XSR_EXCSAVE6;
11248 case 215:
11249 return OPCODE_XSR_EXCSAVE7;
11250 case 224:
11251 return OPCODE_XSR_CPENABLE;
11252 case 228:
11253 return OPCODE_XSR_INTENABLE;
11254 case 230:
11255 return OPCODE_XSR_PS;
11256 case 231:
11257 return OPCODE_XSR_VECBASE;
11258 case 232:
11259 return OPCODE_XSR_EXCCAUSE;
11260 case 233:
11261 return OPCODE_XSR_DEBUGCAUSE;
11262 case 234:
11263 return OPCODE_XSR_CCOUNT;
11264 case 236:
11265 return OPCODE_XSR_ICOUNT;
11266 case 237:
11267 return OPCODE_XSR_ICOUNTLEVEL;
11268 case 238:
11269 return OPCODE_XSR_EXCVADDR;
11270 case 240:
11271 return OPCODE_XSR_CCOMPARE0;
11272 case 241:
11273 return OPCODE_XSR_CCOMPARE1;
11274 case 242:
11275 return OPCODE_XSR_CCOMPARE2;
11276 case 244:
11277 return OPCODE_XSR_MISC0;
11278 case 245:
11279 return OPCODE_XSR_MISC1;
11280 }
11281 break;
11282 case 8:
11283 return OPCODE_SRC;
11284 case 9:
11285 if (Field_s_Slot_inst_get (insn) == 0)
11286 return OPCODE_SRL;
11287 break;
11288 case 10:
11289 if (Field_t_Slot_inst_get (insn) == 0)
11290 return OPCODE_SLL;
11291 break;
11292 case 11:
11293 if (Field_s_Slot_inst_get (insn) == 0)
11294 return OPCODE_SRA;
11295 break;
11296 case 12:
11297 return OPCODE_MUL16U;
11298 case 13:
11299 return OPCODE_MUL16S;
11300 case 15:
11301 switch (Field_r_Slot_inst_get (insn))
11302 {
11303 case 0:
11304 return OPCODE_LICT;
11305 case 1:
11306 return OPCODE_SICT;
11307 case 2:
11308 return OPCODE_LICW;
11309 case 3:
11310 return OPCODE_SICW;
11311 case 8:
11312 return OPCODE_LDCT;
11313 case 9:
11314 return OPCODE_SDCT;
11315 case 14:
11316 if (Field_t_Slot_inst_get (insn) == 0)
11317 return OPCODE_RFDO;
11318 if (Field_t_Slot_inst_get (insn) == 1)
11319 return OPCODE_RFDD;
11320 break;
11321 case 15:
11322 return OPCODE_LDPTE;
11323 }
11324 break;
11325 }
11326 break;
11327 case 2:
11328 switch (Field_op2_Slot_inst_get (insn))
11329 {
11330 case 8:
11331 return OPCODE_MULL;
11332 case 12:
11333 return OPCODE_QUOU;
11334 case 13:
11335 return OPCODE_QUOS;
11336 case 14:
11337 return OPCODE_REMU;
11338 case 15:
11339 return OPCODE_REMS;
11340 }
11341 break;
11342 case 3:
11343 switch (Field_op2_Slot_inst_get (insn))
11344 {
11345 case 0:
11346 switch (Field_sr_Slot_inst_get (insn))
11347 {
11348 case 0:
11349 return OPCODE_RSR_LBEG;
11350 case 1:
11351 return OPCODE_RSR_LEND;
11352 case 2:
11353 return OPCODE_RSR_LCOUNT;
11354 case 3:
11355 return OPCODE_RSR_SAR;
11356 case 5:
11357 return OPCODE_RSR_LITBASE;
11358 case 12:
11359 return OPCODE_RSR_SCOMPARE1;
11360 case 72:
11361 return OPCODE_RSR_WINDOWBASE;
11362 case 73:
11363 return OPCODE_RSR_WINDOWSTART;
11364 case 83:
11365 return OPCODE_RSR_PTEVADDR;
11366 case 90:
11367 return OPCODE_RSR_RASID;
11368 case 91:
11369 return OPCODE_RSR_ITLBCFG;
11370 case 92:
11371 return OPCODE_RSR_DTLBCFG;
11372 case 96:
11373 return OPCODE_RSR_IBREAKENABLE;
11374 case 104:
11375 return OPCODE_RSR_DDR;
11376 case 128:
11377 return OPCODE_RSR_IBREAKA0;
11378 case 129:
11379 return OPCODE_RSR_IBREAKA1;
11380 case 144:
11381 return OPCODE_RSR_DBREAKA0;
11382 case 145:
11383 return OPCODE_RSR_DBREAKA1;
11384 case 160:
11385 return OPCODE_RSR_DBREAKC0;
11386 case 161:
11387 return OPCODE_RSR_DBREAKC1;
11388 case 176:
11389 return OPCODE_RSR_176;
11390 case 177:
11391 return OPCODE_RSR_EPC1;
11392 case 178:
11393 return OPCODE_RSR_EPC2;
11394 case 179:
11395 return OPCODE_RSR_EPC3;
11396 case 180:
11397 return OPCODE_RSR_EPC4;
11398 case 181:
11399 return OPCODE_RSR_EPC5;
11400 case 182:
11401 return OPCODE_RSR_EPC6;
11402 case 183:
11403 return OPCODE_RSR_EPC7;
11404 case 192:
11405 return OPCODE_RSR_DEPC;
11406 case 194:
11407 return OPCODE_RSR_EPS2;
11408 case 195:
11409 return OPCODE_RSR_EPS3;
11410 case 196:
11411 return OPCODE_RSR_EPS4;
11412 case 197:
11413 return OPCODE_RSR_EPS5;
11414 case 198:
11415 return OPCODE_RSR_EPS6;
11416 case 199:
11417 return OPCODE_RSR_EPS7;
11418 case 208:
11419 return OPCODE_RSR_208;
11420 case 209:
11421 return OPCODE_RSR_EXCSAVE1;
11422 case 210:
11423 return OPCODE_RSR_EXCSAVE2;
11424 case 211:
11425 return OPCODE_RSR_EXCSAVE3;
11426 case 212:
11427 return OPCODE_RSR_EXCSAVE4;
11428 case 213:
11429 return OPCODE_RSR_EXCSAVE5;
11430 case 214:
11431 return OPCODE_RSR_EXCSAVE6;
11432 case 215:
11433 return OPCODE_RSR_EXCSAVE7;
11434 case 224:
11435 return OPCODE_RSR_CPENABLE;
11436 case 226:
11437 return OPCODE_RSR_INTERRUPT;
11438 case 228:
11439 return OPCODE_RSR_INTENABLE;
11440 case 230:
11441 return OPCODE_RSR_PS;
11442 case 231:
11443 return OPCODE_RSR_VECBASE;
11444 case 232:
11445 return OPCODE_RSR_EXCCAUSE;
11446 case 233:
11447 return OPCODE_RSR_DEBUGCAUSE;
11448 case 234:
11449 return OPCODE_RSR_CCOUNT;
11450 case 235:
11451 return OPCODE_RSR_PRID;
11452 case 236:
11453 return OPCODE_RSR_ICOUNT;
11454 case 237:
11455 return OPCODE_RSR_ICOUNTLEVEL;
11456 case 238:
11457 return OPCODE_RSR_EXCVADDR;
11458 case 240:
11459 return OPCODE_RSR_CCOMPARE0;
11460 case 241:
11461 return OPCODE_RSR_CCOMPARE1;
11462 case 242:
11463 return OPCODE_RSR_CCOMPARE2;
11464 case 244:
11465 return OPCODE_RSR_MISC0;
11466 case 245:
11467 return OPCODE_RSR_MISC1;
11468 }
11469 break;
11470 case 1:
11471 switch (Field_sr_Slot_inst_get (insn))
11472 {
11473 case 0:
11474 return OPCODE_WSR_LBEG;
11475 case 1:
11476 return OPCODE_WSR_LEND;
11477 case 2:
11478 return OPCODE_WSR_LCOUNT;
11479 case 3:
11480 return OPCODE_WSR_SAR;
11481 case 5:
11482 return OPCODE_WSR_LITBASE;
11483 case 12:
11484 return OPCODE_WSR_SCOMPARE1;
11485 case 72:
11486 return OPCODE_WSR_WINDOWBASE;
11487 case 73:
11488 return OPCODE_WSR_WINDOWSTART;
11489 case 83:
11490 return OPCODE_WSR_PTEVADDR;
11491 case 89:
11492 return OPCODE_WSR_MMID;
11493 case 90:
11494 return OPCODE_WSR_RASID;
11495 case 91:
11496 return OPCODE_WSR_ITLBCFG;
11497 case 92:
11498 return OPCODE_WSR_DTLBCFG;
11499 case 96:
11500 return OPCODE_WSR_IBREAKENABLE;
11501 case 104:
11502 return OPCODE_WSR_DDR;
11503 case 128:
11504 return OPCODE_WSR_IBREAKA0;
11505 case 129:
11506 return OPCODE_WSR_IBREAKA1;
11507 case 144:
11508 return OPCODE_WSR_DBREAKA0;
11509 case 145:
11510 return OPCODE_WSR_DBREAKA1;
11511 case 160:
11512 return OPCODE_WSR_DBREAKC0;
11513 case 161:
11514 return OPCODE_WSR_DBREAKC1;
11515 case 176:
11516 return OPCODE_WSR_176;
11517 case 177:
11518 return OPCODE_WSR_EPC1;
11519 case 178:
11520 return OPCODE_WSR_EPC2;
11521 case 179:
11522 return OPCODE_WSR_EPC3;
11523 case 180:
11524 return OPCODE_WSR_EPC4;
11525 case 181:
11526 return OPCODE_WSR_EPC5;
11527 case 182:
11528 return OPCODE_WSR_EPC6;
11529 case 183:
11530 return OPCODE_WSR_EPC7;
11531 case 192:
11532 return OPCODE_WSR_DEPC;
11533 case 194:
11534 return OPCODE_WSR_EPS2;
11535 case 195:
11536 return OPCODE_WSR_EPS3;
11537 case 196:
11538 return OPCODE_WSR_EPS4;
11539 case 197:
11540 return OPCODE_WSR_EPS5;
11541 case 198:
11542 return OPCODE_WSR_EPS6;
11543 case 199:
11544 return OPCODE_WSR_EPS7;
11545 case 209:
11546 return OPCODE_WSR_EXCSAVE1;
11547 case 210:
11548 return OPCODE_WSR_EXCSAVE2;
11549 case 211:
11550 return OPCODE_WSR_EXCSAVE3;
11551 case 212:
11552 return OPCODE_WSR_EXCSAVE4;
11553 case 213:
11554 return OPCODE_WSR_EXCSAVE5;
11555 case 214:
11556 return OPCODE_WSR_EXCSAVE6;
11557 case 215:
11558 return OPCODE_WSR_EXCSAVE7;
11559 case 224:
11560 return OPCODE_WSR_CPENABLE;
11561 case 226:
11562 return OPCODE_WSR_INTSET;
11563 case 227:
11564 return OPCODE_WSR_INTCLEAR;
11565 case 228:
11566 return OPCODE_WSR_INTENABLE;
11567 case 230:
11568 return OPCODE_WSR_PS;
11569 case 231:
11570 return OPCODE_WSR_VECBASE;
11571 case 232:
11572 return OPCODE_WSR_EXCCAUSE;
11573 case 233:
11574 return OPCODE_WSR_DEBUGCAUSE;
11575 case 234:
11576 return OPCODE_WSR_CCOUNT;
11577 case 236:
11578 return OPCODE_WSR_ICOUNT;
11579 case 237:
11580 return OPCODE_WSR_ICOUNTLEVEL;
11581 case 238:
11582 return OPCODE_WSR_EXCVADDR;
11583 case 240:
11584 return OPCODE_WSR_CCOMPARE0;
11585 case 241:
11586 return OPCODE_WSR_CCOMPARE1;
11587 case 242:
11588 return OPCODE_WSR_CCOMPARE2;
11589 case 244:
11590 return OPCODE_WSR_MISC0;
11591 case 245:
11592 return OPCODE_WSR_MISC1;
11593 }
11594 break;
11595 case 2:
11596 return OPCODE_SEXT;
11597 case 3:
11598 return OPCODE_CLAMPS;
11599 case 4:
11600 return OPCODE_MIN;
11601 case 5:
11602 return OPCODE_MAX;
11603 case 6:
11604 return OPCODE_MINU;
11605 case 7:
11606 return OPCODE_MAXU;
11607 case 8:
11608 return OPCODE_MOVEQZ;
11609 case 9:
11610 return OPCODE_MOVNEZ;
11611 case 10:
11612 return OPCODE_MOVLTZ;
11613 case 11:
11614 return OPCODE_MOVGEZ;
11615 case 14:
11616 if (Field_st_Slot_inst_get (insn) == 231)
11617 return OPCODE_RUR_THREADPTR;
11618 break;
11619 case 15:
11620 if (Field_sr_Slot_inst_get (insn) == 231)
11621 return OPCODE_WUR_THREADPTR;
11622 break;
11623 }
11624 break;
11625 case 4:
11626 case 5:
11627 return OPCODE_EXTUI;
11628 case 9:
11629 switch (Field_op2_Slot_inst_get (insn))
11630 {
11631 case 0:
11632 return OPCODE_L32E;
11633 case 4:
11634 return OPCODE_S32E;
11635 }
11636 break;
11637 }
11638 break;
11639 case 1:
11640 return OPCODE_L32R;
11641 case 2:
11642 switch (Field_r_Slot_inst_get (insn))
11643 {
11644 case 0:
11645 return OPCODE_L8UI;
11646 case 1:
11647 return OPCODE_L16UI;
11648 case 2:
11649 return OPCODE_L32I;
11650 case 4:
11651 return OPCODE_S8I;
11652 case 5:
11653 return OPCODE_S16I;
11654 case 6:
11655 return OPCODE_S32I;
11656 case 7:
11657 switch (Field_t_Slot_inst_get (insn))
11658 {
11659 case 0:
11660 return OPCODE_DPFR;
11661 case 1:
11662 return OPCODE_DPFW;
11663 case 2:
11664 return OPCODE_DPFRO;
11665 case 3:
11666 return OPCODE_DPFWO;
11667 case 4:
11668 return OPCODE_DHWB;
11669 case 5:
11670 return OPCODE_DHWBI;
11671 case 6:
11672 return OPCODE_DHI;
11673 case 7:
11674 return OPCODE_DII;
11675 case 8:
11676 switch (Field_op1_Slot_inst_get (insn))
11677 {
11678 case 0:
11679 return OPCODE_DPFL;
11680 case 2:
11681 return OPCODE_DHU;
11682 case 3:
11683 return OPCODE_DIU;
11684 case 4:
11685 return OPCODE_DIWB;
11686 case 5:
11687 return OPCODE_DIWBI;
11688 }
11689 break;
11690 case 12:
11691 return OPCODE_IPF;
11692 case 13:
11693 switch (Field_op1_Slot_inst_get (insn))
11694 {
11695 case 0:
11696 return OPCODE_IPFL;
11697 case 2:
11698 return OPCODE_IHU;
11699 case 3:
11700 return OPCODE_IIU;
11701 }
11702 break;
11703 case 14:
11704 return OPCODE_IHI;
11705 case 15:
11706 return OPCODE_III;
11707 }
11708 break;
11709 case 9:
11710 return OPCODE_L16SI;
11711 case 10:
11712 return OPCODE_MOVI;
11713 case 11:
11714 return OPCODE_L32AI;
11715 case 12:
11716 return OPCODE_ADDI;
11717 case 13:
11718 return OPCODE_ADDMI;
11719 case 14:
11720 return OPCODE_S32C1I;
11721 case 15:
11722 return OPCODE_S32RI;
11723 }
11724 break;
11725 case 5:
11726 switch (Field_n_Slot_inst_get (insn))
11727 {
11728 case 0:
11729 return OPCODE_CALL0;
11730 case 1:
11731 return OPCODE_CALL4;
11732 case 2:
11733 return OPCODE_CALL8;
11734 case 3:
11735 return OPCODE_CALL12;
11736 }
11737 break;
11738 case 6:
11739 switch (Field_n_Slot_inst_get (insn))
11740 {
11741 case 0:
11742 return OPCODE_J;
11743 case 1:
11744 switch (Field_m_Slot_inst_get (insn))
11745 {
11746 case 0:
11747 return OPCODE_BEQZ;
11748 case 1:
11749 return OPCODE_BNEZ;
11750 case 2:
11751 return OPCODE_BLTZ;
11752 case 3:
11753 return OPCODE_BGEZ;
11754 }
11755 break;
11756 case 2:
11757 switch (Field_m_Slot_inst_get (insn))
11758 {
11759 case 0:
11760 return OPCODE_BEQI;
11761 case 1:
11762 return OPCODE_BNEI;
11763 case 2:
11764 return OPCODE_BLTI;
11765 case 3:
11766 return OPCODE_BGEI;
11767 }
11768 break;
11769 case 3:
11770 switch (Field_m_Slot_inst_get (insn))
11771 {
11772 case 0:
11773 return OPCODE_ENTRY;
11774 case 1:
11775 switch (Field_r_Slot_inst_get (insn))
11776 {
11777 case 8:
11778 return OPCODE_LOOP;
11779 case 9:
11780 return OPCODE_LOOPNEZ;
11781 case 10:
11782 return OPCODE_LOOPGTZ;
11783 }
11784 break;
11785 case 2:
11786 return OPCODE_BLTUI;
11787 case 3:
11788 return OPCODE_BGEUI;
11789 }
11790 break;
11791 }
11792 break;
11793 case 7:
11794 switch (Field_r_Slot_inst_get (insn))
11795 {
11796 case 0:
11797 return OPCODE_BNONE;
11798 case 1:
11799 return OPCODE_BEQ;
11800 case 2:
11801 return OPCODE_BLT;
11802 case 3:
11803 return OPCODE_BLTU;
11804 case 4:
11805 return OPCODE_BALL;
11806 case 5:
11807 return OPCODE_BBC;
11808 case 6:
11809 case 7:
11810 return OPCODE_BBCI;
11811 case 8:
11812 return OPCODE_BANY;
11813 case 9:
11814 return OPCODE_BNE;
11815 case 10:
11816 return OPCODE_BGE;
11817 case 11:
11818 return OPCODE_BGEU;
11819 case 12:
11820 return OPCODE_BNALL;
11821 case 13:
11822 return OPCODE_BBS;
11823 case 14:
11824 case 15:
11825 return OPCODE_BBSI;
11826 }
11827 break;
11828 }
11829 return 0;
11830 }
11831
11832 static int
11833 Slot_inst16b_decode (const xtensa_insnbuf insn)
11834 {
11835 switch (Field_op0_Slot_inst16b_get (insn))
11836 {
11837 case 12:
11838 switch (Field_i_Slot_inst16b_get (insn))
11839 {
11840 case 0:
11841 return OPCODE_MOVI_N;
11842 case 1:
11843 switch (Field_z_Slot_inst16b_get (insn))
11844 {
11845 case 0:
11846 return OPCODE_BEQZ_N;
11847 case 1:
11848 return OPCODE_BNEZ_N;
11849 }
11850 break;
11851 }
11852 break;
11853 case 13:
11854 switch (Field_r_Slot_inst16b_get (insn))
11855 {
11856 case 0:
11857 return OPCODE_MOV_N;
11858 case 15:
11859 switch (Field_t_Slot_inst16b_get (insn))
11860 {
11861 case 0:
11862 return OPCODE_RET_N;
11863 case 1:
11864 return OPCODE_RETW_N;
11865 case 2:
11866 return OPCODE_BREAK_N;
11867 case 3:
11868 if (Field_s_Slot_inst16b_get (insn) == 0)
11869 return OPCODE_NOP_N;
11870 break;
11871 case 6:
11872 if (Field_s_Slot_inst16b_get (insn) == 0)
11873 return OPCODE_ILL_N;
11874 break;
11875 }
11876 break;
11877 }
11878 break;
11879 }
11880 return 0;
11881 }
11882
11883 static int
11884 Slot_inst16a_decode (const xtensa_insnbuf insn)
11885 {
11886 switch (Field_op0_Slot_inst16a_get (insn))
11887 {
11888 case 8:
11889 return OPCODE_L32I_N;
11890 case 9:
11891 return OPCODE_S32I_N;
11892 case 10:
11893 return OPCODE_ADD_N;
11894 case 11:
11895 return OPCODE_ADDI_N;
11896 }
11897 return 0;
11898 }
11899
11900 \f
11901 /* Instruction slots. */
11902
11903 static void
11904 Slot_x24_Format_inst_0_get (const xtensa_insnbuf insn,
11905 xtensa_insnbuf slotbuf)
11906 {
11907 slotbuf[0] = (insn[0] & 0xffffff);
11908 }
11909
11910 static void
11911 Slot_x24_Format_inst_0_set (xtensa_insnbuf insn,
11912 const xtensa_insnbuf slotbuf)
11913 {
11914 insn[0] = (insn[0] & ~0xffffff) | (slotbuf[0] & 0xffffff);
11915 }
11916
11917 static void
11918 Slot_x16a_Format_inst16a_0_get (const xtensa_insnbuf insn,
11919 xtensa_insnbuf slotbuf)
11920 {
11921 slotbuf[0] = ((insn[0] & 0xffff00) >> 8);
11922 }
11923
11924 static void
11925 Slot_x16a_Format_inst16a_0_set (xtensa_insnbuf insn,
11926 const xtensa_insnbuf slotbuf)
11927 {
11928 insn[0] = (insn[0] & ~0xffff00) | ((slotbuf[0] & 0xffff) << 8);
11929 }
11930
11931 static void
11932 Slot_x16b_Format_inst16b_0_get (const xtensa_insnbuf insn,
11933 xtensa_insnbuf slotbuf)
11934 {
11935 slotbuf[0] = ((insn[0] & 0xffff00) >> 8);
11936 }
11937
11938 static void
11939 Slot_x16b_Format_inst16b_0_set (xtensa_insnbuf insn,
11940 const xtensa_insnbuf slotbuf)
11941 {
11942 insn[0] = (insn[0] & ~0xffff00) | ((slotbuf[0] & 0xffff) << 8);
11943 }
11944
11945 static xtensa_get_field_fn
11946 Slot_inst_get_field_fns[] = {
11947 Field_t_Slot_inst_get,
11948 Field_bbi4_Slot_inst_get,
11949 Field_bbi_Slot_inst_get,
11950 Field_imm12_Slot_inst_get,
11951 Field_imm8_Slot_inst_get,
11952 Field_s_Slot_inst_get,
11953 Field_imm12b_Slot_inst_get,
11954 Field_imm16_Slot_inst_get,
11955 Field_m_Slot_inst_get,
11956 Field_n_Slot_inst_get,
11957 Field_offset_Slot_inst_get,
11958 Field_op0_Slot_inst_get,
11959 Field_op1_Slot_inst_get,
11960 Field_op2_Slot_inst_get,
11961 Field_r_Slot_inst_get,
11962 Field_sa4_Slot_inst_get,
11963 Field_sae4_Slot_inst_get,
11964 Field_sae_Slot_inst_get,
11965 Field_sal_Slot_inst_get,
11966 Field_sargt_Slot_inst_get,
11967 Field_sas4_Slot_inst_get,
11968 Field_sas_Slot_inst_get,
11969 Field_sr_Slot_inst_get,
11970 Field_st_Slot_inst_get,
11971 Field_thi3_Slot_inst_get,
11972 Field_imm4_Slot_inst_get,
11973 Field_mn_Slot_inst_get,
11974 0,
11975 0,
11976 0,
11977 0,
11978 0,
11979 0,
11980 0,
11981 0,
11982 Field_xt_wbr15_imm_Slot_inst_get,
11983 Field_xt_wbr18_imm_Slot_inst_get,
11984 Implicit_Field_ar0_get,
11985 Implicit_Field_ar4_get,
11986 Implicit_Field_ar8_get,
11987 Implicit_Field_ar12_get
11988 };
11989
11990 static xtensa_set_field_fn
11991 Slot_inst_set_field_fns[] = {
11992 Field_t_Slot_inst_set,
11993 Field_bbi4_Slot_inst_set,
11994 Field_bbi_Slot_inst_set,
11995 Field_imm12_Slot_inst_set,
11996 Field_imm8_Slot_inst_set,
11997 Field_s_Slot_inst_set,
11998 Field_imm12b_Slot_inst_set,
11999 Field_imm16_Slot_inst_set,
12000 Field_m_Slot_inst_set,
12001 Field_n_Slot_inst_set,
12002 Field_offset_Slot_inst_set,
12003 Field_op0_Slot_inst_set,
12004 Field_op1_Slot_inst_set,
12005 Field_op2_Slot_inst_set,
12006 Field_r_Slot_inst_set,
12007 Field_sa4_Slot_inst_set,
12008 Field_sae4_Slot_inst_set,
12009 Field_sae_Slot_inst_set,
12010 Field_sal_Slot_inst_set,
12011 Field_sargt_Slot_inst_set,
12012 Field_sas4_Slot_inst_set,
12013 Field_sas_Slot_inst_set,
12014 Field_sr_Slot_inst_set,
12015 Field_st_Slot_inst_set,
12016 Field_thi3_Slot_inst_set,
12017 Field_imm4_Slot_inst_set,
12018 Field_mn_Slot_inst_set,
12019 0,
12020 0,
12021 0,
12022 0,
12023 0,
12024 0,
12025 0,
12026 0,
12027 Field_xt_wbr15_imm_Slot_inst_set,
12028 Field_xt_wbr18_imm_Slot_inst_set,
12029 Implicit_Field_set,
12030 Implicit_Field_set,
12031 Implicit_Field_set,
12032 Implicit_Field_set
12033 };
12034
12035 static xtensa_get_field_fn
12036 Slot_inst16a_get_field_fns[] = {
12037 Field_t_Slot_inst16a_get,
12038 0,
12039 0,
12040 0,
12041 0,
12042 Field_s_Slot_inst16a_get,
12043 0,
12044 0,
12045 0,
12046 0,
12047 0,
12048 Field_op0_Slot_inst16a_get,
12049 0,
12050 0,
12051 Field_r_Slot_inst16a_get,
12052 0,
12053 0,
12054 0,
12055 0,
12056 0,
12057 0,
12058 0,
12059 Field_sr_Slot_inst16a_get,
12060 Field_st_Slot_inst16a_get,
12061 0,
12062 Field_imm4_Slot_inst16a_get,
12063 0,
12064 Field_i_Slot_inst16a_get,
12065 Field_imm6lo_Slot_inst16a_get,
12066 Field_imm6hi_Slot_inst16a_get,
12067 Field_imm7lo_Slot_inst16a_get,
12068 Field_imm7hi_Slot_inst16a_get,
12069 Field_z_Slot_inst16a_get,
12070 Field_imm6_Slot_inst16a_get,
12071 Field_imm7_Slot_inst16a_get,
12072 0,
12073 0,
12074 Implicit_Field_ar0_get,
12075 Implicit_Field_ar4_get,
12076 Implicit_Field_ar8_get,
12077 Implicit_Field_ar12_get
12078 };
12079
12080 static xtensa_set_field_fn
12081 Slot_inst16a_set_field_fns[] = {
12082 Field_t_Slot_inst16a_set,
12083 0,
12084 0,
12085 0,
12086 0,
12087 Field_s_Slot_inst16a_set,
12088 0,
12089 0,
12090 0,
12091 0,
12092 0,
12093 Field_op0_Slot_inst16a_set,
12094 0,
12095 0,
12096 Field_r_Slot_inst16a_set,
12097 0,
12098 0,
12099 0,
12100 0,
12101 0,
12102 0,
12103 0,
12104 Field_sr_Slot_inst16a_set,
12105 Field_st_Slot_inst16a_set,
12106 0,
12107 Field_imm4_Slot_inst16a_set,
12108 0,
12109 Field_i_Slot_inst16a_set,
12110 Field_imm6lo_Slot_inst16a_set,
12111 Field_imm6hi_Slot_inst16a_set,
12112 Field_imm7lo_Slot_inst16a_set,
12113 Field_imm7hi_Slot_inst16a_set,
12114 Field_z_Slot_inst16a_set,
12115 Field_imm6_Slot_inst16a_set,
12116 Field_imm7_Slot_inst16a_set,
12117 0,
12118 0,
12119 Implicit_Field_set,
12120 Implicit_Field_set,
12121 Implicit_Field_set,
12122 Implicit_Field_set
12123 };
12124
12125 static xtensa_get_field_fn
12126 Slot_inst16b_get_field_fns[] = {
12127 Field_t_Slot_inst16b_get,
12128 0,
12129 0,
12130 0,
12131 0,
12132 Field_s_Slot_inst16b_get,
12133 0,
12134 0,
12135 0,
12136 0,
12137 0,
12138 Field_op0_Slot_inst16b_get,
12139 0,
12140 0,
12141 Field_r_Slot_inst16b_get,
12142 0,
12143 0,
12144 0,
12145 0,
12146 0,
12147 0,
12148 0,
12149 Field_sr_Slot_inst16b_get,
12150 Field_st_Slot_inst16b_get,
12151 0,
12152 Field_imm4_Slot_inst16b_get,
12153 0,
12154 Field_i_Slot_inst16b_get,
12155 Field_imm6lo_Slot_inst16b_get,
12156 Field_imm6hi_Slot_inst16b_get,
12157 Field_imm7lo_Slot_inst16b_get,
12158 Field_imm7hi_Slot_inst16b_get,
12159 Field_z_Slot_inst16b_get,
12160 Field_imm6_Slot_inst16b_get,
12161 Field_imm7_Slot_inst16b_get,
12162 0,
12163 0,
12164 Implicit_Field_ar0_get,
12165 Implicit_Field_ar4_get,
12166 Implicit_Field_ar8_get,
12167 Implicit_Field_ar12_get
12168 };
12169
12170 static xtensa_set_field_fn
12171 Slot_inst16b_set_field_fns[] = {
12172 Field_t_Slot_inst16b_set,
12173 0,
12174 0,
12175 0,
12176 0,
12177 Field_s_Slot_inst16b_set,
12178 0,
12179 0,
12180 0,
12181 0,
12182 0,
12183 Field_op0_Slot_inst16b_set,
12184 0,
12185 0,
12186 Field_r_Slot_inst16b_set,
12187 0,
12188 0,
12189 0,
12190 0,
12191 0,
12192 0,
12193 0,
12194 Field_sr_Slot_inst16b_set,
12195 Field_st_Slot_inst16b_set,
12196 0,
12197 Field_imm4_Slot_inst16b_set,
12198 0,
12199 Field_i_Slot_inst16b_set,
12200 Field_imm6lo_Slot_inst16b_set,
12201 Field_imm6hi_Slot_inst16b_set,
12202 Field_imm7lo_Slot_inst16b_set,
12203 Field_imm7hi_Slot_inst16b_set,
12204 Field_z_Slot_inst16b_set,
12205 Field_imm6_Slot_inst16b_set,
12206 Field_imm7_Slot_inst16b_set,
12207 0,
12208 0,
12209 Implicit_Field_set,
12210 Implicit_Field_set,
12211 Implicit_Field_set,
12212 Implicit_Field_set
12213 };
12214
12215 static xtensa_slot_internal slots[] = {
12216 { "Inst", "x24", 0,
12217 Slot_x24_Format_inst_0_get, Slot_x24_Format_inst_0_set,
12218 Slot_inst_get_field_fns, Slot_inst_set_field_fns,
12219 Slot_inst_decode, "nop" },
12220 { "Inst16a", "x16a", 0,
12221 Slot_x16a_Format_inst16a_0_get, Slot_x16a_Format_inst16a_0_set,
12222 Slot_inst16a_get_field_fns, Slot_inst16a_set_field_fns,
12223 Slot_inst16a_decode, "" },
12224 { "Inst16b", "x16b", 0,
12225 Slot_x16b_Format_inst16b_0_get, Slot_x16b_Format_inst16b_0_set,
12226 Slot_inst16b_get_field_fns, Slot_inst16b_set_field_fns,
12227 Slot_inst16b_decode, "nop.n" }
12228 };
12229
12230 \f
12231 /* Instruction formats. */
12232
12233 static void
12234 Format_x24_encode (xtensa_insnbuf insn)
12235 {
12236 insn[0] = 0;
12237 }
12238
12239 static void
12240 Format_x16a_encode (xtensa_insnbuf insn)
12241 {
12242 insn[0] = 0x800000;
12243 }
12244
12245 static void
12246 Format_x16b_encode (xtensa_insnbuf insn)
12247 {
12248 insn[0] = 0xc00000;
12249 }
12250
12251 static int Format_x24_slots[] = { 0 };
12252
12253 static int Format_x16a_slots[] = { 1 };
12254
12255 static int Format_x16b_slots[] = { 2 };
12256
12257 static xtensa_format_internal formats[] = {
12258 { "x24", 3, Format_x24_encode, 1, Format_x24_slots },
12259 { "x16a", 2, Format_x16a_encode, 1, Format_x16a_slots },
12260 { "x16b", 2, Format_x16b_encode, 1, Format_x16b_slots }
12261 };
12262
12263
12264 static int
12265 format_decoder (const xtensa_insnbuf insn)
12266 {
12267 if ((insn[0] & 0x800000) == 0)
12268 return 0; /* x24 */
12269 if ((insn[0] & 0xc00000) == 0x800000)
12270 return 1; /* x16a */
12271 if ((insn[0] & 0xe00000) == 0xc00000)
12272 return 2; /* x16b */
12273 return -1;
12274 }
12275
12276 static int length_table[16] = {
12277 3,
12278 3,
12279 3,
12280 3,
12281 3,
12282 3,
12283 3,
12284 3,
12285 2,
12286 2,
12287 2,
12288 2,
12289 2,
12290 2,
12291 -1,
12292 -1
12293 };
12294
12295 static int
12296 length_decoder (const unsigned char *insn)
12297 {
12298 int op0 = (insn[0] >> 4) & 0xf;
12299 return length_table[op0];
12300 }
12301
12302 \f
12303 /* Top-level ISA structure. */
12304
12305 xtensa_isa_internal xtensa_modules = {
12306 1 /* big-endian */,
12307 3 /* insn_size */, 0,
12308 3, formats, format_decoder, length_decoder,
12309 3, slots,
12310 41 /* num_fields */,
12311 75, operands,
12312 286, iclasses,
12313 353, opcodes, 0,
12314 1, regfiles,
12315 NUM_STATES, states, 0,
12316 NUM_SYSREGS, sysregs, 0,
12317 { MAX_SPECIAL_REG, MAX_USER_REG }, { 0, 0 },
12318 0, interfaces, 0,
12319 0, funcUnits, 0
12320 };
This page took 0.318238 seconds and 5 git commands to generate.