00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017
00018
00019
00020
00021
00022
00023
00024
00025 #include "ansidecl.h"
00026 #include <xtensa-isa.h>
00027 #include "xtensa-isa-internal.h"
00028
00029
00030
00031
00032 static xtensa_sysreg_internal sysregs[] = {
00033 { "LBEG", 0, 0 },
00034 { "LEND", 1, 0 },
00035 { "LCOUNT", 2, 0 },
00036 { "DDR", 104, 0 },
00037 { "176", 176, 0 },
00038 { "208", 208, 0 },
00039 { "INTERRUPT", 226, 0 },
00040 { "INTCLEAR", 227, 0 },
00041 { "CCOUNT", 234, 0 },
00042 { "PRID", 235, 0 },
00043 { "ICOUNT", 236, 0 },
00044 { "CCOMPARE0", 240, 0 },
00045 { "CCOMPARE1", 241, 0 },
00046 { "CCOMPARE2", 242, 0 },
00047 { "EPC1", 177, 0 },
00048 { "EPC2", 178, 0 },
00049 { "EPC3", 179, 0 },
00050 { "EPC4", 180, 0 },
00051 { "EXCSAVE1", 209, 0 },
00052 { "EXCSAVE2", 210, 0 },
00053 { "EXCSAVE3", 211, 0 },
00054 { "EXCSAVE4", 212, 0 },
00055 { "EPS2", 194, 0 },
00056 { "EPS3", 195, 0 },
00057 { "EPS4", 196, 0 },
00058 { "EXCCAUSE", 232, 0 },
00059 { "DEPC", 192, 0 },
00060 { "EXCVADDR", 238, 0 },
00061 { "WINDOWBASE", 72, 0 },
00062 { "WINDOWSTART", 73, 0 },
00063 { "SAR", 3, 0 },
00064 { "LITBASE", 5, 0 },
00065 { "PS", 230, 0 },
00066 { "MISC0", 244, 0 },
00067 { "MISC1", 245, 0 },
00068 { "INTENABLE", 228, 0 },
00069 { "DBREAKA0", 144, 0 },
00070 { "DBREAKC0", 160, 0 },
00071 { "DBREAKA1", 145, 0 },
00072 { "DBREAKC1", 161, 0 },
00073 { "IBREAKA0", 128, 0 },
00074 { "IBREAKA1", 129, 0 },
00075 { "IBREAKENABLE", 96, 0 },
00076 { "ICOUNTLEVEL", 237, 0 },
00077 { "DEBUGCAUSE", 233, 0 }
00078 };
00079
00080 #define NUM_SYSREGS 45
00081 #define MAX_SPECIAL_REG 245
00082 #define MAX_USER_REG 0
00083
00084
00085
00086
00087 static xtensa_state_internal states[] = {
00088 { "LCOUNT", 32, 0 },
00089 { "PC", 32, 0 },
00090 { "ICOUNT", 32, 0 },
00091 { "DDR", 32, 0 },
00092 { "INTERRUPT", 17, 0 },
00093 { "CCOUNT", 32, 0 },
00094 { "XTSYNC", 1, 0 },
00095 { "EPC1", 32, 0 },
00096 { "EPC2", 32, 0 },
00097 { "EPC3", 32, 0 },
00098 { "EPC4", 32, 0 },
00099 { "EXCSAVE1", 32, 0 },
00100 { "EXCSAVE2", 32, 0 },
00101 { "EXCSAVE3", 32, 0 },
00102 { "EXCSAVE4", 32, 0 },
00103 { "EPS2", 13, 0 },
00104 { "EPS3", 13, 0 },
00105 { "EPS4", 13, 0 },
00106 { "EXCCAUSE", 6, 0 },
00107 { "PSINTLEVEL", 4, 0 },
00108 { "PSUM", 1, 0 },
00109 { "PSWOE", 1, 0 },
00110 { "PSEXCM", 1, 0 },
00111 { "DEPC", 32, 0 },
00112 { "EXCVADDR", 32, 0 },
00113 { "WindowBase", 4, 0 },
00114 { "WindowStart", 16, 0 },
00115 { "PSCALLINC", 2, 0 },
00116 { "PSOWB", 4, 0 },
00117 { "LBEG", 32, 0 },
00118 { "LEND", 32, 0 },
00119 { "SAR", 6, 0 },
00120 { "LITBADDR", 20, 0 },
00121 { "LITBEN", 1, 0 },
00122 { "MISC0", 32, 0 },
00123 { "MISC1", 32, 0 },
00124 { "InOCDMode", 1, 0 },
00125 { "INTENABLE", 17, 0 },
00126 { "DBREAKA0", 32, 0 },
00127 { "DBREAKC0", 8, 0 },
00128 { "DBREAKA1", 32, 0 },
00129 { "DBREAKC1", 8, 0 },
00130 { "IBREAKA0", 32, 0 },
00131 { "IBREAKA1", 32, 0 },
00132 { "IBREAKENABLE", 2, 0 },
00133 { "ICOUNTLEVEL", 4, 0 },
00134 { "DEBUGCAUSE", 6, 0 },
00135 { "DBNUM", 4, 0 },
00136 { "CCOMPARE0", 32, 0 },
00137 { "CCOMPARE1", 32, 0 },
00138 { "CCOMPARE2", 32, 0 }
00139 };
00140
00141 #define NUM_STATES 51
00142
00143
00144
00145
00146 #define STATE_LCOUNT 0
00147 #define STATE_PC 1
00148 #define STATE_ICOUNT 2
00149 #define STATE_DDR 3
00150 #define STATE_INTERRUPT 4
00151 #define STATE_CCOUNT 5
00152 #define STATE_XTSYNC 6
00153 #define STATE_EPC1 7
00154 #define STATE_EPC2 8
00155 #define STATE_EPC3 9
00156 #define STATE_EPC4 10
00157 #define STATE_EXCSAVE1 11
00158 #define STATE_EXCSAVE2 12
00159 #define STATE_EXCSAVE3 13
00160 #define STATE_EXCSAVE4 14
00161 #define STATE_EPS2 15
00162 #define STATE_EPS3 16
00163 #define STATE_EPS4 17
00164 #define STATE_EXCCAUSE 18
00165 #define STATE_PSINTLEVEL 19
00166 #define STATE_PSUM 20
00167 #define STATE_PSWOE 21
00168 #define STATE_PSEXCM 22
00169 #define STATE_DEPC 23
00170 #define STATE_EXCVADDR 24
00171 #define STATE_WindowBase 25
00172 #define STATE_WindowStart 26
00173 #define STATE_PSCALLINC 27
00174 #define STATE_PSOWB 28
00175 #define STATE_LBEG 29
00176 #define STATE_LEND 30
00177 #define STATE_SAR 31
00178 #define STATE_LITBADDR 32
00179 #define STATE_LITBEN 33
00180 #define STATE_MISC0 34
00181 #define STATE_MISC1 35
00182 #define STATE_InOCDMode 36
00183 #define STATE_INTENABLE 37
00184 #define STATE_DBREAKA0 38
00185 #define STATE_DBREAKC0 39
00186 #define STATE_DBREAKA1 40
00187 #define STATE_DBREAKC1 41
00188 #define STATE_IBREAKA0 42
00189 #define STATE_IBREAKA1 43
00190 #define STATE_IBREAKENABLE 44
00191 #define STATE_ICOUNTLEVEL 45
00192 #define STATE_DEBUGCAUSE 46
00193 #define STATE_DBNUM 47
00194 #define STATE_CCOMPARE0 48
00195 #define STATE_CCOMPARE1 49
00196 #define STATE_CCOMPARE2 50
00197
00198
00199
00200
00201 static unsigned
00202 Field_t_Slot_inst_get (const xtensa_insnbuf insn)
00203 {
00204 unsigned tie_t = 0;
00205 tie_t = (tie_t << 4) | ((insn[0] << 12) >> 28);
00206 return tie_t;
00207 }
00208
00209 static void
00210 Field_t_Slot_inst_set (xtensa_insnbuf insn, uint32 val)
00211 {
00212 uint32 tie_t;
00213 tie_t = (val << 28) >> 28;
00214 insn[0] = (insn[0] & ~0xf0000) | (tie_t << 16);
00215 }
00216
00217 static unsigned
00218 Field_s_Slot_inst_get (const xtensa_insnbuf insn)
00219 {
00220 unsigned tie_t = 0;
00221 tie_t = (tie_t << 4) | ((insn[0] << 16) >> 28);
00222 return tie_t;
00223 }
00224
00225 static void
00226 Field_s_Slot_inst_set (xtensa_insnbuf insn, uint32 val)
00227 {
00228 uint32 tie_t;
00229 tie_t = (val << 28) >> 28;
00230 insn[0] = (insn[0] & ~0xf000) | (tie_t << 12);
00231 }
00232
00233 static unsigned
00234 Field_r_Slot_inst_get (const xtensa_insnbuf insn)
00235 {
00236 unsigned tie_t = 0;
00237 tie_t = (tie_t << 4) | ((insn[0] << 20) >> 28);
00238 return tie_t;
00239 }
00240
00241 static void
00242 Field_r_Slot_inst_set (xtensa_insnbuf insn, uint32 val)
00243 {
00244 uint32 tie_t;
00245 tie_t = (val << 28) >> 28;
00246 insn[0] = (insn[0] & ~0xf00) | (tie_t << 8);
00247 }
00248
00249 static unsigned
00250 Field_op2_Slot_inst_get (const xtensa_insnbuf insn)
00251 {
00252 unsigned tie_t = 0;
00253 tie_t = (tie_t << 4) | ((insn[0] << 28) >> 28);
00254 return tie_t;
00255 }
00256
00257 static void
00258 Field_op2_Slot_inst_set (xtensa_insnbuf insn, uint32 val)
00259 {
00260 uint32 tie_t;
00261 tie_t = (val << 28) >> 28;
00262 insn[0] = (insn[0] & ~0xf) | (tie_t << 0);
00263 }
00264
00265 static unsigned
00266 Field_op1_Slot_inst_get (const xtensa_insnbuf insn)
00267 {
00268 unsigned tie_t = 0;
00269 tie_t = (tie_t << 4) | ((insn[0] << 24) >> 28);
00270 return tie_t;
00271 }
00272
00273 static void
00274 Field_op1_Slot_inst_set (xtensa_insnbuf insn, uint32 val)
00275 {
00276 uint32 tie_t;
00277 tie_t = (val << 28) >> 28;
00278 insn[0] = (insn[0] & ~0xf0) | (tie_t << 4);
00279 }
00280
00281 static unsigned
00282 Field_op0_Slot_inst_get (const xtensa_insnbuf insn)
00283 {
00284 unsigned tie_t = 0;
00285 tie_t = (tie_t << 4) | ((insn[0] << 8) >> 28);
00286 return tie_t;
00287 }
00288
00289 static void
00290 Field_op0_Slot_inst_set (xtensa_insnbuf insn, uint32 val)
00291 {
00292 uint32 tie_t;
00293 tie_t = (val << 28) >> 28;
00294 insn[0] = (insn[0] & ~0xf00000) | (tie_t << 20);
00295 }
00296
00297 static unsigned
00298 Field_n_Slot_inst_get (const xtensa_insnbuf insn)
00299 {
00300 unsigned tie_t = 0;
00301 tie_t = (tie_t << 2) | ((insn[0] << 12) >> 30);
00302 return tie_t;
00303 }
00304
00305 static void
00306 Field_n_Slot_inst_set (xtensa_insnbuf insn, uint32 val)
00307 {
00308 uint32 tie_t;
00309 tie_t = (val << 30) >> 30;
00310 insn[0] = (insn[0] & ~0xc0000) | (tie_t << 18);
00311 }
00312
00313 static unsigned
00314 Field_m_Slot_inst_get (const xtensa_insnbuf insn)
00315 {
00316 unsigned tie_t = 0;
00317 tie_t = (tie_t << 2) | ((insn[0] << 14) >> 30);
00318 return tie_t;
00319 }
00320
00321 static void
00322 Field_m_Slot_inst_set (xtensa_insnbuf insn, uint32 val)
00323 {
00324 uint32 tie_t;
00325 tie_t = (val << 30) >> 30;
00326 insn[0] = (insn[0] & ~0x30000) | (tie_t << 16);
00327 }
00328
00329 static unsigned
00330 Field_sr_Slot_inst_get (const xtensa_insnbuf insn)
00331 {
00332 unsigned tie_t = 0;
00333 tie_t = (tie_t << 4) | ((insn[0] << 16) >> 28);
00334 tie_t = (tie_t << 4) | ((insn[0] << 20) >> 28);
00335 return tie_t;
00336 }
00337
00338 static void
00339 Field_sr_Slot_inst_set (xtensa_insnbuf insn, uint32 val)
00340 {
00341 uint32 tie_t;
00342 tie_t = (val << 28) >> 28;
00343 insn[0] = (insn[0] & ~0xf00) | (tie_t << 8);
00344 tie_t = (val << 24) >> 28;
00345 insn[0] = (insn[0] & ~0xf000) | (tie_t << 12);
00346 }
00347
00348 static unsigned
00349 Field_thi3_Slot_inst_get (const xtensa_insnbuf insn)
00350 {
00351 unsigned tie_t = 0;
00352 tie_t = (tie_t << 3) | ((insn[0] << 12) >> 29);
00353 return tie_t;
00354 }
00355
00356 static void
00357 Field_thi3_Slot_inst_set (xtensa_insnbuf insn, uint32 val)
00358 {
00359 uint32 tie_t;
00360 tie_t = (val << 29) >> 29;
00361 insn[0] = (insn[0] & ~0xe0000) | (tie_t << 17);
00362 }
00363
00364 static unsigned
00365 Field_op0_Slot_inst16a_get (const xtensa_insnbuf insn)
00366 {
00367 unsigned tie_t = 0;
00368 tie_t = (tie_t << 4) | ((insn[0] << 16) >> 28);
00369 return tie_t;
00370 }
00371
00372 static void
00373 Field_op0_Slot_inst16a_set (xtensa_insnbuf insn, uint32 val)
00374 {
00375 uint32 tie_t;
00376 tie_t = (val << 28) >> 28;
00377 insn[0] = (insn[0] & ~0xf000) | (tie_t << 12);
00378 }
00379
00380 static unsigned
00381 Field_t_Slot_inst16b_get (const xtensa_insnbuf insn)
00382 {
00383 unsigned tie_t = 0;
00384 tie_t = (tie_t << 4) | ((insn[0] << 20) >> 28);
00385 return tie_t;
00386 }
00387
00388 static void
00389 Field_t_Slot_inst16b_set (xtensa_insnbuf insn, uint32 val)
00390 {
00391 uint32 tie_t;
00392 tie_t = (val << 28) >> 28;
00393 insn[0] = (insn[0] & ~0xf00) | (tie_t << 8);
00394 }
00395
00396 static unsigned
00397 Field_r_Slot_inst16b_get (const xtensa_insnbuf insn)
00398 {
00399 unsigned tie_t = 0;
00400 tie_t = (tie_t << 4) | ((insn[0] << 28) >> 28);
00401 return tie_t;
00402 }
00403
00404 static void
00405 Field_r_Slot_inst16b_set (xtensa_insnbuf insn, uint32 val)
00406 {
00407 uint32 tie_t;
00408 tie_t = (val << 28) >> 28;
00409 insn[0] = (insn[0] & ~0xf) | (tie_t << 0);
00410 }
00411
00412 static unsigned
00413 Field_op0_Slot_inst16b_get (const xtensa_insnbuf insn)
00414 {
00415 unsigned tie_t = 0;
00416 tie_t = (tie_t << 4) | ((insn[0] << 16) >> 28);
00417 return tie_t;
00418 }
00419
00420 static void
00421 Field_op0_Slot_inst16b_set (xtensa_insnbuf insn, uint32 val)
00422 {
00423 uint32 tie_t;
00424 tie_t = (val << 28) >> 28;
00425 insn[0] = (insn[0] & ~0xf000) | (tie_t << 12);
00426 }
00427
00428 static unsigned
00429 Field_z_Slot_inst16b_get (const xtensa_insnbuf insn)
00430 {
00431 unsigned tie_t = 0;
00432 tie_t = (tie_t << 1) | ((insn[0] << 21) >> 31);
00433 return tie_t;
00434 }
00435
00436 static void
00437 Field_z_Slot_inst16b_set (xtensa_insnbuf insn, uint32 val)
00438 {
00439 uint32 tie_t;
00440 tie_t = (val << 31) >> 31;
00441 insn[0] = (insn[0] & ~0x400) | (tie_t << 10);
00442 }
00443
00444 static unsigned
00445 Field_i_Slot_inst16b_get (const xtensa_insnbuf insn)
00446 {
00447 unsigned tie_t = 0;
00448 tie_t = (tie_t << 1) | ((insn[0] << 20) >> 31);
00449 return tie_t;
00450 }
00451
00452 static void
00453 Field_i_Slot_inst16b_set (xtensa_insnbuf insn, uint32 val)
00454 {
00455 uint32 tie_t;
00456 tie_t = (val << 31) >> 31;
00457 insn[0] = (insn[0] & ~0x800) | (tie_t << 11);
00458 }
00459
00460 static unsigned
00461 Field_s_Slot_inst16b_get (const xtensa_insnbuf insn)
00462 {
00463 unsigned tie_t = 0;
00464 tie_t = (tie_t << 4) | ((insn[0] << 24) >> 28);
00465 return tie_t;
00466 }
00467
00468 static void
00469 Field_s_Slot_inst16b_set (xtensa_insnbuf insn, uint32 val)
00470 {
00471 uint32 tie_t;
00472 tie_t = (val << 28) >> 28;
00473 insn[0] = (insn[0] & ~0xf0) | (tie_t << 4);
00474 }
00475
00476 static unsigned
00477 Field_t_Slot_inst16a_get (const xtensa_insnbuf insn)
00478 {
00479 unsigned tie_t = 0;
00480 tie_t = (tie_t << 4) | ((insn[0] << 20) >> 28);
00481 return tie_t;
00482 }
00483
00484 static void
00485 Field_t_Slot_inst16a_set (xtensa_insnbuf insn, uint32 val)
00486 {
00487 uint32 tie_t;
00488 tie_t = (val << 28) >> 28;
00489 insn[0] = (insn[0] & ~0xf00) | (tie_t << 8);
00490 }
00491
00492 static unsigned
00493 Field_bbi4_Slot_inst_get (const xtensa_insnbuf insn)
00494 {
00495 unsigned tie_t = 0;
00496 tie_t = (tie_t << 1) | ((insn[0] << 23) >> 31);
00497 return tie_t;
00498 }
00499
00500 static void
00501 Field_bbi4_Slot_inst_set (xtensa_insnbuf insn, uint32 val)
00502 {
00503 uint32 tie_t;
00504 tie_t = (val << 31) >> 31;
00505 insn[0] = (insn[0] & ~0x100) | (tie_t << 8);
00506 }
00507
00508 static unsigned
00509 Field_bbi_Slot_inst_get (const xtensa_insnbuf insn)
00510 {
00511 unsigned tie_t = 0;
00512 tie_t = (tie_t << 1) | ((insn[0] << 23) >> 31);
00513 tie_t = (tie_t << 4) | ((insn[0] << 12) >> 28);
00514 return tie_t;
00515 }
00516
00517 static void
00518 Field_bbi_Slot_inst_set (xtensa_insnbuf insn, uint32 val)
00519 {
00520 uint32 tie_t;
00521 tie_t = (val << 28) >> 28;
00522 insn[0] = (insn[0] & ~0xf0000) | (tie_t << 16);
00523 tie_t = (val << 27) >> 31;
00524 insn[0] = (insn[0] & ~0x100) | (tie_t << 8);
00525 }
00526
00527 static unsigned
00528 Field_imm12_Slot_inst_get (const xtensa_insnbuf insn)
00529 {
00530 unsigned tie_t = 0;
00531 tie_t = (tie_t << 12) | ((insn[0] << 20) >> 20);
00532 return tie_t;
00533 }
00534
00535 static void
00536 Field_imm12_Slot_inst_set (xtensa_insnbuf insn, uint32 val)
00537 {
00538 uint32 tie_t;
00539 tie_t = (val << 20) >> 20;
00540 insn[0] = (insn[0] & ~0xfff) | (tie_t << 0);
00541 }
00542
00543 static unsigned
00544 Field_imm8_Slot_inst_get (const xtensa_insnbuf insn)
00545 {
00546 unsigned tie_t = 0;
00547 tie_t = (tie_t << 8) | ((insn[0] << 24) >> 24);
00548 return tie_t;
00549 }
00550
00551 static void
00552 Field_imm8_Slot_inst_set (xtensa_insnbuf insn, uint32 val)
00553 {
00554 uint32 tie_t;
00555 tie_t = (val << 24) >> 24;
00556 insn[0] = (insn[0] & ~0xff) | (tie_t << 0);
00557 }
00558
00559 static unsigned
00560 Field_s_Slot_inst16a_get (const xtensa_insnbuf insn)
00561 {
00562 unsigned tie_t = 0;
00563 tie_t = (tie_t << 4) | ((insn[0] << 24) >> 28);
00564 return tie_t;
00565 }
00566
00567 static void
00568 Field_s_Slot_inst16a_set (xtensa_insnbuf insn, uint32 val)
00569 {
00570 uint32 tie_t;
00571 tie_t = (val << 28) >> 28;
00572 insn[0] = (insn[0] & ~0xf0) | (tie_t << 4);
00573 }
00574
00575 static unsigned
00576 Field_imm12b_Slot_inst_get (const xtensa_insnbuf insn)
00577 {
00578 unsigned tie_t = 0;
00579 tie_t = (tie_t << 4) | ((insn[0] << 16) >> 28);
00580 tie_t = (tie_t << 8) | ((insn[0] << 24) >> 24);
00581 return tie_t;
00582 }
00583
00584 static void
00585 Field_imm12b_Slot_inst_set (xtensa_insnbuf insn, uint32 val)
00586 {
00587 uint32 tie_t;
00588 tie_t = (val << 24) >> 24;
00589 insn[0] = (insn[0] & ~0xff) | (tie_t << 0);
00590 tie_t = (val << 20) >> 28;
00591 insn[0] = (insn[0] & ~0xf000) | (tie_t << 12);
00592 }
00593
00594 static unsigned
00595 Field_imm16_Slot_inst_get (const xtensa_insnbuf insn)
00596 {
00597 unsigned tie_t = 0;
00598 tie_t = (tie_t << 16) | ((insn[0] << 16) >> 16);
00599 return tie_t;
00600 }
00601
00602 static void
00603 Field_imm16_Slot_inst_set (xtensa_insnbuf insn, uint32 val)
00604 {
00605 uint32 tie_t;
00606 tie_t = (val << 16) >> 16;
00607 insn[0] = (insn[0] & ~0xffff) | (tie_t << 0);
00608 }
00609
00610 static unsigned
00611 Field_offset_Slot_inst_get (const xtensa_insnbuf insn)
00612 {
00613 unsigned tie_t = 0;
00614 tie_t = (tie_t << 18) | ((insn[0] << 14) >> 14);
00615 return tie_t;
00616 }
00617
00618 static void
00619 Field_offset_Slot_inst_set (xtensa_insnbuf insn, uint32 val)
00620 {
00621 uint32 tie_t;
00622 tie_t = (val << 14) >> 14;
00623 insn[0] = (insn[0] & ~0x3ffff) | (tie_t << 0);
00624 }
00625
00626 static unsigned
00627 Field_r_Slot_inst16a_get (const xtensa_insnbuf insn)
00628 {
00629 unsigned tie_t = 0;
00630 tie_t = (tie_t << 4) | ((insn[0] << 28) >> 28);
00631 return tie_t;
00632 }
00633
00634 static void
00635 Field_r_Slot_inst16a_set (xtensa_insnbuf insn, uint32 val)
00636 {
00637 uint32 tie_t;
00638 tie_t = (val << 28) >> 28;
00639 insn[0] = (insn[0] & ~0xf) | (tie_t << 0);
00640 }
00641
00642 static unsigned
00643 Field_sa4_Slot_inst_get (const xtensa_insnbuf insn)
00644 {
00645 unsigned tie_t = 0;
00646 tie_t = (tie_t << 1) | ((insn[0] << 31) >> 31);
00647 return tie_t;
00648 }
00649
00650 static void
00651 Field_sa4_Slot_inst_set (xtensa_insnbuf insn, uint32 val)
00652 {
00653 uint32 tie_t;
00654 tie_t = (val << 31) >> 31;
00655 insn[0] = (insn[0] & ~0x1) | (tie_t << 0);
00656 }
00657
00658 static unsigned
00659 Field_sae4_Slot_inst_get (const xtensa_insnbuf insn)
00660 {
00661 unsigned tie_t = 0;
00662 tie_t = (tie_t << 1) | ((insn[0] << 27) >> 31);
00663 return tie_t;
00664 }
00665
00666 static void
00667 Field_sae4_Slot_inst_set (xtensa_insnbuf insn, uint32 val)
00668 {
00669 uint32 tie_t;
00670 tie_t = (val << 31) >> 31;
00671 insn[0] = (insn[0] & ~0x10) | (tie_t << 4);
00672 }
00673
00674 static unsigned
00675 Field_sae_Slot_inst_get (const xtensa_insnbuf insn)
00676 {
00677 unsigned tie_t = 0;
00678 tie_t = (tie_t << 1) | ((insn[0] << 27) >> 31);
00679 tie_t = (tie_t << 4) | ((insn[0] << 16) >> 28);
00680 return tie_t;
00681 }
00682
00683 static void
00684 Field_sae_Slot_inst_set (xtensa_insnbuf insn, uint32 val)
00685 {
00686 uint32 tie_t;
00687 tie_t = (val << 28) >> 28;
00688 insn[0] = (insn[0] & ~0xf000) | (tie_t << 12);
00689 tie_t = (val << 27) >> 31;
00690 insn[0] = (insn[0] & ~0x10) | (tie_t << 4);
00691 }
00692
00693 static unsigned
00694 Field_sal_Slot_inst_get (const xtensa_insnbuf insn)
00695 {
00696 unsigned tie_t = 0;
00697 tie_t = (tie_t << 1) | ((insn[0] << 31) >> 31);
00698 tie_t = (tie_t << 4) | ((insn[0] << 12) >> 28);
00699 return tie_t;
00700 }
00701
00702 static void
00703 Field_sal_Slot_inst_set (xtensa_insnbuf insn, uint32 val)
00704 {
00705 uint32 tie_t;
00706 tie_t = (val << 28) >> 28;
00707 insn[0] = (insn[0] & ~0xf0000) | (tie_t << 16);
00708 tie_t = (val << 27) >> 31;
00709 insn[0] = (insn[0] & ~0x1) | (tie_t << 0);
00710 }
00711
00712 static unsigned
00713 Field_sargt_Slot_inst_get (const xtensa_insnbuf insn)
00714 {
00715 unsigned tie_t = 0;
00716 tie_t = (tie_t << 1) | ((insn[0] << 31) >> 31);
00717 tie_t = (tie_t << 4) | ((insn[0] << 16) >> 28);
00718 return tie_t;
00719 }
00720
00721 static void
00722 Field_sargt_Slot_inst_set (xtensa_insnbuf insn, uint32 val)
00723 {
00724 uint32 tie_t;
00725 tie_t = (val << 28) >> 28;
00726 insn[0] = (insn[0] & ~0xf000) | (tie_t << 12);
00727 tie_t = (val << 27) >> 31;
00728 insn[0] = (insn[0] & ~0x1) | (tie_t << 0);
00729 }
00730
00731 static unsigned
00732 Field_sas4_Slot_inst_get (const xtensa_insnbuf insn)
00733 {
00734 unsigned tie_t = 0;
00735 tie_t = (tie_t << 1) | ((insn[0] << 15) >> 31);
00736 return tie_t;
00737 }
00738
00739 static void
00740 Field_sas4_Slot_inst_set (xtensa_insnbuf insn, uint32 val)
00741 {
00742 uint32 tie_t;
00743 tie_t = (val << 31) >> 31;
00744 insn[0] = (insn[0] & ~0x10000) | (tie_t << 16);
00745 }
00746
00747 static unsigned
00748 Field_sas_Slot_inst_get (const xtensa_insnbuf insn)
00749 {
00750 unsigned tie_t = 0;
00751 tie_t = (tie_t << 1) | ((insn[0] << 15) >> 31);
00752 tie_t = (tie_t << 4) | ((insn[0] << 16) >> 28);
00753 return tie_t;
00754 }
00755
00756 static void
00757 Field_sas_Slot_inst_set (xtensa_insnbuf insn, uint32 val)
00758 {
00759 uint32 tie_t;
00760 tie_t = (val << 28) >> 28;
00761 insn[0] = (insn[0] & ~0xf000) | (tie_t << 12);
00762 tie_t = (val << 27) >> 31;
00763 insn[0] = (insn[0] & ~0x10000) | (tie_t << 16);
00764 }
00765
00766 static unsigned
00767 Field_sr_Slot_inst16a_get (const xtensa_insnbuf insn)
00768 {
00769 unsigned tie_t = 0;
00770 tie_t = (tie_t << 4) | ((insn[0] << 24) >> 28);
00771 tie_t = (tie_t << 4) | ((insn[0] << 28) >> 28);
00772 return tie_t;
00773 }
00774
00775 static void
00776 Field_sr_Slot_inst16a_set (xtensa_insnbuf insn, uint32 val)
00777 {
00778 uint32 tie_t;
00779 tie_t = (val << 28) >> 28;
00780 insn[0] = (insn[0] & ~0xf) | (tie_t << 0);
00781 tie_t = (val << 24) >> 28;
00782 insn[0] = (insn[0] & ~0xf0) | (tie_t << 4);
00783 }
00784
00785 static unsigned
00786 Field_sr_Slot_inst16b_get (const xtensa_insnbuf insn)
00787 {
00788 unsigned tie_t = 0;
00789 tie_t = (tie_t << 4) | ((insn[0] << 24) >> 28);
00790 tie_t = (tie_t << 4) | ((insn[0] << 28) >> 28);
00791 return tie_t;
00792 }
00793
00794 static void
00795 Field_sr_Slot_inst16b_set (xtensa_insnbuf insn, uint32 val)
00796 {
00797 uint32 tie_t;
00798 tie_t = (val << 28) >> 28;
00799 insn[0] = (insn[0] & ~0xf) | (tie_t << 0);
00800 tie_t = (val << 24) >> 28;
00801 insn[0] = (insn[0] & ~0xf0) | (tie_t << 4);
00802 }
00803
00804 static unsigned
00805 Field_st_Slot_inst_get (const xtensa_insnbuf insn)
00806 {
00807 unsigned tie_t = 0;
00808 tie_t = (tie_t << 4) | ((insn[0] << 16) >> 28);
00809 tie_t = (tie_t << 4) | ((insn[0] << 12) >> 28);
00810 return tie_t;
00811 }
00812
00813 static void
00814 Field_st_Slot_inst_set (xtensa_insnbuf insn, uint32 val)
00815 {
00816 uint32 tie_t;
00817 tie_t = (val << 28) >> 28;
00818 insn[0] = (insn[0] & ~0xf0000) | (tie_t << 16);
00819 tie_t = (val << 24) >> 28;
00820 insn[0] = (insn[0] & ~0xf000) | (tie_t << 12);
00821 }
00822
00823 static unsigned
00824 Field_st_Slot_inst16a_get (const xtensa_insnbuf insn)
00825 {
00826 unsigned tie_t = 0;
00827 tie_t = (tie_t << 4) | ((insn[0] << 24) >> 28);
00828 tie_t = (tie_t << 4) | ((insn[0] << 20) >> 28);
00829 return tie_t;
00830 }
00831
00832 static void
00833 Field_st_Slot_inst16a_set (xtensa_insnbuf insn, uint32 val)
00834 {
00835 uint32 tie_t;
00836 tie_t = (val << 28) >> 28;
00837 insn[0] = (insn[0] & ~0xf00) | (tie_t << 8);
00838 tie_t = (val << 24) >> 28;
00839 insn[0] = (insn[0] & ~0xf0) | (tie_t << 4);
00840 }
00841
00842 static unsigned
00843 Field_st_Slot_inst16b_get (const xtensa_insnbuf insn)
00844 {
00845 unsigned tie_t = 0;
00846 tie_t = (tie_t << 4) | ((insn[0] << 24) >> 28);
00847 tie_t = (tie_t << 4) | ((insn[0] << 20) >> 28);
00848 return tie_t;
00849 }
00850
00851 static void
00852 Field_st_Slot_inst16b_set (xtensa_insnbuf insn, uint32 val)
00853 {
00854 uint32 tie_t;
00855 tie_t = (val << 28) >> 28;
00856 insn[0] = (insn[0] & ~0xf00) | (tie_t << 8);
00857 tie_t = (val << 24) >> 28;
00858 insn[0] = (insn[0] & ~0xf0) | (tie_t << 4);
00859 }
00860
00861 static unsigned
00862 Field_imm4_Slot_inst_get (const xtensa_insnbuf insn)
00863 {
00864 unsigned tie_t = 0;
00865 tie_t = (tie_t << 4) | ((insn[0] << 20) >> 28);
00866 return tie_t;
00867 }
00868
00869 static void
00870 Field_imm4_Slot_inst_set (xtensa_insnbuf insn, uint32 val)
00871 {
00872 uint32 tie_t;
00873 tie_t = (val << 28) >> 28;
00874 insn[0] = (insn[0] & ~0xf00) | (tie_t << 8);
00875 }
00876
00877 static unsigned
00878 Field_imm4_Slot_inst16a_get (const xtensa_insnbuf insn)
00879 {
00880 unsigned tie_t = 0;
00881 tie_t = (tie_t << 4) | ((insn[0] << 28) >> 28);
00882 return tie_t;
00883 }
00884
00885 static void
00886 Field_imm4_Slot_inst16a_set (xtensa_insnbuf insn, uint32 val)
00887 {
00888 uint32 tie_t;
00889 tie_t = (val << 28) >> 28;
00890 insn[0] = (insn[0] & ~0xf) | (tie_t << 0);
00891 }
00892
00893 static unsigned
00894 Field_imm4_Slot_inst16b_get (const xtensa_insnbuf insn)
00895 {
00896 unsigned tie_t = 0;
00897 tie_t = (tie_t << 4) | ((insn[0] << 28) >> 28);
00898 return tie_t;
00899 }
00900
00901 static void
00902 Field_imm4_Slot_inst16b_set (xtensa_insnbuf insn, uint32 val)
00903 {
00904 uint32 tie_t;
00905 tie_t = (val << 28) >> 28;
00906 insn[0] = (insn[0] & ~0xf) | (tie_t << 0);
00907 }
00908
00909 static unsigned
00910 Field_mn_Slot_inst_get (const xtensa_insnbuf insn)
00911 {
00912 unsigned tie_t = 0;
00913 tie_t = (tie_t << 2) | ((insn[0] << 12) >> 30);
00914 tie_t = (tie_t << 2) | ((insn[0] << 14) >> 30);
00915 return tie_t;
00916 }
00917
00918 static void
00919 Field_mn_Slot_inst_set (xtensa_insnbuf insn, uint32 val)
00920 {
00921 uint32 tie_t;
00922 tie_t = (val << 30) >> 30;
00923 insn[0] = (insn[0] & ~0x30000) | (tie_t << 16);
00924 tie_t = (val << 28) >> 30;
00925 insn[0] = (insn[0] & ~0xc0000) | (tie_t << 18);
00926 }
00927
00928 static unsigned
00929 Field_i_Slot_inst16a_get (const xtensa_insnbuf insn)
00930 {
00931 unsigned tie_t = 0;
00932 tie_t = (tie_t << 1) | ((insn[0] << 20) >> 31);
00933 return tie_t;
00934 }
00935
00936 static void
00937 Field_i_Slot_inst16a_set (xtensa_insnbuf insn, uint32 val)
00938 {
00939 uint32 tie_t;
00940 tie_t = (val << 31) >> 31;
00941 insn[0] = (insn[0] & ~0x800) | (tie_t << 11);
00942 }
00943
00944 static unsigned
00945 Field_imm6lo_Slot_inst16a_get (const xtensa_insnbuf insn)
00946 {
00947 unsigned tie_t = 0;
00948 tie_t = (tie_t << 4) | ((insn[0] << 28) >> 28);
00949 return tie_t;
00950 }
00951
00952 static void
00953 Field_imm6lo_Slot_inst16a_set (xtensa_insnbuf insn, uint32 val)
00954 {
00955 uint32 tie_t;
00956 tie_t = (val << 28) >> 28;
00957 insn[0] = (insn[0] & ~0xf) | (tie_t << 0);
00958 }
00959
00960 static unsigned
00961 Field_imm6lo_Slot_inst16b_get (const xtensa_insnbuf insn)
00962 {
00963 unsigned tie_t = 0;
00964 tie_t = (tie_t << 4) | ((insn[0] << 28) >> 28);
00965 return tie_t;
00966 }
00967
00968 static void
00969 Field_imm6lo_Slot_inst16b_set (xtensa_insnbuf insn, uint32 val)
00970 {
00971 uint32 tie_t;
00972 tie_t = (val << 28) >> 28;
00973 insn[0] = (insn[0] & ~0xf) | (tie_t << 0);
00974 }
00975
00976 static unsigned
00977 Field_imm6hi_Slot_inst16a_get (const xtensa_insnbuf insn)
00978 {
00979 unsigned tie_t = 0;
00980 tie_t = (tie_t << 2) | ((insn[0] << 22) >> 30);
00981 return tie_t;
00982 }
00983
00984 static void
00985 Field_imm6hi_Slot_inst16a_set (xtensa_insnbuf insn, uint32 val)
00986 {
00987 uint32 tie_t;
00988 tie_t = (val << 30) >> 30;
00989 insn[0] = (insn[0] & ~0x300) | (tie_t << 8);
00990 }
00991
00992 static unsigned
00993 Field_imm6hi_Slot_inst16b_get (const xtensa_insnbuf insn)
00994 {
00995 unsigned tie_t = 0;
00996 tie_t = (tie_t << 2) | ((insn[0] << 22) >> 30);
00997 return tie_t;
00998 }
00999
01000 static void
01001 Field_imm6hi_Slot_inst16b_set (xtensa_insnbuf insn, uint32 val)
01002 {
01003 uint32 tie_t;
01004 tie_t = (val << 30) >> 30;
01005 insn[0] = (insn[0] & ~0x300) | (tie_t << 8);
01006 }
01007
01008 static unsigned
01009 Field_imm7lo_Slot_inst16a_get (const xtensa_insnbuf insn)
01010 {
01011 unsigned tie_t = 0;
01012 tie_t = (tie_t << 4) | ((insn[0] << 28) >> 28);
01013 return tie_t;
01014 }
01015
01016 static void
01017 Field_imm7lo_Slot_inst16a_set (xtensa_insnbuf insn, uint32 val)
01018 {
01019 uint32 tie_t;
01020 tie_t = (val << 28) >> 28;
01021 insn[0] = (insn[0] & ~0xf) | (tie_t << 0);
01022 }
01023
01024 static unsigned
01025 Field_imm7lo_Slot_inst16b_get (const xtensa_insnbuf insn)
01026 {
01027 unsigned tie_t = 0;
01028 tie_t = (tie_t << 4) | ((insn[0] << 28) >> 28);
01029 return tie_t;
01030 }
01031
01032 static void
01033 Field_imm7lo_Slot_inst16b_set (xtensa_insnbuf insn, uint32 val)
01034 {
01035 uint32 tie_t;
01036 tie_t = (val << 28) >> 28;
01037 insn[0] = (insn[0] & ~0xf) | (tie_t << 0);
01038 }
01039
01040 static unsigned
01041 Field_imm7hi_Slot_inst16a_get (const xtensa_insnbuf insn)
01042 {
01043 unsigned tie_t = 0;
01044 tie_t = (tie_t << 3) | ((insn[0] << 21) >> 29);
01045 return tie_t;
01046 }
01047
01048 static void
01049 Field_imm7hi_Slot_inst16a_set (xtensa_insnbuf insn, uint32 val)
01050 {
01051 uint32 tie_t;
01052 tie_t = (val << 29) >> 29;
01053 insn[0] = (insn[0] & ~0x700) | (tie_t << 8);
01054 }
01055
01056 static unsigned
01057 Field_imm7hi_Slot_inst16b_get (const xtensa_insnbuf insn)
01058 {
01059 unsigned tie_t = 0;
01060 tie_t = (tie_t << 3) | ((insn[0] << 21) >> 29);
01061 return tie_t;
01062 }
01063
01064 static void
01065 Field_imm7hi_Slot_inst16b_set (xtensa_insnbuf insn, uint32 val)
01066 {
01067 uint32 tie_t;
01068 tie_t = (val << 29) >> 29;
01069 insn[0] = (insn[0] & ~0x700) | (tie_t << 8);
01070 }
01071
01072 static unsigned
01073 Field_z_Slot_inst16a_get (const xtensa_insnbuf insn)
01074 {
01075 unsigned tie_t = 0;
01076 tie_t = (tie_t << 1) | ((insn[0] << 21) >> 31);
01077 return tie_t;
01078 }
01079
01080 static void
01081 Field_z_Slot_inst16a_set (xtensa_insnbuf insn, uint32 val)
01082 {
01083 uint32 tie_t;
01084 tie_t = (val << 31) >> 31;
01085 insn[0] = (insn[0] & ~0x400) | (tie_t << 10);
01086 }
01087
01088 static unsigned
01089 Field_imm6_Slot_inst16a_get (const xtensa_insnbuf insn)
01090 {
01091 unsigned tie_t = 0;
01092 tie_t = (tie_t << 2) | ((insn[0] << 22) >> 30);
01093 tie_t = (tie_t << 4) | ((insn[0] << 28) >> 28);
01094 return tie_t;
01095 }
01096
01097 static void
01098 Field_imm6_Slot_inst16a_set (xtensa_insnbuf insn, uint32 val)
01099 {
01100 uint32 tie_t;
01101 tie_t = (val << 28) >> 28;
01102 insn[0] = (insn[0] & ~0xf) | (tie_t << 0);
01103 tie_t = (val << 26) >> 30;
01104 insn[0] = (insn[0] & ~0x300) | (tie_t << 8);
01105 }
01106
01107 static unsigned
01108 Field_imm6_Slot_inst16b_get (const xtensa_insnbuf insn)
01109 {
01110 unsigned tie_t = 0;
01111 tie_t = (tie_t << 2) | ((insn[0] << 22) >> 30);
01112 tie_t = (tie_t << 4) | ((insn[0] << 28) >> 28);
01113 return tie_t;
01114 }
01115
01116 static void
01117 Field_imm6_Slot_inst16b_set (xtensa_insnbuf insn, uint32 val)
01118 {
01119 uint32 tie_t;
01120 tie_t = (val << 28) >> 28;
01121 insn[0] = (insn[0] & ~0xf) | (tie_t << 0);
01122 tie_t = (val << 26) >> 30;
01123 insn[0] = (insn[0] & ~0x300) | (tie_t << 8);
01124 }
01125
01126 static unsigned
01127 Field_imm7_Slot_inst16a_get (const xtensa_insnbuf insn)
01128 {
01129 unsigned tie_t = 0;
01130 tie_t = (tie_t << 3) | ((insn[0] << 21) >> 29);
01131 tie_t = (tie_t << 4) | ((insn[0] << 28) >> 28);
01132 return tie_t;
01133 }
01134
01135 static void
01136 Field_imm7_Slot_inst16a_set (xtensa_insnbuf insn, uint32 val)
01137 {
01138 uint32 tie_t;
01139 tie_t = (val << 28) >> 28;
01140 insn[0] = (insn[0] & ~0xf) | (tie_t << 0);
01141 tie_t = (val << 25) >> 29;
01142 insn[0] = (insn[0] & ~0x700) | (tie_t << 8);
01143 }
01144
01145 static unsigned
01146 Field_imm7_Slot_inst16b_get (const xtensa_insnbuf insn)
01147 {
01148 unsigned tie_t = 0;
01149 tie_t = (tie_t << 3) | ((insn[0] << 21) >> 29);
01150 tie_t = (tie_t << 4) | ((insn[0] << 28) >> 28);
01151 return tie_t;
01152 }
01153
01154 static void
01155 Field_imm7_Slot_inst16b_set (xtensa_insnbuf insn, uint32 val)
01156 {
01157 uint32 tie_t;
01158 tie_t = (val << 28) >> 28;
01159 insn[0] = (insn[0] & ~0xf) | (tie_t << 0);
01160 tie_t = (val << 25) >> 29;
01161 insn[0] = (insn[0] & ~0x700) | (tie_t << 8);
01162 }
01163
01164 static void
01165 Implicit_Field_set (xtensa_insnbuf insn ATTRIBUTE_UNUSED,
01166 uint32 val ATTRIBUTE_UNUSED)
01167 {
01168
01169 }
01170
01171 static unsigned
01172 Implicit_Field_ar0_get (const xtensa_insnbuf insn ATTRIBUTE_UNUSED)
01173 {
01174 return 0;
01175 }
01176
01177 static unsigned
01178 Implicit_Field_ar4_get (const xtensa_insnbuf insn ATTRIBUTE_UNUSED)
01179 {
01180 return 4;
01181 }
01182
01183 static unsigned
01184 Implicit_Field_ar8_get (const xtensa_insnbuf insn ATTRIBUTE_UNUSED)
01185 {
01186 return 8;
01187 }
01188
01189 static unsigned
01190 Implicit_Field_ar12_get (const xtensa_insnbuf insn ATTRIBUTE_UNUSED)
01191 {
01192 return 12;
01193 }
01194
01195
01196
01197
01198 static xtensa_funcUnit_internal funcUnits[] = {
01199
01200 };
01201
01202
01203
01204
01205 static xtensa_regfile_internal regfiles[] = {
01206 { "AR", "a", 0, 32, 64 }
01207 };
01208
01209
01210
01211
01212 static xtensa_interface_internal interfaces[] = {
01213
01214 };
01215
01216
01217
01218
01219
01220 static const unsigned CONST_TBL_ai4c_0[] = {
01221 0xffffffff,
01222 0x1,
01223 0x2,
01224 0x3,
01225 0x4,
01226 0x5,
01227 0x6,
01228 0x7,
01229 0x8,
01230 0x9,
01231 0xa,
01232 0xb,
01233 0xc,
01234 0xd,
01235 0xe,
01236 0xf,
01237 0
01238 };
01239
01240
01241 static const unsigned CONST_TBL_b4c_0[] = {
01242 0xffffffff,
01243 0x1,
01244 0x2,
01245 0x3,
01246 0x4,
01247 0x5,
01248 0x6,
01249 0x7,
01250 0x8,
01251 0xa,
01252 0xc,
01253 0x10,
01254 0x20,
01255 0x40,
01256 0x80,
01257 0x100,
01258 0
01259 };
01260
01261
01262 static const unsigned CONST_TBL_b4cu_0[] = {
01263 0x8000,
01264 0x10000,
01265 0x2,
01266 0x3,
01267 0x4,
01268 0x5,
01269 0x6,
01270 0x7,
01271 0x8,
01272 0xa,
01273 0xc,
01274 0x10,
01275 0x20,
01276 0x40,
01277 0x80,
01278 0x100,
01279 0
01280 };
01281
01282
01283
01284
01285 static int
01286 Operand_soffsetx4_decode (uint32 *valp)
01287 {
01288 unsigned soffsetx4_0, offset_0;
01289 offset_0 = *valp & 0x3ffff;
01290 soffsetx4_0 = 0x4 + ((((int) offset_0 << 14) >> 14) << 2);
01291 *valp = soffsetx4_0;
01292 return 0;
01293 }
01294
01295 static int
01296 Operand_soffsetx4_encode (uint32 *valp)
01297 {
01298 unsigned offset_0, soffsetx4_0;
01299 soffsetx4_0 = *valp;
01300 offset_0 = ((soffsetx4_0 - 0x4) >> 2) & 0x3ffff;
01301 *valp = offset_0;
01302 return 0;
01303 }
01304
01305 static int
01306 Operand_soffsetx4_ator (uint32 *valp, uint32 pc)
01307 {
01308 *valp -= (pc & ~0x3);
01309 return 0;
01310 }
01311
01312 static int
01313 Operand_soffsetx4_rtoa (uint32 *valp, uint32 pc)
01314 {
01315 *valp += (pc & ~0x3);
01316 return 0;
01317 }
01318
01319 static int
01320 Operand_uimm12x8_decode (uint32 *valp)
01321 {
01322 unsigned uimm12x8_0, imm12_0;
01323 imm12_0 = *valp & 0xfff;
01324 uimm12x8_0 = imm12_0 << 3;
01325 *valp = uimm12x8_0;
01326 return 0;
01327 }
01328
01329 static int
01330 Operand_uimm12x8_encode (uint32 *valp)
01331 {
01332 unsigned imm12_0, uimm12x8_0;
01333 uimm12x8_0 = *valp;
01334 imm12_0 = ((uimm12x8_0 >> 3) & 0xfff);
01335 *valp = imm12_0;
01336 return 0;
01337 }
01338
01339 static int
01340 Operand_simm4_decode (uint32 *valp)
01341 {
01342 unsigned simm4_0, mn_0;
01343 mn_0 = *valp & 0xf;
01344 simm4_0 = ((int) mn_0 << 28) >> 28;
01345 *valp = simm4_0;
01346 return 0;
01347 }
01348
01349 static int
01350 Operand_simm4_encode (uint32 *valp)
01351 {
01352 unsigned mn_0, simm4_0;
01353 simm4_0 = *valp;
01354 mn_0 = (simm4_0 & 0xf);
01355 *valp = mn_0;
01356 return 0;
01357 }
01358
01359 static int
01360 Operand_arr_decode (uint32 *valp ATTRIBUTE_UNUSED)
01361 {
01362 return 0;
01363 }
01364
01365 static int
01366 Operand_arr_encode (uint32 *valp)
01367 {
01368 int error;
01369 error = (*valp & ~0xf) != 0;
01370 return error;
01371 }
01372
01373 static int
01374 Operand_ars_decode (uint32 *valp ATTRIBUTE_UNUSED)
01375 {
01376 return 0;
01377 }
01378
01379 static int
01380 Operand_ars_encode (uint32 *valp)
01381 {
01382 int error;
01383 error = (*valp & ~0xf) != 0;
01384 return error;
01385 }
01386
01387 static int
01388 Operand_art_decode (uint32 *valp ATTRIBUTE_UNUSED)
01389 {
01390 return 0;
01391 }
01392
01393 static int
01394 Operand_art_encode (uint32 *valp)
01395 {
01396 int error;
01397 error = (*valp & ~0xf) != 0;
01398 return error;
01399 }
01400
01401 static int
01402 Operand_ar0_decode (uint32 *valp ATTRIBUTE_UNUSED)
01403 {
01404 return 0;
01405 }
01406
01407 static int
01408 Operand_ar0_encode (uint32 *valp)
01409 {
01410 int error;
01411 error = (*valp & ~0x3f) != 0;
01412 return error;
01413 }
01414
01415 static int
01416 Operand_ar4_decode (uint32 *valp ATTRIBUTE_UNUSED)
01417 {
01418 return 0;
01419 }
01420
01421 static int
01422 Operand_ar4_encode (uint32 *valp)
01423 {
01424 int error;
01425 error = (*valp & ~0x3f) != 0;
01426 return error;
01427 }
01428
01429 static int
01430 Operand_ar8_decode (uint32 *valp ATTRIBUTE_UNUSED)
01431 {
01432 return 0;
01433 }
01434
01435 static int
01436 Operand_ar8_encode (uint32 *valp)
01437 {
01438 int error;
01439 error = (*valp & ~0x3f) != 0;
01440 return error;
01441 }
01442
01443 static int
01444 Operand_ar12_decode (uint32 *valp ATTRIBUTE_UNUSED)
01445 {
01446 return 0;
01447 }
01448
01449 static int
01450 Operand_ar12_encode (uint32 *valp)
01451 {
01452 int error;
01453 error = (*valp & ~0x3f) != 0;
01454 return error;
01455 }
01456
01457 static int
01458 Operand_ars_entry_decode (uint32 *valp ATTRIBUTE_UNUSED)
01459 {
01460 return 0;
01461 }
01462
01463 static int
01464 Operand_ars_entry_encode (uint32 *valp)
01465 {
01466 int error;
01467 error = (*valp & ~0x3f) != 0;
01468 return error;
01469 }
01470
01471 static int
01472 Operand_immrx4_decode (uint32 *valp)
01473 {
01474 unsigned immrx4_0, r_0;
01475 r_0 = *valp & 0xf;
01476 immrx4_0 = ((((0xfffffff)) << 4) | r_0) << 2;
01477 *valp = immrx4_0;
01478 return 0;
01479 }
01480
01481 static int
01482 Operand_immrx4_encode (uint32 *valp)
01483 {
01484 unsigned r_0, immrx4_0;
01485 immrx4_0 = *valp;
01486 r_0 = ((immrx4_0 >> 2) & 0xf);
01487 *valp = r_0;
01488 return 0;
01489 }
01490
01491 static int
01492 Operand_lsi4x4_decode (uint32 *valp)
01493 {
01494 unsigned lsi4x4_0, r_0;
01495 r_0 = *valp & 0xf;
01496 lsi4x4_0 = r_0 << 2;
01497 *valp = lsi4x4_0;
01498 return 0;
01499 }
01500
01501 static int
01502 Operand_lsi4x4_encode (uint32 *valp)
01503 {
01504 unsigned r_0, lsi4x4_0;
01505 lsi4x4_0 = *valp;
01506 r_0 = ((lsi4x4_0 >> 2) & 0xf);
01507 *valp = r_0;
01508 return 0;
01509 }
01510
01511 static int
01512 Operand_simm7_decode (uint32 *valp)
01513 {
01514 unsigned simm7_0, imm7_0;
01515 imm7_0 = *valp & 0x7f;
01516 simm7_0 = ((((-((((imm7_0 >> 6) & 1)) & (((imm7_0 >> 5) & 1)))) & 0x1ffffff)) << 7) | imm7_0;
01517 *valp = simm7_0;
01518 return 0;
01519 }
01520
01521 static int
01522 Operand_simm7_encode (uint32 *valp)
01523 {
01524 unsigned imm7_0, simm7_0;
01525 simm7_0 = *valp;
01526 imm7_0 = (simm7_0 & 0x7f);
01527 *valp = imm7_0;
01528 return 0;
01529 }
01530
01531 static int
01532 Operand_uimm6_decode (uint32 *valp)
01533 {
01534 unsigned uimm6_0, imm6_0;
01535 imm6_0 = *valp & 0x3f;
01536 uimm6_0 = 0x4 + ((((0)) << 6) | imm6_0);
01537 *valp = uimm6_0;
01538 return 0;
01539 }
01540
01541 static int
01542 Operand_uimm6_encode (uint32 *valp)
01543 {
01544 unsigned imm6_0, uimm6_0;
01545 uimm6_0 = *valp;
01546 imm6_0 = (uimm6_0 - 0x4) & 0x3f;
01547 *valp = imm6_0;
01548 return 0;
01549 }
01550
01551 static int
01552 Operand_uimm6_ator (uint32 *valp, uint32 pc)
01553 {
01554 *valp -= pc;
01555 return 0;
01556 }
01557
01558 static int
01559 Operand_uimm6_rtoa (uint32 *valp, uint32 pc)
01560 {
01561 *valp += pc;
01562 return 0;
01563 }
01564
01565 static int
01566 Operand_ai4const_decode (uint32 *valp)
01567 {
01568 unsigned ai4const_0, t_0;
01569 t_0 = *valp & 0xf;
01570 ai4const_0 = CONST_TBL_ai4c_0[t_0 & 0xf];
01571 *valp = ai4const_0;
01572 return 0;
01573 }
01574
01575 static int
01576 Operand_ai4const_encode (uint32 *valp)
01577 {
01578 unsigned t_0, ai4const_0;
01579 ai4const_0 = *valp;
01580 switch (ai4const_0)
01581 {
01582 case 0xffffffff: t_0 = 0; break;
01583 case 0x1: t_0 = 0x1; break;
01584 case 0x2: t_0 = 0x2; break;
01585 case 0x3: t_0 = 0x3; break;
01586 case 0x4: t_0 = 0x4; break;
01587 case 0x5: t_0 = 0x5; break;
01588 case 0x6: t_0 = 0x6; break;
01589 case 0x7: t_0 = 0x7; break;
01590 case 0x8: t_0 = 0x8; break;
01591 case 0x9: t_0 = 0x9; break;
01592 case 0xa: t_0 = 0xa; break;
01593 case 0xb: t_0 = 0xb; break;
01594 case 0xc: t_0 = 0xc; break;
01595 case 0xd: t_0 = 0xd; break;
01596 case 0xe: t_0 = 0xe; break;
01597 default: t_0 = 0xf; break;
01598 }
01599 *valp = t_0;
01600 return 0;
01601 }
01602
01603 static int
01604 Operand_b4const_decode (uint32 *valp)
01605 {
01606 unsigned b4const_0, r_0;
01607 r_0 = *valp & 0xf;
01608 b4const_0 = CONST_TBL_b4c_0[r_0 & 0xf];
01609 *valp = b4const_0;
01610 return 0;
01611 }
01612
01613 static int
01614 Operand_b4const_encode (uint32 *valp)
01615 {
01616 unsigned r_0, b4const_0;
01617 b4const_0 = *valp;
01618 switch (b4const_0)
01619 {
01620 case 0xffffffff: r_0 = 0; break;
01621 case 0x1: r_0 = 0x1; break;
01622 case 0x2: r_0 = 0x2; break;
01623 case 0x3: r_0 = 0x3; break;
01624 case 0x4: r_0 = 0x4; break;
01625 case 0x5: r_0 = 0x5; break;
01626 case 0x6: r_0 = 0x6; break;
01627 case 0x7: r_0 = 0x7; break;
01628 case 0x8: r_0 = 0x8; break;
01629 case 0xa: r_0 = 0x9; break;
01630 case 0xc: r_0 = 0xa; break;
01631 case 0x10: r_0 = 0xb; break;
01632 case 0x20: r_0 = 0xc; break;
01633 case 0x40: r_0 = 0xd; break;
01634 case 0x80: r_0 = 0xe; break;
01635 default: r_0 = 0xf; break;
01636 }
01637 *valp = r_0;
01638 return 0;
01639 }
01640
01641 static int
01642 Operand_b4constu_decode (uint32 *valp)
01643 {
01644 unsigned b4constu_0, r_0;
01645 r_0 = *valp & 0xf;
01646 b4constu_0 = CONST_TBL_b4cu_0[r_0 & 0xf];
01647 *valp = b4constu_0;
01648 return 0;
01649 }
01650
01651 static int
01652 Operand_b4constu_encode (uint32 *valp)
01653 {
01654 unsigned r_0, b4constu_0;
01655 b4constu_0 = *valp;
01656 switch (b4constu_0)
01657 {
01658 case 0x8000: r_0 = 0; break;
01659 case 0x10000: r_0 = 0x1; break;
01660 case 0x2: r_0 = 0x2; break;
01661 case 0x3: r_0 = 0x3; break;
01662 case 0x4: r_0 = 0x4; break;
01663 case 0x5: r_0 = 0x5; break;
01664 case 0x6: r_0 = 0x6; break;
01665 case 0x7: r_0 = 0x7; break;
01666 case 0x8: r_0 = 0x8; break;
01667 case 0xa: r_0 = 0x9; break;
01668 case 0xc: r_0 = 0xa; break;
01669 case 0x10: r_0 = 0xb; break;
01670 case 0x20: r_0 = 0xc; break;
01671 case 0x40: r_0 = 0xd; break;
01672 case 0x80: r_0 = 0xe; break;
01673 default: r_0 = 0xf; break;
01674 }
01675 *valp = r_0;
01676 return 0;
01677 }
01678
01679 static int
01680 Operand_uimm8_decode (uint32 *valp)
01681 {
01682 unsigned uimm8_0, imm8_0;
01683 imm8_0 = *valp & 0xff;
01684 uimm8_0 = imm8_0;
01685 *valp = uimm8_0;
01686 return 0;
01687 }
01688
01689 static int
01690 Operand_uimm8_encode (uint32 *valp)
01691 {
01692 unsigned imm8_0, uimm8_0;
01693 uimm8_0 = *valp;
01694 imm8_0 = (uimm8_0 & 0xff);
01695 *valp = imm8_0;
01696 return 0;
01697 }
01698
01699 static int
01700 Operand_uimm8x2_decode (uint32 *valp)
01701 {
01702 unsigned uimm8x2_0, imm8_0;
01703 imm8_0 = *valp & 0xff;
01704 uimm8x2_0 = imm8_0 << 1;
01705 *valp = uimm8x2_0;
01706 return 0;
01707 }
01708
01709 static int
01710 Operand_uimm8x2_encode (uint32 *valp)
01711 {
01712 unsigned imm8_0, uimm8x2_0;
01713 uimm8x2_0 = *valp;
01714 imm8_0 = ((uimm8x2_0 >> 1) & 0xff);
01715 *valp = imm8_0;
01716 return 0;
01717 }
01718
01719 static int
01720 Operand_uimm8x4_decode (uint32 *valp)
01721 {
01722 unsigned uimm8x4_0, imm8_0;
01723 imm8_0 = *valp & 0xff;
01724 uimm8x4_0 = imm8_0 << 2;
01725 *valp = uimm8x4_0;
01726 return 0;
01727 }
01728
01729 static int
01730 Operand_uimm8x4_encode (uint32 *valp)
01731 {
01732 unsigned imm8_0, uimm8x4_0;
01733 uimm8x4_0 = *valp;
01734 imm8_0 = ((uimm8x4_0 >> 2) & 0xff);
01735 *valp = imm8_0;
01736 return 0;
01737 }
01738
01739 static int
01740 Operand_uimm4x16_decode (uint32 *valp)
01741 {
01742 unsigned uimm4x16_0, op2_0;
01743 op2_0 = *valp & 0xf;
01744 uimm4x16_0 = op2_0 << 4;
01745 *valp = uimm4x16_0;
01746 return 0;
01747 }
01748
01749 static int
01750 Operand_uimm4x16_encode (uint32 *valp)
01751 {
01752 unsigned op2_0, uimm4x16_0;
01753 uimm4x16_0 = *valp;
01754 op2_0 = ((uimm4x16_0 >> 4) & 0xf);
01755 *valp = op2_0;
01756 return 0;
01757 }
01758
01759 static int
01760 Operand_simm8_decode (uint32 *valp)
01761 {
01762 unsigned simm8_0, imm8_0;
01763 imm8_0 = *valp & 0xff;
01764 simm8_0 = ((int) imm8_0 << 24) >> 24;
01765 *valp = simm8_0;
01766 return 0;
01767 }
01768
01769 static int
01770 Operand_simm8_encode (uint32 *valp)
01771 {
01772 unsigned imm8_0, simm8_0;
01773 simm8_0 = *valp;
01774 imm8_0 = (simm8_0 & 0xff);
01775 *valp = imm8_0;
01776 return 0;
01777 }
01778
01779 static int
01780 Operand_simm8x256_decode (uint32 *valp)
01781 {
01782 unsigned simm8x256_0, imm8_0;
01783 imm8_0 = *valp & 0xff;
01784 simm8x256_0 = (((int) imm8_0 << 24) >> 24) << 8;
01785 *valp = simm8x256_0;
01786 return 0;
01787 }
01788
01789 static int
01790 Operand_simm8x256_encode (uint32 *valp)
01791 {
01792 unsigned imm8_0, simm8x256_0;
01793 simm8x256_0 = *valp;
01794 imm8_0 = ((simm8x256_0 >> 8) & 0xff);
01795 *valp = imm8_0;
01796 return 0;
01797 }
01798
01799 static int
01800 Operand_simm12b_decode (uint32 *valp)
01801 {
01802 unsigned simm12b_0, imm12b_0;
01803 imm12b_0 = *valp & 0xfff;
01804 simm12b_0 = ((int) imm12b_0 << 20) >> 20;
01805 *valp = simm12b_0;
01806 return 0;
01807 }
01808
01809 static int
01810 Operand_simm12b_encode (uint32 *valp)
01811 {
01812 unsigned imm12b_0, simm12b_0;
01813 simm12b_0 = *valp;
01814 imm12b_0 = (simm12b_0 & 0xfff);
01815 *valp = imm12b_0;
01816 return 0;
01817 }
01818
01819 static int
01820 Operand_msalp32_decode (uint32 *valp)
01821 {
01822 unsigned msalp32_0, sal_0;
01823 sal_0 = *valp & 0x1f;
01824 msalp32_0 = 0x20 - sal_0;
01825 *valp = msalp32_0;
01826 return 0;
01827 }
01828
01829 static int
01830 Operand_msalp32_encode (uint32 *valp)
01831 {
01832 unsigned sal_0, msalp32_0;
01833 msalp32_0 = *valp;
01834 sal_0 = (0x20 - msalp32_0) & 0x1f;
01835 *valp = sal_0;
01836 return 0;
01837 }
01838
01839 static int
01840 Operand_op2p1_decode (uint32 *valp)
01841 {
01842 unsigned op2p1_0, op2_0;
01843 op2_0 = *valp & 0xf;
01844 op2p1_0 = op2_0 + 0x1;
01845 *valp = op2p1_0;
01846 return 0;
01847 }
01848
01849 static int
01850 Operand_op2p1_encode (uint32 *valp)
01851 {
01852 unsigned op2_0, op2p1_0;
01853 op2p1_0 = *valp;
01854 op2_0 = (op2p1_0 - 0x1) & 0xf;
01855 *valp = op2_0;
01856 return 0;
01857 }
01858
01859 static int
01860 Operand_label8_decode (uint32 *valp)
01861 {
01862 unsigned label8_0, imm8_0;
01863 imm8_0 = *valp & 0xff;
01864 label8_0 = 0x4 + (((int) imm8_0 << 24) >> 24);
01865 *valp = label8_0;
01866 return 0;
01867 }
01868
01869 static int
01870 Operand_label8_encode (uint32 *valp)
01871 {
01872 unsigned imm8_0, label8_0;
01873 label8_0 = *valp;
01874 imm8_0 = (label8_0 - 0x4) & 0xff;
01875 *valp = imm8_0;
01876 return 0;
01877 }
01878
01879 static int
01880 Operand_label8_ator (uint32 *valp, uint32 pc)
01881 {
01882 *valp -= pc;
01883 return 0;
01884 }
01885
01886 static int
01887 Operand_label8_rtoa (uint32 *valp, uint32 pc)
01888 {
01889 *valp += pc;
01890 return 0;
01891 }
01892
01893 static int
01894 Operand_ulabel8_decode (uint32 *valp)
01895 {
01896 unsigned ulabel8_0, imm8_0;
01897 imm8_0 = *valp & 0xff;
01898 ulabel8_0 = 0x4 + ((((0)) << 8) | imm8_0);
01899 *valp = ulabel8_0;
01900 return 0;
01901 }
01902
01903 static int
01904 Operand_ulabel8_encode (uint32 *valp)
01905 {
01906 unsigned imm8_0, ulabel8_0;
01907 ulabel8_0 = *valp;
01908 imm8_0 = (ulabel8_0 - 0x4) & 0xff;
01909 *valp = imm8_0;
01910 return 0;
01911 }
01912
01913 static int
01914 Operand_ulabel8_ator (uint32 *valp, uint32 pc)
01915 {
01916 *valp -= pc;
01917 return 0;
01918 }
01919
01920 static int
01921 Operand_ulabel8_rtoa (uint32 *valp, uint32 pc)
01922 {
01923 *valp += pc;
01924 return 0;
01925 }
01926
01927 static int
01928 Operand_label12_decode (uint32 *valp)
01929 {
01930 unsigned label12_0, imm12_0;
01931 imm12_0 = *valp & 0xfff;
01932 label12_0 = 0x4 + (((int) imm12_0 << 20) >> 20);
01933 *valp = label12_0;
01934 return 0;
01935 }
01936
01937 static int
01938 Operand_label12_encode (uint32 *valp)
01939 {
01940 unsigned imm12_0, label12_0;
01941 label12_0 = *valp;
01942 imm12_0 = (label12_0 - 0x4) & 0xfff;
01943 *valp = imm12_0;
01944 return 0;
01945 }
01946
01947 static int
01948 Operand_label12_ator (uint32 *valp, uint32 pc)
01949 {
01950 *valp -= pc;
01951 return 0;
01952 }
01953
01954 static int
01955 Operand_label12_rtoa (uint32 *valp, uint32 pc)
01956 {
01957 *valp += pc;
01958 return 0;
01959 }
01960
01961 static int
01962 Operand_soffset_decode (uint32 *valp)
01963 {
01964 unsigned soffset_0, offset_0;
01965 offset_0 = *valp & 0x3ffff;
01966 soffset_0 = 0x4 + (((int) offset_0 << 14) >> 14);
01967 *valp = soffset_0;
01968 return 0;
01969 }
01970
01971 static int
01972 Operand_soffset_encode (uint32 *valp)
01973 {
01974 unsigned offset_0, soffset_0;
01975 soffset_0 = *valp;
01976 offset_0 = (soffset_0 - 0x4) & 0x3ffff;
01977 *valp = offset_0;
01978 return 0;
01979 }
01980
01981 static int
01982 Operand_soffset_ator (uint32 *valp, uint32 pc)
01983 {
01984 *valp -= pc;
01985 return 0;
01986 }
01987
01988 static int
01989 Operand_soffset_rtoa (uint32 *valp, uint32 pc)
01990 {
01991 *valp += pc;
01992 return 0;
01993 }
01994
01995 static int
01996 Operand_uimm16x4_decode (uint32 *valp)
01997 {
01998 unsigned uimm16x4_0, imm16_0;
01999 imm16_0 = *valp & 0xffff;
02000 uimm16x4_0 = ((((0xffff)) << 16) | imm16_0) << 2;
02001 *valp = uimm16x4_0;
02002 return 0;
02003 }
02004
02005 static int
02006 Operand_uimm16x4_encode (uint32 *valp)
02007 {
02008 unsigned imm16_0, uimm16x4_0;
02009 uimm16x4_0 = *valp;
02010 imm16_0 = (uimm16x4_0 >> 2) & 0xffff;
02011 *valp = imm16_0;
02012 return 0;
02013 }
02014
02015 static int
02016 Operand_uimm16x4_ator (uint32 *valp, uint32 pc)
02017 {
02018 *valp -= ((pc + 3) & ~0x3);
02019 return 0;
02020 }
02021
02022 static int
02023 Operand_uimm16x4_rtoa (uint32 *valp, uint32 pc)
02024 {
02025 *valp += ((pc + 3) & ~0x3);
02026 return 0;
02027 }
02028
02029 static int
02030 Operand_immt_decode (uint32 *valp)
02031 {
02032 unsigned immt_0, t_0;
02033 t_0 = *valp & 0xf;
02034 immt_0 = t_0;
02035 *valp = immt_0;
02036 return 0;
02037 }
02038
02039 static int
02040 Operand_immt_encode (uint32 *valp)
02041 {
02042 unsigned t_0, immt_0;
02043 immt_0 = *valp;
02044 t_0 = immt_0 & 0xf;
02045 *valp = t_0;
02046 return 0;
02047 }
02048
02049 static int
02050 Operand_imms_decode (uint32 *valp)
02051 {
02052 unsigned imms_0, s_0;
02053 s_0 = *valp & 0xf;
02054 imms_0 = s_0;
02055 *valp = imms_0;
02056 return 0;
02057 }
02058
02059 static int
02060 Operand_imms_encode (uint32 *valp)
02061 {
02062 unsigned s_0, imms_0;
02063 imms_0 = *valp;
02064 s_0 = imms_0 & 0xf;
02065 *valp = s_0;
02066 return 0;
02067 }
02068
02069 static xtensa_operand_internal operands[] = {
02070 { "soffsetx4", 10, -1, 0,
02071 XTENSA_OPERAND_IS_PCRELATIVE,
02072 Operand_soffsetx4_encode, Operand_soffsetx4_decode,
02073 Operand_soffsetx4_ator, Operand_soffsetx4_rtoa },
02074 { "uimm12x8", 3, -1, 0,
02075 0,
02076 Operand_uimm12x8_encode, Operand_uimm12x8_decode,
02077 0, 0 },
02078 { "simm4", 26, -1, 0,
02079 0,
02080 Operand_simm4_encode, Operand_simm4_decode,
02081 0, 0 },
02082 { "arr", 14, 0, 1,
02083 XTENSA_OPERAND_IS_REGISTER,
02084 Operand_arr_encode, Operand_arr_decode,
02085 0, 0 },
02086 { "ars", 5, 0, 1,
02087 XTENSA_OPERAND_IS_REGISTER,
02088 Operand_ars_encode, Operand_ars_decode,
02089 0, 0 },
02090 { "*ars_invisible", 5, 0, 1,
02091 XTENSA_OPERAND_IS_REGISTER | XTENSA_OPERAND_IS_INVISIBLE,
02092 Operand_ars_encode, Operand_ars_decode,
02093 0, 0 },
02094 { "art", 0, 0, 1,
02095 XTENSA_OPERAND_IS_REGISTER,
02096 Operand_art_encode, Operand_art_decode,
02097 0, 0 },
02098 { "ar0", 35, 0, 1,
02099 XTENSA_OPERAND_IS_REGISTER | XTENSA_OPERAND_IS_INVISIBLE,
02100 Operand_ar0_encode, Operand_ar0_decode,
02101 0, 0 },
02102 { "ar4", 36, 0, 1,
02103 XTENSA_OPERAND_IS_REGISTER | XTENSA_OPERAND_IS_INVISIBLE,
02104 Operand_ar4_encode, Operand_ar4_decode,
02105 0, 0 },
02106 { "ar8", 37, 0, 1,
02107 XTENSA_OPERAND_IS_REGISTER | XTENSA_OPERAND_IS_INVISIBLE,
02108 Operand_ar8_encode, Operand_ar8_decode,
02109 0, 0 },
02110 { "ar12", 38, 0, 1,
02111 XTENSA_OPERAND_IS_REGISTER | XTENSA_OPERAND_IS_INVISIBLE,
02112 Operand_ar12_encode, Operand_ar12_decode,
02113 0, 0 },
02114 { "ars_entry", 5, 0, 1,
02115 XTENSA_OPERAND_IS_REGISTER,
02116 Operand_ars_entry_encode, Operand_ars_entry_decode,
02117 0, 0 },
02118 { "immrx4", 14, -1, 0,
02119 0,
02120 Operand_immrx4_encode, Operand_immrx4_decode,
02121 0, 0 },
02122 { "lsi4x4", 14, -1, 0,
02123 0,
02124 Operand_lsi4x4_encode, Operand_lsi4x4_decode,
02125 0, 0 },
02126 { "simm7", 34, -1, 0,
02127 0,
02128 Operand_simm7_encode, Operand_simm7_decode,
02129 0, 0 },
02130 { "uimm6", 33, -1, 0,
02131 XTENSA_OPERAND_IS_PCRELATIVE,
02132 Operand_uimm6_encode, Operand_uimm6_decode,
02133 Operand_uimm6_ator, Operand_uimm6_rtoa },
02134 { "ai4const", 0, -1, 0,
02135 0,
02136 Operand_ai4const_encode, Operand_ai4const_decode,
02137 0, 0 },
02138 { "b4const", 14, -1, 0,
02139 0,
02140 Operand_b4const_encode, Operand_b4const_decode,
02141 0, 0 },
02142 { "b4constu", 14, -1, 0,
02143 0,
02144 Operand_b4constu_encode, Operand_b4constu_decode,
02145 0, 0 },
02146 { "uimm8", 4, -1, 0,
02147 0,
02148 Operand_uimm8_encode, Operand_uimm8_decode,
02149 0, 0 },
02150 { "uimm8x2", 4, -1, 0,
02151 0,
02152 Operand_uimm8x2_encode, Operand_uimm8x2_decode,
02153 0, 0 },
02154 { "uimm8x4", 4, -1, 0,
02155 0,
02156 Operand_uimm8x4_encode, Operand_uimm8x4_decode,
02157 0, 0 },
02158 { "uimm4x16", 13, -1, 0,
02159 0,
02160 Operand_uimm4x16_encode, Operand_uimm4x16_decode,
02161 0, 0 },
02162 { "simm8", 4, -1, 0,
02163 0,
02164 Operand_simm8_encode, Operand_simm8_decode,
02165 0, 0 },
02166 { "simm8x256", 4, -1, 0,
02167 0,
02168 Operand_simm8x256_encode, Operand_simm8x256_decode,
02169 0, 0 },
02170 { "simm12b", 6, -1, 0,
02171 0,
02172 Operand_simm12b_encode, Operand_simm12b_decode,
02173 0, 0 },
02174 { "msalp32", 18, -1, 0,
02175 0,
02176 Operand_msalp32_encode, Operand_msalp32_decode,
02177 0, 0 },
02178 { "op2p1", 13, -1, 0,
02179 0,
02180 Operand_op2p1_encode, Operand_op2p1_decode,
02181 0, 0 },
02182 { "label8", 4, -1, 0,
02183 XTENSA_OPERAND_IS_PCRELATIVE,
02184 Operand_label8_encode, Operand_label8_decode,
02185 Operand_label8_ator, Operand_label8_rtoa },
02186 { "ulabel8", 4, -1, 0,
02187 XTENSA_OPERAND_IS_PCRELATIVE,
02188 Operand_ulabel8_encode, Operand_ulabel8_decode,
02189 Operand_ulabel8_ator, Operand_ulabel8_rtoa },
02190 { "label12", 3, -1, 0,
02191 XTENSA_OPERAND_IS_PCRELATIVE,
02192 Operand_label12_encode, Operand_label12_decode,
02193 Operand_label12_ator, Operand_label12_rtoa },
02194 { "soffset", 10, -1, 0,
02195 XTENSA_OPERAND_IS_PCRELATIVE,
02196 Operand_soffset_encode, Operand_soffset_decode,
02197 Operand_soffset_ator, Operand_soffset_rtoa },
02198 { "uimm16x4", 7, -1, 0,
02199 XTENSA_OPERAND_IS_PCRELATIVE,
02200 Operand_uimm16x4_encode, Operand_uimm16x4_decode,
02201 Operand_uimm16x4_ator, Operand_uimm16x4_rtoa },
02202 { "immt", 0, -1, 0,
02203 0,
02204 Operand_immt_encode, Operand_immt_decode,
02205 0, 0 },
02206 { "imms", 5, -1, 0,
02207 0,
02208 Operand_imms_encode, Operand_imms_decode,
02209 0, 0 },
02210 { "t", 0, -1, 0, 0, 0, 0, 0, 0 },
02211 { "bbi4", 1, -1, 0, 0, 0, 0, 0, 0 },
02212 { "bbi", 2, -1, 0, 0, 0, 0, 0, 0 },
02213 { "imm12", 3, -1, 0, 0, 0, 0, 0, 0 },
02214 { "imm8", 4, -1, 0, 0, 0, 0, 0, 0 },
02215 { "s", 5, -1, 0, 0, 0, 0, 0, 0 },
02216 { "imm12b", 6, -1, 0, 0, 0, 0, 0, 0 },
02217 { "imm16", 7, -1, 0, 0, 0, 0, 0, 0 },
02218 { "m", 8, -1, 0, 0, 0, 0, 0, 0 },
02219 { "n", 9, -1, 0, 0, 0, 0, 0, 0 },
02220 { "offset", 10, -1, 0, 0, 0, 0, 0, 0 },
02221 { "op0", 11, -1, 0, 0, 0, 0, 0, 0 },
02222 { "op1", 12, -1, 0, 0, 0, 0, 0, 0 },
02223 { "op2", 13, -1, 0, 0, 0, 0, 0, 0 },
02224 { "r", 14, -1, 0, 0, 0, 0, 0, 0 },
02225 { "sa4", 15, -1, 0, 0, 0, 0, 0, 0 },
02226 { "sae4", 16, -1, 0, 0, 0, 0, 0, 0 },
02227 { "sae", 17, -1, 0, 0, 0, 0, 0, 0 },
02228 { "sal", 18, -1, 0, 0, 0, 0, 0, 0 },
02229 { "sargt", 19, -1, 0, 0, 0, 0, 0, 0 },
02230 { "sas4", 20, -1, 0, 0, 0, 0, 0, 0 },
02231 { "sas", 21, -1, 0, 0, 0, 0, 0, 0 },
02232 { "sr", 22, -1, 0, 0, 0, 0, 0, 0 },
02233 { "st", 23, -1, 0, 0, 0, 0, 0, 0 },
02234 { "thi3", 24, -1, 0, 0, 0, 0, 0, 0 },
02235 { "imm4", 25, -1, 0, 0, 0, 0, 0, 0 },
02236 { "mn", 26, -1, 0, 0, 0, 0, 0, 0 },
02237 { "i", 27, -1, 0, 0, 0, 0, 0, 0 },
02238 { "imm6lo", 28, -1, 0, 0, 0, 0, 0, 0 },
02239 { "imm6hi", 29, -1, 0, 0, 0, 0, 0, 0 },
02240 { "imm7lo", 30, -1, 0, 0, 0, 0, 0, 0 },
02241 { "imm7hi", 31, -1, 0, 0, 0, 0, 0, 0 },
02242 { "z", 32, -1, 0, 0, 0, 0, 0, 0 },
02243 { "imm6", 33, -1, 0, 0, 0, 0, 0, 0 },
02244 { "imm7", 34, -1, 0, 0, 0, 0, 0, 0 }
02245 };
02246
02247
02248
02249
02250 static xtensa_arg_internal Iclass_xt_iclass_rfe_stateArgs[] = {
02251 { { STATE_PSEXCM }, 'o' },
02252 { { STATE_EPC1 }, 'i' }
02253 };
02254
02255 static xtensa_arg_internal Iclass_xt_iclass_rfde_stateArgs[] = {
02256 { { STATE_DEPC }, 'i' }
02257 };
02258
02259 static xtensa_arg_internal Iclass_xt_iclass_call12_args[] = {
02260 { { 0 }, 'i' },
02261 { { 10 }, 'o' }
02262 };
02263
02264 static xtensa_arg_internal Iclass_xt_iclass_call12_stateArgs[] = {
02265 { { STATE_PSCALLINC }, 'o' }
02266 };
02267
02268 static xtensa_arg_internal Iclass_xt_iclass_call8_args[] = {
02269 { { 0 }, 'i' },
02270 { { 9 }, 'o' }
02271 };
02272
02273 static xtensa_arg_internal Iclass_xt_iclass_call8_stateArgs[] = {
02274 { { STATE_PSCALLINC }, 'o' }
02275 };
02276
02277 static xtensa_arg_internal Iclass_xt_iclass_call4_args[] = {
02278 { { 0 }, 'i' },
02279 { { 8 }, 'o' }
02280 };
02281
02282 static xtensa_arg_internal Iclass_xt_iclass_call4_stateArgs[] = {
02283 { { STATE_PSCALLINC }, 'o' }
02284 };
02285
02286 static xtensa_arg_internal Iclass_xt_iclass_callx12_args[] = {
02287 { { 4 }, 'i' },
02288 { { 10 }, 'o' }
02289 };
02290
02291 static xtensa_arg_internal Iclass_xt_iclass_callx12_stateArgs[] = {
02292 { { STATE_PSCALLINC }, 'o' }
02293 };
02294
02295 static xtensa_arg_internal Iclass_xt_iclass_callx8_args[] = {
02296 { { 4 }, 'i' },
02297 { { 9 }, 'o' }
02298 };
02299
02300 static xtensa_arg_internal Iclass_xt_iclass_callx8_stateArgs[] = {
02301 { { STATE_PSCALLINC }, 'o' }
02302 };
02303
02304 static xtensa_arg_internal Iclass_xt_iclass_callx4_args[] = {
02305 { { 4 }, 'i' },
02306 { { 8 }, 'o' }
02307 };
02308
02309 static xtensa_arg_internal Iclass_xt_iclass_callx4_stateArgs[] = {
02310 { { STATE_PSCALLINC }, 'o' }
02311 };
02312
02313 static xtensa_arg_internal Iclass_xt_iclass_entry_args[] = {
02314 { { 11 }, 's' },
02315 { { 4 }, 'i' },
02316 { { 1 }, 'i' }
02317 };
02318
02319 static xtensa_arg_internal Iclass_xt_iclass_entry_stateArgs[] = {
02320 { { STATE_PSCALLINC }, 'i' },
02321 { { STATE_PSEXCM }, 'i' },
02322 { { STATE_PSWOE }, 'i' },
02323 { { STATE_WindowBase }, 'm' },
02324 { { STATE_WindowStart }, 'm' }
02325 };
02326
02327 static xtensa_arg_internal Iclass_xt_iclass_movsp_args[] = {
02328 { { 6 }, 'o' },
02329 { { 4 }, 'i' }
02330 };
02331
02332 static xtensa_arg_internal Iclass_xt_iclass_movsp_stateArgs[] = {
02333 { { STATE_WindowBase }, 'i' },
02334 { { STATE_WindowStart }, 'i' }
02335 };
02336
02337 static xtensa_arg_internal Iclass_xt_iclass_rotw_args[] = {
02338 { { 2 }, 'i' }
02339 };
02340
02341 static xtensa_arg_internal Iclass_xt_iclass_rotw_stateArgs[] = {
02342 { { STATE_WindowBase }, 'm' }
02343 };
02344
02345 static xtensa_arg_internal Iclass_xt_iclass_retw_args[] = {
02346 { { 5 }, 'i' }
02347 };
02348
02349 static xtensa_arg_internal Iclass_xt_iclass_retw_stateArgs[] = {
02350 { { STATE_WindowBase }, 'm' },
02351 { { STATE_WindowStart }, 'm' },
02352 { { STATE_PSEXCM }, 'i' },
02353 { { STATE_PSWOE }, 'i' }
02354 };
02355
02356 static xtensa_arg_internal Iclass_xt_iclass_rfwou_stateArgs[] = {
02357 { { STATE_EPC1 }, 'i' },
02358 { { STATE_PSEXCM }, 'o' },
02359 { { STATE_WindowBase }, 'm' },
02360 { { STATE_WindowStart }, 'm' },
02361 { { STATE_PSOWB }, 'i' }
02362 };
02363
02364 static xtensa_arg_internal Iclass_xt_iclass_l32e_args[] = {
02365 { { 6 }, 'o' },
02366 { { 4 }, 'i' },
02367 { { 12 }, 'i' }
02368 };
02369
02370 static xtensa_arg_internal Iclass_xt_iclass_s32e_args[] = {
02371 { { 6 }, 'i' },
02372 { { 4 }, 'i' },
02373 { { 12 }, 'i' }
02374 };
02375
02376 static xtensa_arg_internal Iclass_xt_iclass_rsr_windowbase_args[] = {
02377 { { 6 }, 'o' }
02378 };
02379
02380 static xtensa_arg_internal Iclass_xt_iclass_rsr_windowbase_stateArgs[] = {
02381 { { STATE_WindowBase }, 'i' }
02382 };
02383
02384 static xtensa_arg_internal Iclass_xt_iclass_wsr_windowbase_args[] = {
02385 { { 6 }, 'i' }
02386 };
02387
02388 static xtensa_arg_internal Iclass_xt_iclass_wsr_windowbase_stateArgs[] = {
02389 { { STATE_WindowBase }, 'o' }
02390 };
02391
02392 static xtensa_arg_internal Iclass_xt_iclass_xsr_windowbase_args[] = {
02393 { { 6 }, 'm' }
02394 };
02395
02396 static xtensa_arg_internal Iclass_xt_iclass_xsr_windowbase_stateArgs[] = {
02397 { { STATE_WindowBase }, 'm' }
02398 };
02399
02400 static xtensa_arg_internal Iclass_xt_iclass_rsr_windowstart_args[] = {
02401 { { 6 }, 'o' }
02402 };
02403
02404 static xtensa_arg_internal Iclass_xt_iclass_rsr_windowstart_stateArgs[] = {
02405 { { STATE_WindowStart }, 'i' }
02406 };
02407
02408 static xtensa_arg_internal Iclass_xt_iclass_wsr_windowstart_args[] = {
02409 { { 6 }, 'i' }
02410 };
02411
02412 static xtensa_arg_internal Iclass_xt_iclass_wsr_windowstart_stateArgs[] = {
02413 { { STATE_WindowStart }, 'o' }
02414 };
02415
02416 static xtensa_arg_internal Iclass_xt_iclass_xsr_windowstart_args[] = {
02417 { { 6 }, 'm' }
02418 };
02419
02420 static xtensa_arg_internal Iclass_xt_iclass_xsr_windowstart_stateArgs[] = {
02421 { { STATE_WindowStart }, 'm' }
02422 };
02423
02424 static xtensa_arg_internal Iclass_xt_iclass_add_n_args[] = {
02425 { { 3 }, 'o' },
02426 { { 4 }, 'i' },
02427 { { 6 }, 'i' }
02428 };
02429
02430 static xtensa_arg_internal Iclass_xt_iclass_addi_n_args[] = {
02431 { { 3 }, 'o' },
02432 { { 4 }, 'i' },
02433 { { 16 }, 'i' }
02434 };
02435
02436 static xtensa_arg_internal Iclass_xt_iclass_bz6_args[] = {
02437 { { 4 }, 'i' },
02438 { { 15 }, 'i' }
02439 };
02440
02441 static xtensa_arg_internal Iclass_xt_iclass_loadi4_args[] = {
02442 { { 6 }, 'o' },
02443 { { 4 }, 'i' },
02444 { { 13 }, 'i' }
02445 };
02446
02447 static xtensa_arg_internal Iclass_xt_iclass_mov_n_args[] = {
02448 { { 6 }, 'o' },
02449 { { 4 }, 'i' }
02450 };
02451
02452 static xtensa_arg_internal Iclass_xt_iclass_movi_n_args[] = {
02453 { { 4 }, 'o' },
02454 { { 14 }, 'i' }
02455 };
02456
02457 static xtensa_arg_internal Iclass_xt_iclass_retn_args[] = {
02458 { { 5 }, 'i' }
02459 };
02460
02461 static xtensa_arg_internal Iclass_xt_iclass_storei4_args[] = {
02462 { { 6 }, 'i' },
02463 { { 4 }, 'i' },
02464 { { 13 }, 'i' }
02465 };
02466
02467 static xtensa_arg_internal Iclass_xt_iclass_addi_args[] = {
02468 { { 6 }, 'o' },
02469 { { 4 }, 'i' },
02470 { { 23 }, 'i' }
02471 };
02472
02473 static xtensa_arg_internal Iclass_xt_iclass_addmi_args[] = {
02474 { { 6 }, 'o' },
02475 { { 4 }, 'i' },
02476 { { 24 }, 'i' }
02477 };
02478
02479 static xtensa_arg_internal Iclass_xt_iclass_addsub_args[] = {
02480 { { 3 }, 'o' },
02481 { { 4 }, 'i' },
02482 { { 6 }, 'i' }
02483 };
02484
02485 static xtensa_arg_internal Iclass_xt_iclass_bit_args[] = {
02486 { { 3 }, 'o' },
02487 { { 4 }, 'i' },
02488 { { 6 }, 'i' }
02489 };
02490
02491 static xtensa_arg_internal Iclass_xt_iclass_bsi8_args[] = {
02492 { { 4 }, 'i' },
02493 { { 17 }, 'i' },
02494 { { 28 }, 'i' }
02495 };
02496
02497 static xtensa_arg_internal Iclass_xt_iclass_bsi8b_args[] = {
02498 { { 4 }, 'i' },
02499 { { 37 }, 'i' },
02500 { { 28 }, 'i' }
02501 };
02502
02503 static xtensa_arg_internal Iclass_xt_iclass_bsi8u_args[] = {
02504 { { 4 }, 'i' },
02505 { { 18 }, 'i' },
02506 { { 28 }, 'i' }
02507 };
02508
02509 static xtensa_arg_internal Iclass_xt_iclass_bst8_args[] = {
02510 { { 4 }, 'i' },
02511 { { 6 }, 'i' },
02512 { { 28 }, 'i' }
02513 };
02514
02515 static xtensa_arg_internal Iclass_xt_iclass_bsz12_args[] = {
02516 { { 4 }, 'i' },
02517 { { 30 }, 'i' }
02518 };
02519
02520 static xtensa_arg_internal Iclass_xt_iclass_call0_args[] = {
02521 { { 0 }, 'i' },
02522 { { 7 }, 'o' }
02523 };
02524
02525 static xtensa_arg_internal Iclass_xt_iclass_callx0_args[] = {
02526 { { 4 }, 'i' },
02527 { { 7 }, 'o' }
02528 };
02529
02530 static xtensa_arg_internal Iclass_xt_iclass_exti_args[] = {
02531 { { 3 }, 'o' },
02532 { { 6 }, 'i' },
02533 { { 52 }, 'i' },
02534 { { 27 }, 'i' }
02535 };
02536
02537 static xtensa_arg_internal Iclass_xt_iclass_jump_args[] = {
02538 { { 31 }, 'i' }
02539 };
02540
02541 static xtensa_arg_internal Iclass_xt_iclass_jumpx_args[] = {
02542 { { 4 }, 'i' }
02543 };
02544
02545 static xtensa_arg_internal Iclass_xt_iclass_l16ui_args[] = {
02546 { { 6 }, 'o' },
02547 { { 4 }, 'i' },
02548 { { 20 }, 'i' }
02549 };
02550
02551 static xtensa_arg_internal Iclass_xt_iclass_l16si_args[] = {
02552 { { 6 }, 'o' },
02553 { { 4 }, 'i' },
02554 { { 20 }, 'i' }
02555 };
02556
02557 static xtensa_arg_internal Iclass_xt_iclass_l32i_args[] = {
02558 { { 6 }, 'o' },
02559 { { 4 }, 'i' },
02560 { { 21 }, 'i' }
02561 };
02562
02563 static xtensa_arg_internal Iclass_xt_iclass_l32r_args[] = {
02564 { { 6 }, 'o' },
02565 { { 32 }, 'i' }
02566 };
02567
02568 static xtensa_arg_internal Iclass_xt_iclass_l32r_stateArgs[] = {
02569 { { STATE_LITBADDR }, 'i' },
02570 { { STATE_LITBEN }, 'i' }
02571 };
02572
02573 static xtensa_arg_internal Iclass_xt_iclass_l8i_args[] = {
02574 { { 6 }, 'o' },
02575 { { 4 }, 'i' },
02576 { { 19 }, 'i' }
02577 };
02578
02579 static xtensa_arg_internal Iclass_xt_iclass_loop_args[] = {
02580 { { 4 }, 'i' },
02581 { { 29 }, 'i' }
02582 };
02583
02584 static xtensa_arg_internal Iclass_xt_iclass_loop_stateArgs[] = {
02585 { { STATE_LBEG }, 'o' },
02586 { { STATE_LEND }, 'o' },
02587 { { STATE_LCOUNT }, 'o' }
02588 };
02589
02590 static xtensa_arg_internal Iclass_xt_iclass_loopz_args[] = {
02591 { { 4 }, 'i' },
02592 { { 29 }, 'i' }
02593 };
02594
02595 static xtensa_arg_internal Iclass_xt_iclass_loopz_stateArgs[] = {
02596 { { STATE_LBEG }, 'o' },
02597 { { STATE_LEND }, 'o' },
02598 { { STATE_LCOUNT }, 'o' }
02599 };
02600
02601 static xtensa_arg_internal Iclass_xt_iclass_movi_args[] = {
02602 { { 6 }, 'o' },
02603 { { 25 }, 'i' }
02604 };
02605
02606 static xtensa_arg_internal Iclass_xt_iclass_movz_args[] = {
02607 { { 3 }, 'm' },
02608 { { 4 }, 'i' },
02609 { { 6 }, 'i' }
02610 };
02611
02612 static xtensa_arg_internal Iclass_xt_iclass_neg_args[] = {
02613 { { 3 }, 'o' },
02614 { { 6 }, 'i' }
02615 };
02616
02617 static xtensa_arg_internal Iclass_xt_iclass_return_args[] = {
02618 { { 5 }, 'i' }
02619 };
02620
02621 static xtensa_arg_internal Iclass_xt_iclass_s16i_args[] = {
02622 { { 6 }, 'i' },
02623 { { 4 }, 'i' },
02624 { { 20 }, 'i' }
02625 };
02626
02627 static xtensa_arg_internal Iclass_xt_iclass_s32i_args[] = {
02628 { { 6 }, 'i' },
02629 { { 4 }, 'i' },
02630 { { 21 }, 'i' }
02631 };
02632
02633 static xtensa_arg_internal Iclass_xt_iclass_s8i_args[] = {
02634 { { 6 }, 'i' },
02635 { { 4 }, 'i' },
02636 { { 19 }, 'i' }
02637 };
02638
02639 static xtensa_arg_internal Iclass_xt_iclass_sar_args[] = {
02640 { { 4 }, 'i' }
02641 };
02642
02643 static xtensa_arg_internal Iclass_xt_iclass_sar_stateArgs[] = {
02644 { { STATE_SAR }, 'o' }
02645 };
02646
02647 static xtensa_arg_internal Iclass_xt_iclass_sari_args[] = {
02648 { { 56 }, 'i' }
02649 };
02650
02651 static xtensa_arg_internal Iclass_xt_iclass_sari_stateArgs[] = {
02652 { { STATE_SAR }, 'o' }
02653 };
02654
02655 static xtensa_arg_internal Iclass_xt_iclass_shifts_args[] = {
02656 { { 3 }, 'o' },
02657 { { 4 }, 'i' }
02658 };
02659
02660 static xtensa_arg_internal Iclass_xt_iclass_shifts_stateArgs[] = {
02661 { { STATE_SAR }, 'i' }
02662 };
02663
02664 static xtensa_arg_internal Iclass_xt_iclass_shiftst_args[] = {
02665 { { 3 }, 'o' },
02666 { { 4 }, 'i' },
02667 { { 6 }, 'i' }
02668 };
02669
02670 static xtensa_arg_internal Iclass_xt_iclass_shiftst_stateArgs[] = {
02671 { { STATE_SAR }, 'i' }
02672 };
02673
02674 static xtensa_arg_internal Iclass_xt_iclass_shiftt_args[] = {
02675 { { 3 }, 'o' },
02676 { { 6 }, 'i' }
02677 };
02678
02679 static xtensa_arg_internal Iclass_xt_iclass_shiftt_stateArgs[] = {
02680 { { STATE_SAR }, 'i' }
02681 };
02682
02683 static xtensa_arg_internal Iclass_xt_iclass_slli_args[] = {
02684 { { 3 }, 'o' },
02685 { { 4 }, 'i' },
02686 { { 26 }, 'i' }
02687 };
02688
02689 static xtensa_arg_internal Iclass_xt_iclass_srai_args[] = {
02690 { { 3 }, 'o' },
02691 { { 6 }, 'i' },
02692 { { 54 }, 'i' }
02693 };
02694
02695 static xtensa_arg_internal Iclass_xt_iclass_srli_args[] = {
02696 { { 3 }, 'o' },
02697 { { 6 }, 'i' },
02698 { { 40 }, 'i' }
02699 };
02700
02701 static xtensa_arg_internal Iclass_xt_iclass_sync_stateArgs[] = {
02702 { { STATE_XTSYNC }, 'i' }
02703 };
02704
02705 static xtensa_arg_internal Iclass_xt_iclass_rsil_args[] = {
02706 { { 6 }, 'o' },
02707 { { 40 }, 'i' }
02708 };
02709
02710 static xtensa_arg_internal Iclass_xt_iclass_rsil_stateArgs[] = {
02711 { { STATE_PSWOE }, 'i' },
02712 { { STATE_PSCALLINC }, 'i' },
02713 { { STATE_PSOWB }, 'i' },
02714 { { STATE_PSUM }, 'i' },
02715 { { STATE_PSEXCM }, 'i' },
02716 { { STATE_PSINTLEVEL }, 'm' }
02717 };
02718
02719 static xtensa_arg_internal Iclass_xt_iclass_rsr_lend_args[] = {
02720 { { 6 }, 'o' }
02721 };
02722
02723 static xtensa_arg_internal Iclass_xt_iclass_rsr_lend_stateArgs[] = {
02724 { { STATE_LEND }, 'i' }
02725 };
02726
02727 static xtensa_arg_internal Iclass_xt_iclass_wsr_lend_args[] = {
02728 { { 6 }, 'i' }
02729 };
02730
02731 static xtensa_arg_internal Iclass_xt_iclass_wsr_lend_stateArgs[] = {
02732 { { STATE_LEND }, 'o' }
02733 };
02734
02735 static xtensa_arg_internal Iclass_xt_iclass_xsr_lend_args[] = {
02736 { { 6 }, 'm' }
02737 };
02738
02739 static xtensa_arg_internal Iclass_xt_iclass_xsr_lend_stateArgs[] = {
02740 { { STATE_LEND }, 'm' }
02741 };
02742
02743 static xtensa_arg_internal Iclass_xt_iclass_rsr_lcount_args[] = {
02744 { { 6 }, 'o' }
02745 };
02746
02747 static xtensa_arg_internal Iclass_xt_iclass_rsr_lcount_stateArgs[] = {
02748 { { STATE_LCOUNT }, 'i' }
02749 };
02750
02751 static xtensa_arg_internal Iclass_xt_iclass_wsr_lcount_args[] = {
02752 { { 6 }, 'i' }
02753 };
02754
02755 static xtensa_arg_internal Iclass_xt_iclass_wsr_lcount_stateArgs[] = {
02756 { { STATE_XTSYNC }, 'o' },
02757 { { STATE_LCOUNT }, 'o' }
02758 };
02759
02760 static xtensa_arg_internal Iclass_xt_iclass_xsr_lcount_args[] = {
02761 { { 6 }, 'm' }
02762 };
02763
02764 static xtensa_arg_internal Iclass_xt_iclass_xsr_lcount_stateArgs[] = {
02765 { { STATE_XTSYNC }, 'o' },
02766 { { STATE_LCOUNT }, 'm' }
02767 };
02768
02769 static xtensa_arg_internal Iclass_xt_iclass_rsr_lbeg_args[] = {
02770 { { 6 }, 'o' }
02771 };
02772
02773 static xtensa_arg_internal Iclass_xt_iclass_rsr_lbeg_stateArgs[] = {
02774 { { STATE_LBEG }, 'i' }
02775 };
02776
02777 static xtensa_arg_internal Iclass_xt_iclass_wsr_lbeg_args[] = {
02778 { { 6 }, 'i' }
02779 };
02780
02781 static xtensa_arg_internal Iclass_xt_iclass_wsr_lbeg_stateArgs[] = {
02782 { { STATE_LBEG }, 'o' }
02783 };
02784
02785 static xtensa_arg_internal Iclass_xt_iclass_xsr_lbeg_args[] = {
02786 { { 6 }, 'm' }
02787 };
02788
02789 static xtensa_arg_internal Iclass_xt_iclass_xsr_lbeg_stateArgs[] = {
02790 { { STATE_LBEG }, 'm' }
02791 };
02792
02793 static xtensa_arg_internal Iclass_xt_iclass_rsr_sar_args[] = {
02794 { { 6 }, 'o' }
02795 };
02796
02797 static xtensa_arg_internal Iclass_xt_iclass_rsr_sar_stateArgs[] = {
02798 { { STATE_SAR }, 'i' }
02799 };
02800
02801 static xtensa_arg_internal Iclass_xt_iclass_wsr_sar_args[] = {
02802 { { 6 }, 'i' }
02803 };
02804
02805 static xtensa_arg_internal Iclass_xt_iclass_wsr_sar_stateArgs[] = {
02806 { { STATE_SAR }, 'o' },
02807 { { STATE_XTSYNC }, 'o' }
02808 };
02809
02810 static xtensa_arg_internal Iclass_xt_iclass_xsr_sar_args[] = {
02811 { { 6 }, 'm' }
02812 };
02813
02814 static xtensa_arg_internal Iclass_xt_iclass_xsr_sar_stateArgs[] = {
02815 { { STATE_SAR }, 'm' }
02816 };
02817
02818 static xtensa_arg_internal Iclass_xt_iclass_rsr_litbase_args[] = {
02819 { { 6 }, 'o' }
02820 };
02821
02822 static xtensa_arg_internal Iclass_xt_iclass_rsr_litbase_stateArgs[] = {
02823 { { STATE_LITBADDR }, 'i' },
02824 { { STATE_LITBEN }, 'i' }
02825 };
02826
02827 static xtensa_arg_internal Iclass_xt_iclass_wsr_litbase_args[] = {
02828 { { 6 }, 'i' }
02829 };
02830
02831 static xtensa_arg_internal Iclass_xt_iclass_wsr_litbase_stateArgs[] = {
02832 { { STATE_LITBADDR }, 'o' },
02833 { { STATE_LITBEN }, 'o' }
02834 };
02835
02836 static xtensa_arg_internal Iclass_xt_iclass_xsr_litbase_args[] = {
02837 { { 6 }, 'm' }
02838 };
02839
02840 static xtensa_arg_internal Iclass_xt_iclass_xsr_litbase_stateArgs[] = {
02841 { { STATE_LITBADDR }, 'm' },
02842 { { STATE_LITBEN }, 'm' }
02843 };
02844
02845 static xtensa_arg_internal Iclass_xt_iclass_rsr_176_args[] = {
02846 { { 6 }, 'o' }
02847 };
02848
02849 static xtensa_arg_internal Iclass_xt_iclass_rsr_208_args[] = {
02850 { { 6 }, 'o' }
02851 };
02852
02853 static xtensa_arg_internal Iclass_xt_iclass_rsr_ps_args[] = {
02854 { { 6 }, 'o' }
02855 };
02856
02857 static xtensa_arg_internal Iclass_xt_iclass_rsr_ps_stateArgs[] = {
02858 { { STATE_PSWOE }, 'i' },
02859 { { STATE_PSCALLINC }, 'i' },
02860 { { STATE_PSOWB }, 'i' },
02861 { { STATE_PSUM }, 'i' },
02862 { { STATE_PSEXCM }, 'i' },
02863 { { STATE_PSINTLEVEL }, 'i' }
02864 };
02865
02866 static xtensa_arg_internal Iclass_xt_iclass_wsr_ps_args[] = {
02867 { { 6 }, 'i' }
02868 };
02869
02870 static xtensa_arg_internal Iclass_xt_iclass_wsr_ps_stateArgs[] = {
02871 { { STATE_PSWOE }, 'o' },
02872 { { STATE_PSCALLINC }, 'o' },
02873 { { STATE_PSOWB }, 'o' },
02874 { { STATE_PSUM }, 'o' },
02875 { { STATE_PSEXCM }, 'o' },
02876 { { STATE_PSINTLEVEL }, 'o' }
02877 };
02878
02879 static xtensa_arg_internal Iclass_xt_iclass_xsr_ps_args[] = {
02880 { { 6 }, 'm' }
02881 };
02882
02883 static xtensa_arg_internal Iclass_xt_iclass_xsr_ps_stateArgs[] = {
02884 { { STATE_PSWOE }, 'm' },
02885 { { STATE_PSCALLINC }, 'm' },
02886 { { STATE_PSOWB }, 'm' },
02887 { { STATE_PSUM }, 'm' },
02888 { { STATE_PSEXCM }, 'm' },
02889 { { STATE_PSINTLEVEL }, 'm' }
02890 };
02891
02892 static xtensa_arg_internal Iclass_xt_iclass_rsr_epc1_args[] = {
02893 { { 6 }, 'o' }
02894 };
02895
02896 static xtensa_arg_internal Iclass_xt_iclass_rsr_epc1_stateArgs[] = {
02897 { { STATE_EPC1 }, 'i' }
02898 };
02899
02900 static xtensa_arg_internal Iclass_xt_iclass_wsr_epc1_args[] = {
02901 { { 6 }, 'i' }
02902 };
02903
02904 static xtensa_arg_internal Iclass_xt_iclass_wsr_epc1_stateArgs[] = {
02905 { { STATE_EPC1 }, 'o' }
02906 };
02907
02908 static xtensa_arg_internal Iclass_xt_iclass_xsr_epc1_args[] = {
02909 { { 6 }, 'm' }
02910 };
02911
02912 static xtensa_arg_internal Iclass_xt_iclass_xsr_epc1_stateArgs[] = {
02913 { { STATE_EPC1 }, 'm' }
02914 };
02915
02916 static xtensa_arg_internal Iclass_xt_iclass_rsr_excsave1_args[] = {
02917 { { 6 }, 'o' }
02918 };
02919
02920 static xtensa_arg_internal Iclass_xt_iclass_rsr_excsave1_stateArgs[] = {
02921 { { STATE_EXCSAVE1 }, 'i' }
02922 };
02923
02924 static xtensa_arg_internal Iclass_xt_iclass_wsr_excsave1_args[] = {
02925 { { 6 }, 'i' }
02926 };
02927
02928 static xtensa_arg_internal Iclass_xt_iclass_wsr_excsave1_stateArgs[] = {
02929 { { STATE_EXCSAVE1 }, 'o' }
02930 };
02931
02932 static xtensa_arg_internal Iclass_xt_iclass_xsr_excsave1_args[] = {
02933 { { 6 }, 'm' }
02934 };
02935
02936 static xtensa_arg_internal Iclass_xt_iclass_xsr_excsave1_stateArgs[] = {
02937 { { STATE_EXCSAVE1 }, 'm' }
02938 };
02939
02940 static xtensa_arg_internal Iclass_xt_iclass_rsr_epc2_args[] = {
02941 { { 6 }, 'o' }
02942 };
02943
02944 static xtensa_arg_internal Iclass_xt_iclass_rsr_epc2_stateArgs[] = {
02945 { { STATE_EPC2 }, 'i' }
02946 };
02947
02948 static xtensa_arg_internal Iclass_xt_iclass_wsr_epc2_args[] = {
02949 { { 6 }, 'i' }
02950 };
02951
02952 static xtensa_arg_internal Iclass_xt_iclass_wsr_epc2_stateArgs[] = {
02953 { { STATE_EPC2 }, 'o' }
02954 };
02955
02956 static xtensa_arg_internal Iclass_xt_iclass_xsr_epc2_args[] = {
02957 { { 6 }, 'm' }
02958 };
02959
02960 static xtensa_arg_internal Iclass_xt_iclass_xsr_epc2_stateArgs[] = {
02961 { { STATE_EPC2 }, 'm' }
02962 };
02963
02964 static xtensa_arg_internal Iclass_xt_iclass_rsr_excsave2_args[] = {
02965 { { 6 }, 'o' }
02966 };
02967
02968 static xtensa_arg_internal Iclass_xt_iclass_rsr_excsave2_stateArgs[] = {
02969 { { STATE_EXCSAVE2 }, 'i' }
02970 };
02971
02972 static xtensa_arg_internal Iclass_xt_iclass_wsr_excsave2_args[] = {
02973 { { 6 }, 'i' }
02974 };
02975
02976 static xtensa_arg_internal Iclass_xt_iclass_wsr_excsave2_stateArgs[] = {
02977 { { STATE_EXCSAVE2 }, 'o' }
02978 };
02979
02980 static xtensa_arg_internal Iclass_xt_iclass_xsr_excsave2_args[] = {
02981 { { 6 }, 'm' }
02982 };
02983
02984 static xtensa_arg_internal Iclass_xt_iclass_xsr_excsave2_stateArgs[] = {
02985 { { STATE_EXCSAVE2 }, 'm' }
02986 };
02987
02988 static xtensa_arg_internal Iclass_xt_iclass_rsr_epc3_args[] = {
02989 { { 6 }, 'o' }
02990 };
02991
02992 static xtensa_arg_internal Iclass_xt_iclass_rsr_epc3_stateArgs[] = {
02993 { { STATE_EPC3 }, 'i' }
02994 };
02995
02996 static xtensa_arg_internal Iclass_xt_iclass_wsr_epc3_args[] = {
02997 { { 6 }, 'i' }
02998 };
02999
03000 static xtensa_arg_internal Iclass_xt_iclass_wsr_epc3_stateArgs[] = {
03001 { { STATE_EPC3 }, 'o' }
03002 };
03003
03004 static xtensa_arg_internal Iclass_xt_iclass_xsr_epc3_args[] = {
03005 { { 6 }, 'm' }
03006 };
03007
03008 static xtensa_arg_internal Iclass_xt_iclass_xsr_epc3_stateArgs[] = {
03009 { { STATE_EPC3 }, 'm' }
03010 };
03011
03012 static xtensa_arg_internal Iclass_xt_iclass_rsr_excsave3_args[] = {
03013 { { 6 }, 'o' }
03014 };
03015
03016 static xtensa_arg_internal Iclass_xt_iclass_rsr_excsave3_stateArgs[] = {
03017 { { STATE_EXCSAVE3 }, 'i' }
03018 };
03019
03020 static xtensa_arg_internal Iclass_xt_iclass_wsr_excsave3_args[] = {
03021 { { 6 }, 'i' }
03022 };
03023
03024 static xtensa_arg_internal Iclass_xt_iclass_wsr_excsave3_stateArgs[] = {
03025 { { STATE_EXCSAVE3 }, 'o' }
03026 };
03027
03028 static xtensa_arg_internal Iclass_xt_iclass_xsr_excsave3_args[] = {
03029 { { 6 }, 'm' }
03030 };
03031
03032 static xtensa_arg_internal Iclass_xt_iclass_xsr_excsave3_stateArgs[] = {
03033 { { STATE_EXCSAVE3 }, 'm' }
03034 };
03035
03036 static xtensa_arg_internal Iclass_xt_iclass_rsr_epc4_args[] = {
03037 { { 6 }, 'o' }
03038 };
03039
03040 static xtensa_arg_internal Iclass_xt_iclass_rsr_epc4_stateArgs[] = {
03041 { { STATE_EPC4 }, 'i' }
03042 };
03043
03044 static xtensa_arg_internal Iclass_xt_iclass_wsr_epc4_args[] = {
03045 { { 6 }, 'i' }
03046 };
03047
03048 static xtensa_arg_internal Iclass_xt_iclass_wsr_epc4_stateArgs[] = {
03049 { { STATE_EPC4 }, 'o' }
03050 };
03051
03052 static xtensa_arg_internal Iclass_xt_iclass_xsr_epc4_args[] = {
03053 { { 6 }, 'm' }
03054 };
03055
03056 static xtensa_arg_internal Iclass_xt_iclass_xsr_epc4_stateArgs[] = {
03057 { { STATE_EPC4 }, 'm' }
03058 };
03059
03060 static xtensa_arg_internal Iclass_xt_iclass_rsr_excsave4_args[] = {
03061 { { 6 }, 'o' }
03062 };
03063
03064 static xtensa_arg_internal Iclass_xt_iclass_rsr_excsave4_stateArgs[] = {
03065 { { STATE_EXCSAVE4 }, 'i' }
03066 };
03067
03068 static xtensa_arg_internal Iclass_xt_iclass_wsr_excsave4_args[] = {
03069 { { 6 }, 'i' }
03070 };
03071
03072 static xtensa_arg_internal Iclass_xt_iclass_wsr_excsave4_stateArgs[] = {
03073 { { STATE_EXCSAVE4 }, 'o' }
03074 };
03075
03076 static xtensa_arg_internal Iclass_xt_iclass_xsr_excsave4_args[] = {
03077 { { 6 }, 'm' }
03078 };
03079
03080 static xtensa_arg_internal Iclass_xt_iclass_xsr_excsave4_stateArgs[] = {
03081 { { STATE_EXCSAVE4 }, 'm' }
03082 };
03083
03084 static xtensa_arg_internal Iclass_xt_iclass_rsr_eps2_args[] = {
03085 { { 6 }, 'o' }
03086 };
03087
03088 static xtensa_arg_internal Iclass_xt_iclass_rsr_eps2_stateArgs[] = {
03089 { { STATE_EPS2 }, 'i' }
03090 };
03091
03092 static xtensa_arg_internal Iclass_xt_iclass_wsr_eps2_args[] = {
03093 { { 6 }, 'i' }
03094 };
03095
03096 static xtensa_arg_internal Iclass_xt_iclass_wsr_eps2_stateArgs[] = {
03097 { { STATE_EPS2 }, 'o' }
03098 };
03099
03100 static xtensa_arg_internal Iclass_xt_iclass_xsr_eps2_args[] = {
03101 { { 6 }, 'm' }
03102 };
03103
03104 static xtensa_arg_internal Iclass_xt_iclass_xsr_eps2_stateArgs[] = {
03105 { { STATE_EPS2 }, 'm' }
03106 };
03107
03108 static xtensa_arg_internal Iclass_xt_iclass_rsr_eps3_args[] = {
03109 { { 6 }, 'o' }
03110 };
03111
03112 static xtensa_arg_internal Iclass_xt_iclass_rsr_eps3_stateArgs[] = {
03113 { { STATE_EPS3 }, 'i' }
03114 };
03115
03116 static xtensa_arg_internal Iclass_xt_iclass_wsr_eps3_args[] = {
03117 { { 6 }, 'i' }
03118 };
03119
03120 static xtensa_arg_internal Iclass_xt_iclass_wsr_eps3_stateArgs[] = {
03121 { { STATE_EPS3 }, 'o' }
03122 };
03123
03124 static xtensa_arg_internal Iclass_xt_iclass_xsr_eps3_args[] = {
03125 { { 6 }, 'm' }
03126 };
03127
03128 static xtensa_arg_internal Iclass_xt_iclass_xsr_eps3_stateArgs[] = {
03129 { { STATE_EPS3 }, 'm' }
03130 };
03131
03132 static xtensa_arg_internal Iclass_xt_iclass_rsr_eps4_args[] = {
03133 { { 6 }, 'o' }
03134 };
03135
03136 static xtensa_arg_internal Iclass_xt_iclass_rsr_eps4_stateArgs[] = {
03137 { { STATE_EPS4 }, 'i' }
03138 };
03139
03140 static xtensa_arg_internal Iclass_xt_iclass_wsr_eps4_args[] = {
03141 { { 6 }, 'i' }
03142 };
03143
03144 static xtensa_arg_internal Iclass_xt_iclass_wsr_eps4_stateArgs[] = {
03145 { { STATE_EPS4 }, 'o' }
03146 };
03147
03148 static xtensa_arg_internal Iclass_xt_iclass_xsr_eps4_args[] = {
03149 { { 6 }, 'm' }
03150 };
03151
03152 static xtensa_arg_internal Iclass_xt_iclass_xsr_eps4_stateArgs[] = {
03153 { { STATE_EPS4 }, 'm' }
03154 };
03155
03156 static xtensa_arg_internal Iclass_xt_iclass_rsr_excvaddr_args[] = {
03157 { { 6 }, 'o' }
03158 };
03159
03160 static xtensa_arg_internal Iclass_xt_iclass_rsr_excvaddr_stateArgs[] = {
03161 { { STATE_EXCVADDR }, 'i' }
03162 };
03163
03164 static xtensa_arg_internal Iclass_xt_iclass_wsr_excvaddr_args[] = {
03165 { { 6 }, 'i' }
03166 };
03167
03168 static xtensa_arg_internal Iclass_xt_iclass_wsr_excvaddr_stateArgs[] = {
03169 { { STATE_EXCVADDR }, 'o' }
03170 };
03171
03172 static xtensa_arg_internal Iclass_xt_iclass_xsr_excvaddr_args[] = {
03173 { { 6 }, 'm' }
03174 };
03175
03176 static xtensa_arg_internal Iclass_xt_iclass_xsr_excvaddr_stateArgs[] = {
03177 { { STATE_EXCVADDR }, 'm' }
03178 };
03179
03180 static xtensa_arg_internal Iclass_xt_iclass_rsr_depc_args[] = {
03181 { { 6 }, 'o' }
03182 };
03183
03184 static xtensa_arg_internal Iclass_xt_iclass_rsr_depc_stateArgs[] = {
03185 { { STATE_DEPC }, 'i' }
03186 };
03187
03188 static xtensa_arg_internal Iclass_xt_iclass_wsr_depc_args[] = {
03189 { { 6 }, 'i' }
03190 };
03191
03192 static xtensa_arg_internal Iclass_xt_iclass_wsr_depc_stateArgs[] = {
03193 { { STATE_DEPC }, 'o' }
03194 };
03195
03196 static xtensa_arg_internal Iclass_xt_iclass_xsr_depc_args[] = {
03197 { { 6 }, 'm' }
03198 };
03199
03200 static xtensa_arg_internal Iclass_xt_iclass_xsr_depc_stateArgs[] = {
03201 { { STATE_DEPC }, 'm' }
03202 };
03203
03204 static xtensa_arg_internal Iclass_xt_iclass_rsr_exccause_args[] = {
03205 { { 6 }, 'o' }
03206 };
03207
03208 static xtensa_arg_internal Iclass_xt_iclass_rsr_exccause_stateArgs[] = {
03209 { { STATE_EXCCAUSE }, 'i' },
03210 { { STATE_XTSYNC }, 'i' }
03211 };
03212
03213 static xtensa_arg_internal Iclass_xt_iclass_wsr_exccause_args[] = {
03214 { { 6 }, 'i' }
03215 };
03216
03217 static xtensa_arg_internal Iclass_xt_iclass_wsr_exccause_stateArgs[] = {
03218 { { STATE_EXCCAUSE }, 'o' }
03219 };
03220
03221 static xtensa_arg_internal Iclass_xt_iclass_xsr_exccause_args[] = {
03222 { { 6 }, 'm' }
03223 };
03224
03225 static xtensa_arg_internal Iclass_xt_iclass_xsr_exccause_stateArgs[] = {
03226 { { STATE_EXCCAUSE }, 'm' }
03227 };
03228
03229 static xtensa_arg_internal Iclass_xt_iclass_rsr_misc0_args[] = {
03230 { { 6 }, 'o' }
03231 };
03232
03233 static xtensa_arg_internal Iclass_xt_iclass_rsr_misc0_stateArgs[] = {
03234 { { STATE_MISC0 }, 'i' }
03235 };
03236
03237 static xtensa_arg_internal Iclass_xt_iclass_wsr_misc0_args[] = {
03238 { { 6 }, 'i' }
03239 };
03240
03241 static xtensa_arg_internal Iclass_xt_iclass_wsr_misc0_stateArgs[] = {
03242 { { STATE_MISC0 }, 'o' }
03243 };
03244
03245 static xtensa_arg_internal Iclass_xt_iclass_xsr_misc0_args[] = {
03246 { { 6 }, 'm' }
03247 };
03248
03249 static xtensa_arg_internal Iclass_xt_iclass_xsr_misc0_stateArgs[] = {
03250 { { STATE_MISC0 }, 'm' }
03251 };
03252
03253 static xtensa_arg_internal Iclass_xt_iclass_rsr_misc1_args[] = {
03254 { { 6 }, 'o' }
03255 };
03256
03257 static xtensa_arg_internal Iclass_xt_iclass_rsr_misc1_stateArgs[] = {
03258 { { STATE_MISC1 }, 'i' }
03259 };
03260
03261 static xtensa_arg_internal Iclass_xt_iclass_wsr_misc1_args[] = {
03262 { { 6 }, 'i' }
03263 };
03264
03265 static xtensa_arg_internal Iclass_xt_iclass_wsr_misc1_stateArgs[] = {
03266 { { STATE_MISC1 }, 'o' }
03267 };
03268
03269 static xtensa_arg_internal Iclass_xt_iclass_xsr_misc1_args[] = {
03270 { { 6 }, 'm' }
03271 };
03272
03273 static xtensa_arg_internal Iclass_xt_iclass_xsr_misc1_stateArgs[] = {
03274 { { STATE_MISC1 }, 'm' }
03275 };
03276
03277 static xtensa_arg_internal Iclass_xt_iclass_rsr_prid_args[] = {
03278 { { 6 }, 'o' }
03279 };
03280
03281 static xtensa_arg_internal Iclass_xt_iclass_rfi_args[] = {
03282 { { 40 }, 'i' }
03283 };
03284
03285 static xtensa_arg_internal Iclass_xt_iclass_rfi_stateArgs[] = {
03286 { { STATE_PSWOE }, 'o' },
03287 { { STATE_PSCALLINC }, 'o' },
03288 { { STATE_PSOWB }, 'o' },
03289 { { STATE_PSUM }, 'o' },
03290 { { STATE_PSEXCM }, 'o' },
03291 { { STATE_PSINTLEVEL }, 'o' },
03292 { { STATE_EPC1 }, 'i' },
03293 { { STATE_EPC2 }, 'i' },
03294 { { STATE_EPC3 }, 'i' },
03295 { { STATE_EPC4 }, 'i' },
03296 { { STATE_EPS2 }, 'i' },
03297 { { STATE_EPS3 }, 'i' },
03298 { { STATE_EPS4 }, 'i' },
03299 { { STATE_InOCDMode }, 'm' }
03300 };
03301
03302 static xtensa_arg_internal Iclass_xt_iclass_wait_args[] = {
03303 { { 40 }, 'i' }
03304 };
03305
03306 static xtensa_arg_internal Iclass_xt_iclass_wait_stateArgs[] = {
03307 { { STATE_PSINTLEVEL }, 'o' }
03308 };
03309
03310 static xtensa_arg_internal Iclass_xt_iclass_rsr_interrupt_args[] = {
03311 { { 6 }, 'o' }
03312 };
03313
03314 static xtensa_arg_internal Iclass_xt_iclass_rsr_interrupt_stateArgs[] = {
03315 { { STATE_INTERRUPT }, 'i' }
03316 };
03317
03318 static xtensa_arg_internal Iclass_xt_iclass_wsr_intset_args[] = {
03319 { { 6 }, 'i' }
03320 };
03321
03322 static xtensa_arg_internal Iclass_xt_iclass_wsr_intset_stateArgs[] = {
03323 { { STATE_XTSYNC }, 'o' },
03324 { { STATE_INTERRUPT }, 'm' }
03325 };
03326
03327 static xtensa_arg_internal Iclass_xt_iclass_wsr_intclear_args[] = {
03328 { { 6 }, 'i' }
03329 };
03330
03331 static xtensa_arg_internal Iclass_xt_iclass_wsr_intclear_stateArgs[] = {
03332 { { STATE_XTSYNC }, 'o' },
03333 { { STATE_INTERRUPT }, 'm' }
03334 };
03335
03336 static xtensa_arg_internal Iclass_xt_iclass_rsr_intenable_args[] = {
03337 { { 6 }, 'o' }
03338 };
03339
03340 static xtensa_arg_internal Iclass_xt_iclass_rsr_intenable_stateArgs[] = {
03341 { { STATE_INTENABLE }, 'i' }
03342 };
03343
03344 static xtensa_arg_internal Iclass_xt_iclass_wsr_intenable_args[] = {
03345 { { 6 }, 'i' }
03346 };
03347
03348 static xtensa_arg_internal Iclass_xt_iclass_wsr_intenable_stateArgs[] = {
03349 { { STATE_INTENABLE }, 'o' }
03350 };
03351
03352 static xtensa_arg_internal Iclass_xt_iclass_xsr_intenable_args[] = {
03353 { { 6 }, 'm' }
03354 };
03355
03356 static xtensa_arg_internal Iclass_xt_iclass_xsr_intenable_stateArgs[] = {
03357 { { STATE_INTENABLE }, 'm' }
03358 };
03359
03360 static xtensa_arg_internal Iclass_xt_iclass_break_args[] = {
03361 { { 34 }, 'i' },
03362 { { 33 }, 'i' }
03363 };
03364
03365 static xtensa_arg_internal Iclass_xt_iclass_break_stateArgs[] = {
03366 { { STATE_PSEXCM }, 'i' },
03367 { { STATE_PSINTLEVEL }, 'i' }
03368 };
03369
03370 static xtensa_arg_internal Iclass_xt_iclass_break_n_args[] = {
03371 { { 34 }, 'i' }
03372 };
03373
03374 static xtensa_arg_internal Iclass_xt_iclass_break_n_stateArgs[] = {
03375 { { STATE_PSEXCM }, 'i' },
03376 { { STATE_PSINTLEVEL }, 'i' }
03377 };
03378
03379 static xtensa_arg_internal Iclass_xt_iclass_rsr_dbreaka0_args[] = {
03380 { { 6 }, 'o' }
03381 };
03382
03383 static xtensa_arg_internal Iclass_xt_iclass_rsr_dbreaka0_stateArgs[] = {
03384 { { STATE_DBREAKA0 }, 'i' }
03385 };
03386
03387 static xtensa_arg_internal Iclass_xt_iclass_wsr_dbreaka0_args[] = {
03388 { { 6 }, 'i' }
03389 };
03390
03391 static xtensa_arg_internal Iclass_xt_iclass_wsr_dbreaka0_stateArgs[] = {
03392 { { STATE_DBREAKA0 }, 'o' },
03393 { { STATE_XTSYNC }, 'o' }
03394 };
03395
03396 static xtensa_arg_internal Iclass_xt_iclass_xsr_dbreaka0_args[] = {
03397 { { 6 }, 'm' }
03398 };
03399
03400 static xtensa_arg_internal Iclass_xt_iclass_xsr_dbreaka0_stateArgs[] = {
03401 { { STATE_DBREAKA0 }, 'm' },
03402 { { STATE_XTSYNC }, 'o' }
03403 };
03404
03405 static xtensa_arg_internal Iclass_xt_iclass_rsr_dbreakc0_args[] = {
03406 { { 6 }, 'o' }
03407 };
03408
03409 static xtensa_arg_internal Iclass_xt_iclass_rsr_dbreakc0_stateArgs[] = {
03410 { { STATE_DBREAKC0 }, 'i' }
03411 };
03412
03413 static xtensa_arg_internal Iclass_xt_iclass_wsr_dbreakc0_args[] = {
03414 { { 6 }, 'i' }
03415 };
03416
03417 static xtensa_arg_internal Iclass_xt_iclass_wsr_dbreakc0_stateArgs[] = {
03418 { { STATE_DBREAKC0 }, 'o' },
03419 { { STATE_XTSYNC }, 'o' }
03420 };
03421
03422 static xtensa_arg_internal Iclass_xt_iclass_xsr_dbreakc0_args[] = {
03423 { { 6 }, 'm' }
03424 };
03425
03426 static xtensa_arg_internal Iclass_xt_iclass_xsr_dbreakc0_stateArgs[] = {
03427 { { STATE_DBREAKC0 }, 'm' },
03428 { { STATE_XTSYNC }, 'o' }
03429 };
03430
03431 static xtensa_arg_internal Iclass_xt_iclass_rsr_dbreaka1_args[] = {
03432 { { 6 }, 'o' }
03433 };
03434
03435 static xtensa_arg_internal Iclass_xt_iclass_rsr_dbreaka1_stateArgs[] = {
03436 { { STATE_DBREAKA1 }, 'i' }
03437 };
03438
03439 static xtensa_arg_internal Iclass_xt_iclass_wsr_dbreaka1_args[] = {
03440 { { 6 }, 'i' }
03441 };
03442
03443 static xtensa_arg_internal Iclass_xt_iclass_wsr_dbreaka1_stateArgs[] = {
03444 { { STATE_DBREAKA1 }, 'o' },
03445 { { STATE_XTSYNC }, 'o' }
03446 };
03447
03448 static xtensa_arg_internal Iclass_xt_iclass_xsr_dbreaka1_args[] = {
03449 { { 6 }, 'm' }
03450 };
03451
03452 static xtensa_arg_internal Iclass_xt_iclass_xsr_dbreaka1_stateArgs[] = {
03453 { { STATE_DBREAKA1 }, 'm' },
03454 { { STATE_XTSYNC }, 'o' }
03455 };
03456
03457 static xtensa_arg_internal Iclass_xt_iclass_rsr_dbreakc1_args[] = {
03458 { { 6 }, 'o' }
03459 };
03460
03461 static xtensa_arg_internal Iclass_xt_iclass_rsr_dbreakc1_stateArgs[] = {
03462 { { STATE_DBREAKC1 }, 'i' }
03463 };
03464
03465 static xtensa_arg_internal Iclass_xt_iclass_wsr_dbreakc1_args[] = {
03466 { { 6 }, 'i' }
03467 };
03468
03469 static xtensa_arg_internal Iclass_xt_iclass_wsr_dbreakc1_stateArgs[] = {
03470 { { STATE_DBREAKC1 }, 'o' },
03471 { { STATE_XTSYNC }, 'o' }
03472 };
03473
03474 static xtensa_arg_internal Iclass_xt_iclass_xsr_dbreakc1_args[] = {
03475 { { 6 }, 'm' }
03476 };
03477
03478 static xtensa_arg_internal Iclass_xt_iclass_xsr_dbreakc1_stateArgs[] = {
03479 { { STATE_DBREAKC1 }, 'm' },
03480 { { STATE_XTSYNC }, 'o' }
03481 };
03482
03483 static xtensa_arg_internal Iclass_xt_iclass_rsr_ibreaka0_args[] = {
03484 { { 6 }, 'o' }
03485 };
03486
03487 static xtensa_arg_internal Iclass_xt_iclass_rsr_ibreaka0_stateArgs[] = {
03488 { { STATE_IBREAKA0 }, 'i' }
03489 };
03490
03491 static xtensa_arg_internal Iclass_xt_iclass_wsr_ibreaka0_args[] = {
03492 { { 6 }, 'i' }
03493 };
03494
03495 static xtensa_arg_internal Iclass_xt_iclass_wsr_ibreaka0_stateArgs[] = {
03496 { { STATE_IBREAKA0 }, 'o' }
03497 };
03498
03499 static xtensa_arg_internal Iclass_xt_iclass_xsr_ibreaka0_args[] = {
03500 { { 6 }, 'm' }
03501 };
03502
03503 static xtensa_arg_internal Iclass_xt_iclass_xsr_ibreaka0_stateArgs[] = {
03504 { { STATE_IBREAKA0 }, 'm' }
03505 };
03506
03507 static xtensa_arg_internal Iclass_xt_iclass_rsr_ibreaka1_args[] = {
03508 { { 6 }, 'o' }
03509 };
03510
03511 static xtensa_arg_internal Iclass_xt_iclass_rsr_ibreaka1_stateArgs[] = {
03512 { { STATE_IBREAKA1 }, 'i' }
03513 };
03514
03515 static xtensa_arg_internal Iclass_xt_iclass_wsr_ibreaka1_args[] = {
03516 { { 6 }, 'i' }
03517 };
03518
03519 static xtensa_arg_internal Iclass_xt_iclass_wsr_ibreaka1_stateArgs[] = {
03520 { { STATE_IBREAKA1 }, 'o' }
03521 };
03522
03523 static xtensa_arg_internal Iclass_xt_iclass_xsr_ibreaka1_args[] = {
03524 { { 6 }, 'm' }
03525 };
03526
03527 static xtensa_arg_internal Iclass_xt_iclass_xsr_ibreaka1_stateArgs[] = {
03528 { { STATE_IBREAKA1 }, 'm' }
03529 };
03530
03531 static xtensa_arg_internal Iclass_xt_iclass_rsr_ibreakenable_args[] = {
03532 { { 6 }, 'o' }
03533 };
03534
03535 static xtensa_arg_internal Iclass_xt_iclass_rsr_ibreakenable_stateArgs[] = {
03536 { { STATE_IBREAKENABLE }, 'i' }
03537 };
03538
03539 static xtensa_arg_internal Iclass_xt_iclass_wsr_ibreakenable_args[] = {
03540 { { 6 }, 'i' }
03541 };
03542
03543 static xtensa_arg_internal Iclass_xt_iclass_wsr_ibreakenable_stateArgs[] = {
03544 { { STATE_IBREAKENABLE }, 'o' }
03545 };
03546
03547 static xtensa_arg_internal Iclass_xt_iclass_xsr_ibreakenable_args[] = {
03548 { { 6 }, 'm' }
03549 };
03550
03551 static xtensa_arg_internal Iclass_xt_iclass_xsr_ibreakenable_stateArgs[] = {
03552 { { STATE_IBREAKENABLE }, 'm' }
03553 };
03554
03555 static xtensa_arg_internal Iclass_xt_iclass_rsr_debugcause_args[] = {
03556 { { 6 }, 'o' }
03557 };
03558
03559 static xtensa_arg_internal Iclass_xt_iclass_rsr_debugcause_stateArgs[] = {
03560 { { STATE_DEBUGCAUSE }, 'i' },
03561 { { STATE_DBNUM }, 'i' }
03562 };
03563
03564 static xtensa_arg_internal Iclass_xt_iclass_wsr_debugcause_args[] = {
03565 { { 6 }, 'i' }
03566 };
03567
03568 static xtensa_arg_internal Iclass_xt_iclass_wsr_debugcause_stateArgs[] = {
03569 { { STATE_DEBUGCAUSE }, 'o' },
03570 { { STATE_DBNUM }, 'o' }
03571 };
03572
03573 static xtensa_arg_internal Iclass_xt_iclass_xsr_debugcause_args[] = {
03574 { { 6 }, 'm' }
03575 };
03576
03577 static xtensa_arg_internal Iclass_xt_iclass_xsr_debugcause_stateArgs[] = {
03578 { { STATE_DEBUGCAUSE }, 'm' },
03579 { { STATE_DBNUM }, 'm' }
03580 };
03581
03582 static xtensa_arg_internal Iclass_xt_iclass_rsr_icount_args[] = {
03583 { { 6 }, 'o' }
03584 };
03585
03586 static xtensa_arg_internal Iclass_xt_iclass_rsr_icount_stateArgs[] = {
03587 { { STATE_ICOUNT }, 'i' }
03588 };
03589
03590 static xtensa_arg_internal Iclass_xt_iclass_wsr_icount_args[] = {
03591 { { 6 }, 'i' }
03592 };
03593
03594 static xtensa_arg_internal Iclass_xt_iclass_wsr_icount_stateArgs[] = {
03595 { { STATE_XTSYNC }, 'o' },
03596 { { STATE_ICOUNT }, 'o' }
03597 };
03598
03599 static xtensa_arg_internal Iclass_xt_iclass_xsr_icount_args[] = {
03600 { { 6 }, 'm' }
03601 };
03602
03603 static xtensa_arg_internal Iclass_xt_iclass_xsr_icount_stateArgs[] = {
03604 { { STATE_XTSYNC }, 'o' },
03605 { { STATE_ICOUNT }, 'm' }
03606 };
03607
03608 static xtensa_arg_internal Iclass_xt_iclass_rsr_icountlevel_args[] = {
03609 { { 6 }, 'o' }
03610 };
03611
03612 static xtensa_arg_internal Iclass_xt_iclass_rsr_icountlevel_stateArgs[] = {
03613 { { STATE_ICOUNTLEVEL }, 'i' }
03614 };
03615
03616 static xtensa_arg_internal Iclass_xt_iclass_wsr_icountlevel_args[] = {
03617 { { 6 }, 'i' }
03618 };
03619
03620 static xtensa_arg_internal Iclass_xt_iclass_wsr_icountlevel_stateArgs[] = {
03621 { { STATE_ICOUNTLEVEL }, 'o' }
03622 };
03623
03624 static xtensa_arg_internal Iclass_xt_iclass_xsr_icountlevel_args[] = {
03625 { { 6 }, 'm' }
03626 };
03627
03628 static xtensa_arg_internal Iclass_xt_iclass_xsr_icountlevel_stateArgs[] = {
03629 { { STATE_ICOUNTLEVEL }, 'm' }
03630 };
03631
03632 static xtensa_arg_internal Iclass_xt_iclass_rsr_ddr_args[] = {
03633 { { 6 }, 'o' }
03634 };
03635
03636 static xtensa_arg_internal Iclass_xt_iclass_rsr_ddr_stateArgs[] = {
03637 { { STATE_DDR }, 'i' }
03638 };
03639
03640 static xtensa_arg_internal Iclass_xt_iclass_wsr_ddr_args[] = {
03641 { { 6 }, 'i' }
03642 };
03643
03644 static xtensa_arg_internal Iclass_xt_iclass_wsr_ddr_stateArgs[] = {
03645 { { STATE_XTSYNC }, 'o' },
03646 { { STATE_DDR }, 'o' }
03647 };
03648
03649 static xtensa_arg_internal Iclass_xt_iclass_xsr_ddr_args[] = {
03650 { { 6 }, 'm' }
03651 };
03652
03653 static xtensa_arg_internal Iclass_xt_iclass_xsr_ddr_stateArgs[] = {
03654 { { STATE_XTSYNC }, 'o' },
03655 { { STATE_DDR }, 'm' }
03656 };
03657
03658 static xtensa_arg_internal Iclass_xt_iclass_rfdo_stateArgs[] = {
03659 { { STATE_InOCDMode }, 'm' },
03660 { { STATE_EPC4 }, 'i' },
03661 { { STATE_PSWOE }, 'o' },
03662 { { STATE_PSCALLINC }, 'o' },
03663 { { STATE_PSOWB }, 'o' },
03664 { { STATE_PSUM }, 'o' },
03665 { { STATE_PSEXCM }, 'o' },
03666 { { STATE_PSINTLEVEL }, 'o' },
03667 { { STATE_EPS4 }, 'i' }
03668 };
03669
03670 static xtensa_arg_internal Iclass_xt_iclass_rfdd_stateArgs[] = {
03671 { { STATE_InOCDMode }, 'm' }
03672 };
03673
03674 static xtensa_arg_internal Iclass_xt_iclass_rsr_ccount_args[] = {
03675 { { 6 }, 'o' }
03676 };
03677
03678 static xtensa_arg_internal Iclass_xt_iclass_rsr_ccount_stateArgs[] = {
03679 { { STATE_CCOUNT }, 'i' }
03680 };
03681
03682 static xtensa_arg_internal Iclass_xt_iclass_wsr_ccount_args[] = {
03683 { { 6 }, 'i' }
03684 };
03685
03686 static xtensa_arg_internal Iclass_xt_iclass_wsr_ccount_stateArgs[] = {
03687 { { STATE_XTSYNC }, 'o' },
03688 { { STATE_CCOUNT }, 'o' }
03689 };
03690
03691 static xtensa_arg_internal Iclass_xt_iclass_xsr_ccount_args[] = {
03692 { { 6 }, 'm' }
03693 };
03694
03695 static xtensa_arg_internal Iclass_xt_iclass_xsr_ccount_stateArgs[] = {
03696 { { STATE_XTSYNC }, 'o' },
03697 { { STATE_CCOUNT }, 'm' }
03698 };
03699
03700 static xtensa_arg_internal Iclass_xt_iclass_rsr_ccompare0_args[] = {
03701 { { 6 }, 'o' }
03702 };
03703
03704 static xtensa_arg_internal Iclass_xt_iclass_rsr_ccompare0_stateArgs[] = {
03705 { { STATE_CCOMPARE0 }, 'i' }
03706 };
03707
03708 static xtensa_arg_internal Iclass_xt_iclass_wsr_ccompare0_args[] = {
03709 { { 6 }, 'i' }
03710 };
03711
03712 static xtensa_arg_internal Iclass_xt_iclass_wsr_ccompare0_stateArgs[] = {
03713 { { STATE_CCOMPARE0 }, 'o' },
03714 { { STATE_INTERRUPT }, 'm' }
03715 };
03716
03717 static xtensa_arg_internal Iclass_xt_iclass_xsr_ccompare0_args[] = {
03718 { { 6 }, 'm' }
03719 };
03720
03721 static xtensa_arg_internal Iclass_xt_iclass_xsr_ccompare0_stateArgs[] = {
03722 { { STATE_CCOMPARE0 }, 'm' },
03723 { { STATE_INTERRUPT }, 'm' }
03724 };
03725
03726 static xtensa_arg_internal Iclass_xt_iclass_rsr_ccompare1_args[] = {
03727 { { 6 }, 'o' }
03728 };
03729
03730 static xtensa_arg_internal Iclass_xt_iclass_rsr_ccompare1_stateArgs[] = {
03731 { { STATE_CCOMPARE1 }, 'i' }
03732 };
03733
03734 static xtensa_arg_internal Iclass_xt_iclass_wsr_ccompare1_args[] = {
03735 { { 6 }, 'i' }
03736 };
03737
03738 static xtensa_arg_internal Iclass_xt_iclass_wsr_ccompare1_stateArgs[] = {
03739 { { STATE_CCOMPARE1 }, 'o' },
03740 { { STATE_INTERRUPT }, 'm' }
03741 };
03742
03743 static xtensa_arg_internal Iclass_xt_iclass_xsr_ccompare1_args[] = {
03744 { { 6 }, 'm' }
03745 };
03746
03747 static xtensa_arg_internal Iclass_xt_iclass_xsr_ccompare1_stateArgs[] = {
03748 { { STATE_CCOMPARE1 }, 'm' },
03749 { { STATE_INTERRUPT }, 'm' }
03750 };
03751
03752 static xtensa_arg_internal Iclass_xt_iclass_rsr_ccompare2_args[] = {
03753 { { 6 }, 'o' }
03754 };
03755
03756 static xtensa_arg_internal Iclass_xt_iclass_rsr_ccompare2_stateArgs[] = {
03757 { { STATE_CCOMPARE2 }, 'i' }
03758 };
03759
03760 static xtensa_arg_internal Iclass_xt_iclass_wsr_ccompare2_args[] = {
03761 { { 6 }, 'i' }
03762 };
03763
03764 static xtensa_arg_internal Iclass_xt_iclass_wsr_ccompare2_stateArgs[] = {
03765 { { STATE_CCOMPARE2 }, 'o' },
03766 { { STATE_INTERRUPT }, 'm' }
03767 };
03768
03769 static xtensa_arg_internal Iclass_xt_iclass_xsr_ccompare2_args[] = {
03770 { { 6 }, 'm' }
03771 };
03772
03773 static xtensa_arg_internal Iclass_xt_iclass_xsr_ccompare2_stateArgs[] = {
03774 { { STATE_CCOMPARE2 }, 'm' },
03775 { { STATE_INTERRUPT }, 'm' }
03776 };
03777
03778 static xtensa_arg_internal Iclass_xt_iclass_icache_args[] = {
03779 { { 4 }, 'i' },
03780 { { 21 }, 'i' }
03781 };
03782
03783 static xtensa_arg_internal Iclass_xt_iclass_icache_inv_args[] = {
03784 { { 4 }, 'i' },
03785 { { 21 }, 'i' }
03786 };
03787
03788 static xtensa_arg_internal Iclass_xt_iclass_licx_args[] = {
03789 { { 6 }, 'o' },
03790 { { 4 }, 'i' }
03791 };
03792
03793 static xtensa_arg_internal Iclass_xt_iclass_sicx_args[] = {
03794 { { 6 }, 'i' },
03795 { { 4 }, 'i' }
03796 };
03797
03798 static xtensa_arg_internal Iclass_xt_iclass_dcache_args[] = {
03799 { { 4 }, 'i' },
03800 { { 21 }, 'i' }
03801 };
03802
03803 static xtensa_arg_internal Iclass_xt_iclass_dcache_ind_args[] = {
03804 { { 4 }, 'i' },
03805 { { 22 }, 'i' }
03806 };
03807
03808 static xtensa_arg_internal Iclass_xt_iclass_dcache_inv_args[] = {
03809 { { 4 }, 'i' },
03810 { { 21 }, 'i' }
03811 };
03812
03813 static xtensa_arg_internal Iclass_xt_iclass_dpf_args[] = {
03814 { { 4 }, 'i' },
03815 { { 21 }, 'i' }
03816 };
03817
03818 static xtensa_arg_internal Iclass_xt_iclass_sdct_args[] = {
03819 { { 6 }, 'i' },
03820 { { 4 }, 'i' }
03821 };
03822
03823 static xtensa_arg_internal Iclass_xt_iclass_ldct_args[] = {
03824 { { 6 }, 'o' },
03825 { { 4 }, 'i' }
03826 };
03827
03828 static xtensa_arg_internal Iclass_xt_iclass_idtlb_args[] = {
03829 { { 4 }, 'i' }
03830 };
03831
03832 static xtensa_arg_internal Iclass_xt_iclass_idtlb_stateArgs[] = {
03833 { { STATE_XTSYNC }, 'o' }
03834 };
03835
03836 static xtensa_arg_internal Iclass_xt_iclass_rdtlb_args[] = {
03837 { { 6 }, 'o' },
03838 { { 4 }, 'i' }
03839 };
03840
03841 static xtensa_arg_internal Iclass_xt_iclass_wdtlb_args[] = {
03842 { { 6 }, 'i' },
03843 { { 4 }, 'i' }
03844 };
03845
03846 static xtensa_arg_internal Iclass_xt_iclass_wdtlb_stateArgs[] = {
03847 { { STATE_XTSYNC }, 'o' }
03848 };
03849
03850 static xtensa_arg_internal Iclass_xt_iclass_iitlb_args[] = {
03851 { { 4 }, 'i' }
03852 };
03853
03854 static xtensa_arg_internal Iclass_xt_iclass_ritlb_args[] = {
03855 { { 6 }, 'o' },
03856 { { 4 }, 'i' }
03857 };
03858
03859 static xtensa_arg_internal Iclass_xt_iclass_witlb_args[] = {
03860 { { 6 }, 'i' },
03861 { { 4 }, 'i' }
03862 };
03863
03864 static xtensa_arg_internal Iclass_xt_iclass_nsa_args[] = {
03865 { { 6 }, 'o' },
03866 { { 4 }, 'i' }
03867 };
03868
03869 static xtensa_iclass_internal iclasses[] = {
03870 { 0, 0 ,
03871 0, 0, 0, 0 },
03872 { 0, 0 ,
03873 2, Iclass_xt_iclass_rfe_stateArgs, 0, 0 },
03874 { 0, 0 ,
03875 1, Iclass_xt_iclass_rfde_stateArgs, 0, 0 },
03876 { 0, 0 ,
03877 0, 0, 0, 0 },
03878 { 0, 0 ,
03879 0, 0, 0, 0 },
03880 { 2, Iclass_xt_iclass_call12_args,
03881 1, Iclass_xt_iclass_call12_stateArgs, 0, 0 },
03882 { 2, Iclass_xt_iclass_call8_args,
03883 1, Iclass_xt_iclass_call8_stateArgs, 0, 0 },
03884 { 2, Iclass_xt_iclass_call4_args,
03885 1, Iclass_xt_iclass_call4_stateArgs, 0, 0 },
03886 { 2, Iclass_xt_iclass_callx12_args,
03887 1, Iclass_xt_iclass_callx12_stateArgs, 0, 0 },
03888 { 2, Iclass_xt_iclass_callx8_args,
03889 1, Iclass_xt_iclass_callx8_stateArgs, 0, 0 },
03890 { 2, Iclass_xt_iclass_callx4_args,
03891 1, Iclass_xt_iclass_callx4_stateArgs, 0, 0 },
03892 { 3, Iclass_xt_iclass_entry_args,
03893 5, Iclass_xt_iclass_entry_stateArgs, 0, 0 },
03894 { 2, Iclass_xt_iclass_movsp_args,
03895 2, Iclass_xt_iclass_movsp_stateArgs, 0, 0 },
03896 { 1, Iclass_xt_iclass_rotw_args,
03897 1, Iclass_xt_iclass_rotw_stateArgs, 0, 0 },
03898 { 1, Iclass_xt_iclass_retw_args,
03899 4, Iclass_xt_iclass_retw_stateArgs, 0, 0 },
03900 { 0, 0 ,
03901 5, Iclass_xt_iclass_rfwou_stateArgs, 0, 0 },
03902 { 3, Iclass_xt_iclass_l32e_args,
03903 0, 0, 0, 0 },
03904 { 3, Iclass_xt_iclass_s32e_args,
03905 0, 0, 0, 0 },
03906 { 1, Iclass_xt_iclass_rsr_windowbase_args,
03907 1, Iclass_xt_iclass_rsr_windowbase_stateArgs, 0, 0 },
03908 { 1, Iclass_xt_iclass_wsr_windowbase_args,
03909 1, Iclass_xt_iclass_wsr_windowbase_stateArgs, 0, 0 },
03910 { 1, Iclass_xt_iclass_xsr_windowbase_args,
03911 1, Iclass_xt_iclass_xsr_windowbase_stateArgs, 0, 0 },
03912 { 1, Iclass_xt_iclass_rsr_windowstart_args,
03913 1, Iclass_xt_iclass_rsr_windowstart_stateArgs, 0, 0 },
03914 { 1, Iclass_xt_iclass_wsr_windowstart_args,
03915 1, Iclass_xt_iclass_wsr_windowstart_stateArgs, 0, 0 },
03916 { 1, Iclass_xt_iclass_xsr_windowstart_args,
03917 1, Iclass_xt_iclass_xsr_windowstart_stateArgs, 0, 0 },
03918 { 3, Iclass_xt_iclass_add_n_args,
03919 0, 0, 0, 0 },
03920 { 3, Iclass_xt_iclass_addi_n_args,
03921 0, 0, 0, 0 },
03922 { 2, Iclass_xt_iclass_bz6_args,
03923 0, 0, 0, 0 },
03924 { 0, 0 ,
03925 0, 0, 0, 0 },
03926 { 3, Iclass_xt_iclass_loadi4_args,
03927 0, 0, 0, 0 },
03928 { 2, Iclass_xt_iclass_mov_n_args,
03929 0, 0, 0, 0 },
03930 { 2, Iclass_xt_iclass_movi_n_args,
03931 0, 0, 0, 0 },
03932 { 0, 0 ,
03933 0, 0, 0, 0 },
03934 { 1, Iclass_xt_iclass_retn_args,
03935 0, 0, 0, 0 },
03936 { 3, Iclass_xt_iclass_storei4_args,
03937 0, 0, 0, 0 },
03938 { 3, Iclass_xt_iclass_addi_args,
03939 0, 0, 0, 0 },
03940 { 3, Iclass_xt_iclass_addmi_args,
03941 0, 0, 0, 0 },
03942 { 3, Iclass_xt_iclass_addsub_args,
03943 0, 0, 0, 0 },
03944 { 3, Iclass_xt_iclass_bit_args,
03945 0, 0, 0, 0 },
03946 { 3, Iclass_xt_iclass_bsi8_args,
03947 0, 0, 0, 0 },
03948 { 3, Iclass_xt_iclass_bsi8b_args,
03949 0, 0, 0, 0 },
03950 { 3, Iclass_xt_iclass_bsi8u_args,
03951 0, 0, 0, 0 },
03952 { 3, Iclass_xt_iclass_bst8_args,
03953 0, 0, 0, 0 },
03954 { 2, Iclass_xt_iclass_bsz12_args,
03955 0, 0, 0, 0 },
03956 { 2, Iclass_xt_iclass_call0_args,
03957 0, 0, 0, 0 },
03958 { 2, Iclass_xt_iclass_callx0_args,
03959 0, 0, 0, 0 },
03960 { 4, Iclass_xt_iclass_exti_args,
03961 0, 0, 0, 0 },
03962 { 0, 0 ,
03963 0, 0, 0, 0 },
03964 { 1, Iclass_xt_iclass_jump_args,
03965 0, 0, 0, 0 },
03966 { 1, Iclass_xt_iclass_jumpx_args,
03967 0, 0, 0, 0 },
03968 { 3, Iclass_xt_iclass_l16ui_args,
03969 0, 0, 0, 0 },
03970 { 3, Iclass_xt_iclass_l16si_args,
03971 0, 0, 0, 0 },
03972 { 3, Iclass_xt_iclass_l32i_args,
03973 0, 0, 0, 0 },
03974 { 2, Iclass_xt_iclass_l32r_args,
03975 2, Iclass_xt_iclass_l32r_stateArgs, 0, 0 },
03976 { 3, Iclass_xt_iclass_l8i_args,
03977 0, 0, 0, 0 },
03978 { 2, Iclass_xt_iclass_loop_args,
03979 3, Iclass_xt_iclass_loop_stateArgs, 0, 0 },
03980 { 2, Iclass_xt_iclass_loopz_args,
03981 3, Iclass_xt_iclass_loopz_stateArgs, 0, 0 },
03982 { 2, Iclass_xt_iclass_movi_args,
03983 0, 0, 0, 0 },
03984 { 3, Iclass_xt_iclass_movz_args,
03985 0, 0, 0, 0 },
03986 { 2, Iclass_xt_iclass_neg_args,
03987 0, 0, 0, 0 },
03988 { 0, 0 ,
03989 0, 0, 0, 0 },
03990 { 1, Iclass_xt_iclass_return_args,
03991 0, 0, 0, 0 },
03992 { 3, Iclass_xt_iclass_s16i_args,
03993 0, 0, 0, 0 },
03994 { 3, Iclass_xt_iclass_s32i_args,
03995 0, 0, 0, 0 },
03996 { 3, Iclass_xt_iclass_s8i_args,
03997 0, 0, 0, 0 },
03998 { 1, Iclass_xt_iclass_sar_args,
03999 1, Iclass_xt_iclass_sar_stateArgs, 0, 0 },
04000 { 1, Iclass_xt_iclass_sari_args,
04001 1, Iclass_xt_iclass_sari_stateArgs, 0, 0 },
04002 { 2, Iclass_xt_iclass_shifts_args,
04003 1, Iclass_xt_iclass_shifts_stateArgs, 0, 0 },
04004 { 3, Iclass_xt_iclass_shiftst_args,
04005 1, Iclass_xt_iclass_shiftst_stateArgs, 0, 0 },
04006 { 2, Iclass_xt_iclass_shiftt_args,
04007 1, Iclass_xt_iclass_shiftt_stateArgs, 0, 0 },
04008 { 3, Iclass_xt_iclass_slli_args,
04009 0, 0, 0, 0 },
04010 { 3, Iclass_xt_iclass_srai_args,
04011 0, 0, 0, 0 },
04012 { 3, Iclass_xt_iclass_srli_args,
04013 0, 0, 0, 0 },
04014 { 0, 0 ,
04015 0, 0, 0, 0 },
04016 { 0, 0 ,
04017 0, 0, 0, 0 },
04018 { 0, 0 ,
04019 0, 0, 0, 0 },
04020 { 0, 0 ,
04021 1, Iclass_xt_iclass_sync_stateArgs, 0, 0 },
04022 { 2, Iclass_xt_iclass_rsil_args,
04023 6, Iclass_xt_iclass_rsil_stateArgs, 0, 0 },
04024 { 1, Iclass_xt_iclass_rsr_lend_args,
04025 1, Iclass_xt_iclass_rsr_lend_stateArgs, 0, 0 },
04026 { 1, Iclass_xt_iclass_wsr_lend_args,
04027 1, Iclass_xt_iclass_wsr_lend_stateArgs, 0, 0 },
04028 { 1, Iclass_xt_iclass_xsr_lend_args,
04029 1, Iclass_xt_iclass_xsr_lend_stateArgs, 0, 0 },
04030 { 1, Iclass_xt_iclass_rsr_lcount_args,
04031 1, Iclass_xt_iclass_rsr_lcount_stateArgs, 0, 0 },
04032 { 1, Iclass_xt_iclass_wsr_lcount_args,
04033 2, Iclass_xt_iclass_wsr_lcount_stateArgs, 0, 0 },
04034 { 1, Iclass_xt_iclass_xsr_lcount_args,
04035 2, Iclass_xt_iclass_xsr_lcount_stateArgs, 0, 0 },
04036 { 1, Iclass_xt_iclass_rsr_lbeg_args,
04037 1, Iclass_xt_iclass_rsr_lbeg_stateArgs, 0, 0 },
04038 { 1, Iclass_xt_iclass_wsr_lbeg_args,
04039 1, Iclass_xt_iclass_wsr_lbeg_stateArgs, 0, 0 },
04040 { 1, Iclass_xt_iclass_xsr_lbeg_args,
04041 1, Iclass_xt_iclass_xsr_lbeg_stateArgs, 0, 0 },
04042 { 1, Iclass_xt_iclass_rsr_sar_args,
04043 1, Iclass_xt_iclass_rsr_sar_stateArgs, 0, 0 },
04044 { 1, Iclass_xt_iclass_wsr_sar_args,
04045 2, Iclass_xt_iclass_wsr_sar_stateArgs, 0, 0 },
04046 { 1, Iclass_xt_iclass_xsr_sar_args,
04047 1, Iclass_xt_iclass_xsr_sar_stateArgs, 0, 0 },
04048 { 1, Iclass_xt_iclass_rsr_litbase_args,
04049 2, Iclass_xt_iclass_rsr_litbase_stateArgs, 0, 0 },
04050 { 1, Iclass_xt_iclass_wsr_litbase_args,
04051 2, Iclass_xt_iclass_wsr_litbase_stateArgs, 0, 0 },
04052 { 1, Iclass_xt_iclass_xsr_litbase_args,
04053 2, Iclass_xt_iclass_xsr_litbase_stateArgs, 0, 0 },
04054 { 1, Iclass_xt_iclass_rsr_176_args,
04055 0, 0, 0, 0 },
04056 { 1, Iclass_xt_iclass_rsr_208_args,
04057 0, 0, 0, 0 },
04058 { 1, Iclass_xt_iclass_rsr_ps_args,
04059 6, Iclass_xt_iclass_rsr_ps_stateArgs, 0, 0 },
04060 { 1, Iclass_xt_iclass_wsr_ps_args,
04061 6, Iclass_xt_iclass_wsr_ps_stateArgs, 0, 0 },
04062 { 1, Iclass_xt_iclass_xsr_ps_args,
04063 6, Iclass_xt_iclass_xsr_ps_stateArgs, 0, 0 },
04064 { 1, Iclass_xt_iclass_rsr_epc1_args,
04065 1, Iclass_xt_iclass_rsr_epc1_stateArgs, 0, 0 },
04066 { 1, Iclass_xt_iclass_wsr_epc1_args,
04067 1, Iclass_xt_iclass_wsr_epc1_stateArgs, 0, 0 },
04068 { 1, Iclass_xt_iclass_xsr_epc1_args,
04069 1, Iclass_xt_iclass_xsr_epc1_stateArgs, 0, 0 },
04070 { 1, Iclass_xt_iclass_rsr_excsave1_args,
04071 1, Iclass_xt_iclass_rsr_excsave1_stateArgs, 0, 0 },
04072 { 1, Iclass_xt_iclass_wsr_excsave1_args,
04073 1, Iclass_xt_iclass_wsr_excsave1_stateArgs, 0, 0 },
04074 { 1, Iclass_xt_iclass_xsr_excsave1_args,
04075 1, Iclass_xt_iclass_xsr_excsave1_stateArgs, 0, 0 },
04076 { 1, Iclass_xt_iclass_rsr_epc2_args,
04077 1, Iclass_xt_iclass_rsr_epc2_stateArgs, 0, 0 },
04078 { 1, Iclass_xt_iclass_wsr_epc2_args,
04079 1, Iclass_xt_iclass_wsr_epc2_stateArgs, 0, 0 },
04080 { 1, Iclass_xt_iclass_xsr_epc2_args,
04081 1, Iclass_xt_iclass_xsr_epc2_stateArgs, 0, 0 },
04082 { 1, Iclass_xt_iclass_rsr_excsave2_args,
04083 1, Iclass_xt_iclass_rsr_excsave2_stateArgs, 0, 0 },
04084 { 1, Iclass_xt_iclass_wsr_excsave2_args,
04085 1, Iclass_xt_iclass_wsr_excsave2_stateArgs, 0, 0 },
04086 { 1, Iclass_xt_iclass_xsr_excsave2_args,
04087 1, Iclass_xt_iclass_xsr_excsave2_stateArgs, 0, 0 },
04088 { 1, Iclass_xt_iclass_rsr_epc3_args,
04089 1, Iclass_xt_iclass_rsr_epc3_stateArgs, 0, 0 },
04090 { 1, Iclass_xt_iclass_wsr_epc3_args,
04091 1, Iclass_xt_iclass_wsr_epc3_stateArgs, 0, 0 },
04092 { 1, Iclass_xt_iclass_xsr_epc3_args,
04093 1, Iclass_xt_iclass_xsr_epc3_stateArgs, 0, 0 },
04094 { 1, Iclass_xt_iclass_rsr_excsave3_args,
04095 1, Iclass_xt_iclass_rsr_excsave3_stateArgs, 0, 0 },
04096 { 1, Iclass_xt_iclass_wsr_excsave3_args,
04097 1, Iclass_xt_iclass_wsr_excsave3_stateArgs, 0, 0 },
04098 { 1, Iclass_xt_iclass_xsr_excsave3_args,
04099 1, Iclass_xt_iclass_xsr_excsave3_stateArgs, 0, 0 },
04100 { 1, Iclass_xt_iclass_rsr_epc4_args,
04101 1, Iclass_xt_iclass_rsr_epc4_stateArgs, 0, 0 },
04102 { 1, Iclass_xt_iclass_wsr_epc4_args,
04103 1, Iclass_xt_iclass_wsr_epc4_stateArgs, 0, 0 },
04104 { 1, Iclass_xt_iclass_xsr_epc4_args,
04105 1, Iclass_xt_iclass_xsr_epc4_stateArgs, 0, 0 },
04106 { 1, Iclass_xt_iclass_rsr_excsave4_args,
04107 1, Iclass_xt_iclass_rsr_excsave4_stateArgs, 0, 0 },
04108 { 1, Iclass_xt_iclass_wsr_excsave4_args,
04109 1, Iclass_xt_iclass_wsr_excsave4_stateArgs, 0, 0 },
04110 { 1, Iclass_xt_iclass_xsr_excsave4_args,
04111 1, Iclass_xt_iclass_xsr_excsave4_stateArgs, 0, 0 },
04112 { 1, Iclass_xt_iclass_rsr_eps2_args,
04113 1, Iclass_xt_iclass_rsr_eps2_stateArgs, 0, 0 },
04114 { 1, Iclass_xt_iclass_wsr_eps2_args,
04115 1, Iclass_xt_iclass_wsr_eps2_stateArgs, 0, 0 },
04116 { 1, Iclass_xt_iclass_xsr_eps2_args,
04117 1, Iclass_xt_iclass_xsr_eps2_stateArgs, 0, 0 },
04118 { 1, Iclass_xt_iclass_rsr_eps3_args,
04119 1, Iclass_xt_iclass_rsr_eps3_stateArgs, 0, 0 },
04120 { 1, Iclass_xt_iclass_wsr_eps3_args,
04121 1, Iclass_xt_iclass_wsr_eps3_stateArgs, 0, 0 },
04122 { 1, Iclass_xt_iclass_xsr_eps3_args,
04123 1, Iclass_xt_iclass_xsr_eps3_stateArgs, 0, 0 },
04124 { 1, Iclass_xt_iclass_rsr_eps4_args,
04125 1, Iclass_xt_iclass_rsr_eps4_stateArgs, 0, 0 },
04126 { 1, Iclass_xt_iclass_wsr_eps4_args,
04127 1, Iclass_xt_iclass_wsr_eps4_stateArgs, 0, 0 },
04128 { 1, Iclass_xt_iclass_xsr_eps4_args,
04129 1, Iclass_xt_iclass_xsr_eps4_stateArgs, 0, 0 },
04130 { 1, Iclass_xt_iclass_rsr_excvaddr_args,
04131 1, Iclass_xt_iclass_rsr_excvaddr_stateArgs, 0, 0 },
04132 { 1, Iclass_xt_iclass_wsr_excvaddr_args,
04133 1, Iclass_xt_iclass_wsr_excvaddr_stateArgs, 0, 0 },
04134 { 1, Iclass_xt_iclass_xsr_excvaddr_args,
04135 1, Iclass_xt_iclass_xsr_excvaddr_stateArgs, 0, 0 },
04136 { 1, Iclass_xt_iclass_rsr_depc_args,
04137 1, Iclass_xt_iclass_rsr_depc_stateArgs, 0, 0 },
04138 { 1, Iclass_xt_iclass_wsr_depc_args,
04139 1, Iclass_xt_iclass_wsr_depc_stateArgs, 0, 0 },
04140 { 1, Iclass_xt_iclass_xsr_depc_args,
04141 1, Iclass_xt_iclass_xsr_depc_stateArgs, 0, 0 },
04142 { 1, Iclass_xt_iclass_rsr_exccause_args,
04143 2, Iclass_xt_iclass_rsr_exccause_stateArgs, 0, 0 },
04144 { 1, Iclass_xt_iclass_wsr_exccause_args,
04145 1, Iclass_xt_iclass_wsr_exccause_stateArgs, 0, 0 },
04146 { 1, Iclass_xt_iclass_xsr_exccause_args,
04147 1, Iclass_xt_iclass_xsr_exccause_stateArgs, 0, 0 },
04148 { 1, Iclass_xt_iclass_rsr_misc0_args,
04149 1, Iclass_xt_iclass_rsr_misc0_stateArgs, 0, 0 },
04150 { 1, Iclass_xt_iclass_wsr_misc0_args,
04151 1, Iclass_xt_iclass_wsr_misc0_stateArgs, 0, 0 },
04152 { 1, Iclass_xt_iclass_xsr_misc0_args,
04153 1, Iclass_xt_iclass_xsr_misc0_stateArgs, 0, 0 },
04154 { 1, Iclass_xt_iclass_rsr_misc1_args,
04155 1, Iclass_xt_iclass_rsr_misc1_stateArgs, 0, 0 },
04156 { 1, Iclass_xt_iclass_wsr_misc1_args,
04157 1, Iclass_xt_iclass_wsr_misc1_stateArgs, 0, 0 },
04158 { 1, Iclass_xt_iclass_xsr_misc1_args,
04159 1, Iclass_xt_iclass_xsr_misc1_stateArgs, 0, 0 },
04160 { 1, Iclass_xt_iclass_rsr_prid_args,
04161 0, 0, 0, 0 },
04162 { 1, Iclass_xt_iclass_rfi_args,
04163 14, Iclass_xt_iclass_rfi_stateArgs, 0, 0 },
04164 { 1, Iclass_xt_iclass_wait_args,
04165 1, Iclass_xt_iclass_wait_stateArgs, 0, 0 },
04166 { 1, Iclass_xt_iclass_rsr_interrupt_args,
04167 1, Iclass_xt_iclass_rsr_interrupt_stateArgs, 0, 0 },
04168 { 1, Iclass_xt_iclass_wsr_intset_args,
04169 2, Iclass_xt_iclass_wsr_intset_stateArgs, 0, 0 },
04170 { 1, Iclass_xt_iclass_wsr_intclear_args,
04171 2, Iclass_xt_iclass_wsr_intclear_stateArgs, 0, 0 },
04172 { 1, Iclass_xt_iclass_rsr_intenable_args,
04173 1, Iclass_xt_iclass_rsr_intenable_stateArgs, 0, 0 },
04174 { 1, Iclass_xt_iclass_wsr_intenable_args,
04175 1, Iclass_xt_iclass_wsr_intenable_stateArgs, 0, 0 },
04176 { 1, Iclass_xt_iclass_xsr_intenable_args,
04177 1, Iclass_xt_iclass_xsr_intenable_stateArgs, 0, 0 },
04178 { 2, Iclass_xt_iclass_break_args,
04179 2, Iclass_xt_iclass_break_stateArgs, 0, 0 },
04180 { 1, Iclass_xt_iclass_break_n_args,
04181 2, Iclass_xt_iclass_break_n_stateArgs, 0, 0 },
04182 { 1, Iclass_xt_iclass_rsr_dbreaka0_args,
04183 1, Iclass_xt_iclass_rsr_dbreaka0_stateArgs, 0, 0 },
04184 { 1, Iclass_xt_iclass_wsr_dbreaka0_args,
04185 2, Iclass_xt_iclass_wsr_dbreaka0_stateArgs, 0, 0 },
04186 { 1, Iclass_xt_iclass_xsr_dbreaka0_args,
04187 2, Iclass_xt_iclass_xsr_dbreaka0_stateArgs, 0, 0 },
04188 { 1, Iclass_xt_iclass_rsr_dbreakc0_args,
04189 1, Iclass_xt_iclass_rsr_dbreakc0_stateArgs, 0, 0 },
04190 { 1, Iclass_xt_iclass_wsr_dbreakc0_args,
04191 2, Iclass_xt_iclass_wsr_dbreakc0_stateArgs, 0, 0 },
04192 { 1, Iclass_xt_iclass_xsr_dbreakc0_args,
04193 2, Iclass_xt_iclass_xsr_dbreakc0_stateArgs, 0, 0 },
04194 { 1, Iclass_xt_iclass_rsr_dbreaka1_args,
04195 1, Iclass_xt_iclass_rsr_dbreaka1_stateArgs, 0, 0 },
04196 { 1, Iclass_xt_iclass_wsr_dbreaka1_args,
04197 2, Iclass_xt_iclass_wsr_dbreaka1_stateArgs, 0, 0 },
04198 { 1, Iclass_xt_iclass_xsr_dbreaka1_args,
04199 2, Iclass_xt_iclass_xsr_dbreaka1_stateArgs, 0, 0 },
04200 { 1, Iclass_xt_iclass_rsr_dbreakc1_args,
04201 1, Iclass_xt_iclass_rsr_dbreakc1_stateArgs, 0, 0 },
04202 { 1, Iclass_xt_iclass_wsr_dbreakc1_args,
04203 2, Iclass_xt_iclass_wsr_dbreakc1_stateArgs, 0, 0 },
04204 { 1, Iclass_xt_iclass_xsr_dbreakc1_args,
04205 2, Iclass_xt_iclass_xsr_dbreakc1_stateArgs, 0, 0 },
04206 { 1, Iclass_xt_iclass_rsr_ibreaka0_args,
04207 1, Iclass_xt_iclass_rsr_ibreaka0_stateArgs, 0, 0 },
04208 { 1, Iclass_xt_iclass_wsr_ibreaka0_args,
04209 1, Iclass_xt_iclass_wsr_ibreaka0_stateArgs, 0, 0 },
04210 { 1, Iclass_xt_iclass_xsr_ibreaka0_args,
04211 1, Iclass_xt_iclass_xsr_ibreaka0_stateArgs, 0, 0 },
04212 { 1, Iclass_xt_iclass_rsr_ibreaka1_args,
04213 1, Iclass_xt_iclass_rsr_ibreaka1_stateArgs, 0, 0 },
04214 { 1, Iclass_xt_iclass_wsr_ibreaka1_args,
04215 1, Iclass_xt_iclass_wsr_ibreaka1_stateArgs, 0, 0 },
04216 { 1, Iclass_xt_iclass_xsr_ibreaka1_args,
04217 1, Iclass_xt_iclass_xsr_ibreaka1_stateArgs, 0, 0 },
04218 { 1, Iclass_xt_iclass_rsr_ibreakenable_args,
04219 1, Iclass_xt_iclass_rsr_ibreakenable_stateArgs, 0, 0 },
04220 { 1, Iclass_xt_iclass_wsr_ibreakenable_args,
04221 1, Iclass_xt_iclass_wsr_ibreakenable_stateArgs, 0, 0 },
04222 { 1, Iclass_xt_iclass_xsr_ibreakenable_args,
04223 1, Iclass_xt_iclass_xsr_ibreakenable_stateArgs, 0, 0 },
04224 { 1, Iclass_xt_iclass_rsr_debugcause_args,
04225 2, Iclass_xt_iclass_rsr_debugcause_stateArgs, 0, 0 },
04226 { 1, Iclass_xt_iclass_wsr_debugcause_args,
04227 2, Iclass_xt_iclass_wsr_debugcause_stateArgs, 0, 0 },
04228 { 1, Iclass_xt_iclass_xsr_debugcause_args,
04229 2, Iclass_xt_iclass_xsr_debugcause_stateArgs, 0, 0 },
04230 { 1, Iclass_xt_iclass_rsr_icount_args,
04231 1, Iclass_xt_iclass_rsr_icount_stateArgs, 0, 0 },
04232 { 1, Iclass_xt_iclass_wsr_icount_args,
04233 2, Iclass_xt_iclass_wsr_icount_stateArgs, 0, 0 },
04234 { 1, Iclass_xt_iclass_xsr_icount_args,
04235 2, Iclass_xt_iclass_xsr_icount_stateArgs, 0, 0 },
04236 { 1, Iclass_xt_iclass_rsr_icountlevel_args,
04237 1, Iclass_xt_iclass_rsr_icountlevel_stateArgs, 0, 0 },
04238 { 1, Iclass_xt_iclass_wsr_icountlevel_args,
04239 1, Iclass_xt_iclass_wsr_icountlevel_stateArgs, 0, 0 },
04240 { 1, Iclass_xt_iclass_xsr_icountlevel_args,
04241 1, Iclass_xt_iclass_xsr_icountlevel_stateArgs, 0, 0 },
04242 { 1, Iclass_xt_iclass_rsr_ddr_args,
04243 1, Iclass_xt_iclass_rsr_ddr_stateArgs, 0, 0 },
04244 { 1, Iclass_xt_iclass_wsr_ddr_args,
04245 2, Iclass_xt_iclass_wsr_ddr_stateArgs, 0, 0 },
04246 { 1, Iclass_xt_iclass_xsr_ddr_args,
04247 2, Iclass_xt_iclass_xsr_ddr_stateArgs, 0, 0 },
04248 { 0, 0 ,
04249 9, Iclass_xt_iclass_rfdo_stateArgs, 0, 0 },
04250 { 0, 0 ,
04251 1, Iclass_xt_iclass_rfdd_stateArgs, 0, 0 },
04252 { 1, Iclass_xt_iclass_rsr_ccount_args,
04253 1, Iclass_xt_iclass_rsr_ccount_stateArgs, 0, 0 },
04254 { 1, Iclass_xt_iclass_wsr_ccount_args,
04255 2, Iclass_xt_iclass_wsr_ccount_stateArgs, 0, 0 },
04256 { 1, Iclass_xt_iclass_xsr_ccount_args,
04257 2, Iclass_xt_iclass_xsr_ccount_stateArgs, 0, 0 },
04258 { 1, Iclass_xt_iclass_rsr_ccompare0_args,
04259 1, Iclass_xt_iclass_rsr_ccompare0_stateArgs, 0, 0 },
04260 { 1, Iclass_xt_iclass_wsr_ccompare0_args,
04261 2, Iclass_xt_iclass_wsr_ccompare0_stateArgs, 0, 0 },
04262 { 1, Iclass_xt_iclass_xsr_ccompare0_args,
04263 2, Iclass_xt_iclass_xsr_ccompare0_stateArgs, 0, 0 },
04264 { 1, Iclass_xt_iclass_rsr_ccompare1_args,
04265 1, Iclass_xt_iclass_rsr_ccompare1_stateArgs, 0, 0 },
04266 { 1, Iclass_xt_iclass_wsr_ccompare1_args,
04267 2, Iclass_xt_iclass_wsr_ccompare1_stateArgs, 0, 0 },
04268 { 1, Iclass_xt_iclass_xsr_ccompare1_args,
04269 2, Iclass_xt_iclass_xsr_ccompare1_stateArgs, 0, 0 },
04270 { 1, Iclass_xt_iclass_rsr_ccompare2_args,
04271 1, Iclass_xt_iclass_rsr_ccompare2_stateArgs, 0, 0 },
04272 { 1, Iclass_xt_iclass_wsr_ccompare2_args,
04273 2, Iclass_xt_iclass_wsr_ccompare2_stateArgs, 0, 0 },
04274 { 1, Iclass_xt_iclass_xsr_ccompare2_args,
04275 2, Iclass_xt_iclass_xsr_ccompare2_stateArgs, 0, 0 },
04276 { 2, Iclass_xt_iclass_icache_args,
04277 0, 0, 0, 0 },
04278 { 2, Iclass_xt_iclass_icache_inv_args,
04279 0, 0, 0, 0 },
04280 { 2, Iclass_xt_iclass_licx_args,
04281 0, 0, 0, 0 },
04282 { 2, Iclass_xt_iclass_sicx_args,
04283 0, 0, 0, 0 },
04284 { 2, Iclass_xt_iclass_dcache_args,
04285 0, 0, 0, 0 },
04286 { 2, Iclass_xt_iclass_dcache_ind_args,
04287 0, 0, 0, 0 },
04288 { 2, Iclass_xt_iclass_dcache_inv_args,
04289 0, 0, 0, 0 },
04290 { 2, Iclass_xt_iclass_dpf_args,
04291 0, 0, 0, 0 },
04292 { 2, Iclass_xt_iclass_sdct_args,
04293 0, 0, 0, 0 },
04294 { 2, Iclass_xt_iclass_ldct_args,
04295 0, 0, 0, 0 },
04296 { 1, Iclass_xt_iclass_idtlb_args,
04297 1, Iclass_xt_iclass_idtlb_stateArgs, 0, 0 },
04298 { 2, Iclass_xt_iclass_rdtlb_args,
04299 0, 0, 0, 0 },
04300 { 2, Iclass_xt_iclass_wdtlb_args,
04301 1, Iclass_xt_iclass_wdtlb_stateArgs, 0, 0 },
04302 { 1, Iclass_xt_iclass_iitlb_args,
04303 0, 0, 0, 0 },
04304 { 2, Iclass_xt_iclass_ritlb_args,
04305 0, 0, 0, 0 },
04306 { 2, Iclass_xt_iclass_witlb_args,
04307 0, 0, 0, 0 },
04308 { 2, Iclass_xt_iclass_nsa_args,
04309 0, 0, 0, 0 }
04310 };
04311
04312
04313
04314
04315 static void
04316 Opcode_excw_Slot_inst_encode (xtensa_insnbuf slotbuf)
04317 {
04318 slotbuf[0] = 0x80200;
04319 }
04320
04321 static void
04322 Opcode_rfe_Slot_inst_encode (xtensa_insnbuf slotbuf)
04323 {
04324 slotbuf[0] = 0x300;
04325 }
04326
04327 static void
04328 Opcode_rfde_Slot_inst_encode (xtensa_insnbuf slotbuf)
04329 {
04330 slotbuf[0] = 0x2300;
04331 }
04332
04333 static void
04334 Opcode_syscall_Slot_inst_encode (xtensa_insnbuf slotbuf)
04335 {
04336 slotbuf[0] = 0x500;
04337 }
04338
04339 static void
04340 Opcode_simcall_Slot_inst_encode (xtensa_insnbuf slotbuf)
04341 {
04342 slotbuf[0] = 0x1500;
04343 }
04344
04345 static void
04346 Opcode_call12_Slot_inst_encode (xtensa_insnbuf slotbuf)
04347 {
04348 slotbuf[0] = 0x5c0000;
04349 }
04350
04351 static void
04352 Opcode_call8_Slot_inst_encode (xtensa_insnbuf slotbuf)
04353 {
04354 slotbuf[0] = 0x580000;
04355 }
04356
04357 static void
04358 Opcode_call4_Slot_inst_encode (xtensa_insnbuf slotbuf)
04359 {
04360 slotbuf[0] = 0x540000;
04361 }
04362
04363 static void
04364 Opcode_callx12_Slot_inst_encode (xtensa_insnbuf slotbuf)
04365 {
04366 slotbuf[0] = 0xf0000;
04367 }
04368
04369 static void
04370 Opcode_callx8_Slot_inst_encode (xtensa_insnbuf slotbuf)
04371 {
04372 slotbuf[0] = 0xb0000;
04373 }
04374
04375 static void
04376 Opcode_callx4_Slot_inst_encode (xtensa_insnbuf slotbuf)
04377 {
04378 slotbuf[0] = 0x70000;
04379 }
04380
04381 static void
04382 Opcode_entry_Slot_inst_encode (xtensa_insnbuf slotbuf)
04383 {
04384 slotbuf[0] = 0x6c0000;
04385 }
04386
04387 static void
04388 Opcode_movsp_Slot_inst_encode (xtensa_insnbuf slotbuf)
04389 {
04390 slotbuf[0] = 0x100;
04391 }
04392
04393 static void
04394 Opcode_rotw_Slot_inst_encode (xtensa_insnbuf slotbuf)
04395 {
04396 slotbuf[0] = 0x804;
04397 }
04398
04399 static void
04400 Opcode_retw_Slot_inst_encode (xtensa_insnbuf slotbuf)
04401 {
04402 slotbuf[0] = 0x60000;
04403 }
04404
04405 static void
04406 Opcode_retw_n_Slot_inst16b_encode (xtensa_insnbuf slotbuf)
04407 {
04408 slotbuf[0] = 0xd10f;
04409 }
04410
04411 static void
04412 Opcode_rfwo_Slot_inst_encode (xtensa_insnbuf slotbuf)
04413 {
04414 slotbuf[0] = 0x4300;
04415 }
04416
04417 static void
04418 Opcode_rfwu_Slot_inst_encode (xtensa_insnbuf slotbuf)
04419 {
04420 slotbuf[0] = 0x5300;
04421 }
04422
04423 static void
04424 Opcode_l32e_Slot_inst_encode (xtensa_insnbuf slotbuf)
04425 {
04426 slotbuf[0] = 0x90;
04427 }
04428
04429 static void
04430 Opcode_s32e_Slot_inst_encode (xtensa_insnbuf slotbuf)
04431 {
04432 slotbuf[0] = 0x94;
04433 }
04434
04435 static void
04436 Opcode_rsr_windowbase_Slot_inst_encode (xtensa_insnbuf slotbuf)
04437 {
04438 slotbuf[0] = 0x4830;
04439 }
04440
04441 static void
04442 Opcode_wsr_windowbase_Slot_inst_encode (xtensa_insnbuf slotbuf)
04443 {
04444 slotbuf[0] = 0x4831;
04445 }
04446
04447 static void
04448 Opcode_xsr_windowbase_Slot_inst_encode (xtensa_insnbuf slotbuf)
04449 {
04450 slotbuf[0] = 0x4816;
04451 }
04452
04453 static void
04454 Opcode_rsr_windowstart_Slot_inst_encode (xtensa_insnbuf slotbuf)
04455 {
04456 slotbuf[0] = 0x4930;
04457 }
04458
04459 static void
04460 Opcode_wsr_windowstart_Slot_inst_encode (xtensa_insnbuf slotbuf)
04461 {
04462 slotbuf[0] = 0x4931;
04463 }
04464
04465 static void
04466 Opcode_xsr_windowstart_Slot_inst_encode (xtensa_insnbuf slotbuf)
04467 {
04468 slotbuf[0] = 0x4916;
04469 }
04470
04471 static void
04472 Opcode_add_n_Slot_inst16a_encode (xtensa_insnbuf slotbuf)
04473 {
04474 slotbuf[0] = 0xa000;
04475 }
04476
04477 static void
04478 Opcode_addi_n_Slot_inst16a_encode (xtensa_insnbuf slotbuf)
04479 {
04480 slotbuf[0] = 0xb000;
04481 }
04482
04483 static void
04484 Opcode_beqz_n_Slot_inst16b_encode (xtensa_insnbuf slotbuf)
04485 {
04486 slotbuf[0] = 0xc800;
04487 }
04488
04489 static void
04490 Opcode_bnez_n_Slot_inst16b_encode (xtensa_insnbuf slotbuf)
04491 {
04492 slotbuf[0] = 0xcc00;
04493 }
04494
04495 static void
04496 Opcode_ill_n_Slot_inst16b_encode (xtensa_insnbuf slotbuf)
04497 {
04498 slotbuf[0] = 0xd60f;
04499 }
04500
04501 static void
04502 Opcode_l32i_n_Slot_inst16a_encode (xtensa_insnbuf slotbuf)
04503 {
04504 slotbuf[0] = 0x8000;
04505 }
04506
04507 static void
04508 Opcode_mov_n_Slot_inst16b_encode (xtensa_insnbuf slotbuf)
04509 {
04510 slotbuf[0] = 0xd000;
04511 }
04512
04513 static void
04514 Opcode_movi_n_Slot_inst16b_encode (xtensa_insnbuf slotbuf)
04515 {
04516 slotbuf[0] = 0xc000;
04517 }
04518
04519 static void
04520 Opcode_nop_n_Slot_inst16b_encode (xtensa_insnbuf slotbuf)
04521 {
04522 slotbuf[0] = 0xd30f;
04523 }
04524
04525 static void
04526 Opcode_ret_n_Slot_inst16b_encode (xtensa_insnbuf slotbuf)
04527 {
04528 slotbuf[0] = 0xd00f;
04529 }
04530
04531 static void
04532 Opcode_s32i_n_Slot_inst16a_encode (xtensa_insnbuf slotbuf)
04533 {
04534 slotbuf[0] = 0x9000;
04535 }
04536
04537 static void
04538 Opcode_addi_Slot_inst_encode (xtensa_insnbuf slotbuf)
04539 {
04540 slotbuf[0] = 0x200c00;
04541 }
04542
04543 static void
04544 Opcode_addmi_Slot_inst_encode (xtensa_insnbuf slotbuf)
04545 {
04546 slotbuf[0] = 0x200d00;
04547 }
04548
04549 static void
04550 Opcode_add_Slot_inst_encode (xtensa_insnbuf slotbuf)
04551 {
04552 slotbuf[0] = 0x8;
04553 }
04554
04555 static void
04556 Opcode_sub_Slot_inst_encode (xtensa_insnbuf slotbuf)
04557 {
04558 slotbuf[0] = 0xc;
04559 }
04560
04561 static void
04562 Opcode_addx2_Slot_inst_encode (xtensa_insnbuf slotbuf)
04563 {
04564 slotbuf[0] = 0x9;
04565 }
04566
04567 static void
04568 Opcode_addx4_Slot_inst_encode (xtensa_insnbuf slotbuf)
04569 {
04570 slotbuf[0] = 0xa;
04571 }
04572
04573 static void
04574 Opcode_addx8_Slot_inst_encode (xtensa_insnbuf slotbuf)
04575 {
04576 slotbuf[0] = 0xb;
04577 }
04578
04579 static void
04580 Opcode_subx2_Slot_inst_encode (xtensa_insnbuf slotbuf)
04581 {
04582 slotbuf[0] = 0xd;
04583 }
04584
04585 static void
04586 Opcode_subx4_Slot_inst_encode (xtensa_insnbuf slotbuf)
04587 {
04588 slotbuf[0] = 0xe;
04589 }
04590
04591 static void
04592 Opcode_subx8_Slot_inst_encode (xtensa_insnbuf slotbuf)
04593 {
04594 slotbuf[0] = 0xf;
04595 }
04596
04597 static void
04598 Opcode_and_Slot_inst_encode (xtensa_insnbuf slotbuf)
04599 {
04600 slotbuf[0] = 0x1;
04601 }
04602
04603 static void
04604 Opcode_or_Slot_inst_encode (xtensa_insnbuf slotbuf)
04605 {
04606 slotbuf[0] = 0x2;
04607 }
04608
04609 static void
04610 Opcode_xor_Slot_inst_encode (xtensa_insnbuf slotbuf)
04611 {
04612 slotbuf[0] = 0x3;
04613 }
04614
04615 static void
04616 Opcode_beqi_Slot_inst_encode (xtensa_insnbuf slotbuf)
04617 {
04618 slotbuf[0] = 0x680000;
04619 }
04620
04621 static void
04622 Opcode_bnei_Slot_inst_encode (xtensa_insnbuf slotbuf)
04623 {
04624 slotbuf[0] = 0x690000;
04625 }
04626
04627 static void
04628 Opcode_bgei_Slot_inst_encode (xtensa_insnbuf slotbuf)
04629 {
04630 slotbuf[0] = 0x6b0000;
04631 }
04632
04633 static void
04634 Opcode_blti_Slot_inst_encode (xtensa_insnbuf slotbuf)
04635 {
04636 slotbuf[0] = 0x6a0000;
04637 }
04638
04639 static void
04640 Opcode_bbci_Slot_inst_encode (xtensa_insnbuf slotbuf)
04641 {
04642 slotbuf[0] = 0x700600;
04643 }
04644
04645 static void
04646 Opcode_bbsi_Slot_inst_encode (xtensa_insnbuf slotbuf)
04647 {
04648 slotbuf[0] = 0x700e00;
04649 }
04650
04651 static void
04652 Opcode_bgeui_Slot_inst_encode (xtensa_insnbuf slotbuf)
04653 {
04654 slotbuf[0] = 0x6f0000;
04655 }
04656
04657 static void
04658 Opcode_bltui_Slot_inst_encode (xtensa_insnbuf slotbuf)
04659 {
04660 slotbuf[0] = 0x6e0000;
04661 }
04662
04663 static void
04664 Opcode_beq_Slot_inst_encode (xtensa_insnbuf slotbuf)
04665 {
04666 slotbuf[0] = 0x700100;
04667 }
04668
04669 static void
04670 Opcode_bne_Slot_inst_encode (xtensa_insnbuf slotbuf)
04671 {
04672 slotbuf[0] = 0x700900;
04673 }
04674
04675 static void
04676 Opcode_bge_Slot_inst_encode (xtensa_insnbuf slotbuf)
04677 {
04678 slotbuf[0] = 0x700a00;
04679 }
04680
04681 static void
04682 Opcode_blt_Slot_inst_encode (xtensa_insnbuf slotbuf)
04683 {
04684 slotbuf[0] = 0x700200;
04685 }
04686
04687 static void
04688 Opcode_bgeu_Slot_inst_encode (xtensa_insnbuf slotbuf)
04689 {
04690 slotbuf[0] = 0x700b00;
04691 }
04692
04693 static void
04694 Opcode_bltu_Slot_inst_encode (xtensa_insnbuf slotbuf)
04695 {
04696 slotbuf[0] = 0x700300;
04697 }
04698
04699 static void
04700 Opcode_bany_Slot_inst_encode (xtensa_insnbuf slotbuf)
04701 {
04702 slotbuf[0] = 0x700800;
04703 }
04704
04705 static void
04706 Opcode_bnone_Slot_inst_encode (xtensa_insnbuf slotbuf)
04707 {
04708 slotbuf[0] = 0x700000;
04709 }
04710
04711 static void
04712 Opcode_ball_Slot_inst_encode (xtensa_insnbuf slotbuf)
04713 {
04714 slotbuf[0] = 0x700400;
04715 }
04716
04717 static void
04718 Opcode_bnall_Slot_inst_encode (xtensa_insnbuf slotbuf)
04719 {
04720 slotbuf[0] = 0x700c00;
04721 }
04722
04723 static void
04724 Opcode_bbc_Slot_inst_encode (xtensa_insnbuf slotbuf)
04725 {
04726 slotbuf[0] = 0x700500;
04727 }
04728
04729 static void
04730 Opcode_bbs_Slot_inst_encode (xtensa_insnbuf slotbuf)
04731 {
04732 slotbuf[0] = 0x700d00;
04733 }
04734
04735 static void
04736 Opcode_beqz_Slot_inst_encode (xtensa_insnbuf slotbuf)
04737 {
04738 slotbuf[0] = 0x640000;
04739 }
04740
04741 static void
04742 Opcode_bnez_Slot_inst_encode (xtensa_insnbuf slotbuf)
04743 {
04744 slotbuf[0] = 0x650000;
04745 }
04746
04747 static void
04748 Opcode_bgez_Slot_inst_encode (xtensa_insnbuf slotbuf)
04749 {
04750 slotbuf[0] = 0x670000;
04751 }
04752
04753 static void
04754 Opcode_bltz_Slot_inst_encode (xtensa_insnbuf slotbuf)
04755 {
04756 slotbuf[0] = 0x660000;
04757 }
04758
04759 static void
04760 Opcode_call0_Slot_inst_encode (xtensa_insnbuf slotbuf)
04761 {
04762 slotbuf[0] = 0x500000;
04763 }
04764
04765 static void
04766 Opcode_callx0_Slot_inst_encode (xtensa_insnbuf slotbuf)
04767 {
04768 slotbuf[0] = 0x30000;
04769 }
04770
04771 static void
04772 Opcode_extui_Slot_inst_encode (xtensa_insnbuf slotbuf)
04773 {
04774 slotbuf[0] = 0x40;
04775 }
04776
04777 static void
04778 Opcode_ill_Slot_inst_encode (xtensa_insnbuf slotbuf)
04779 {
04780 slotbuf[0] = 0;
04781 }
04782
04783 static void
04784 Opcode_j_Slot_inst_encode (xtensa_insnbuf slotbuf)
04785 {
04786 slotbuf[0] = 0x600000;
04787 }
04788
04789 static void
04790 Opcode_jx_Slot_inst_encode (xtensa_insnbuf slotbuf)
04791 {
04792 slotbuf[0] = 0xa0000;
04793 }
04794
04795 static void
04796 Opcode_l16ui_Slot_inst_encode (xtensa_insnbuf slotbuf)
04797 {
04798 slotbuf[0] = 0x200100;
04799 }
04800
04801 static void
04802 Opcode_l16si_Slot_inst_encode (xtensa_insnbuf slotbuf)
04803 {
04804 slotbuf[0] = 0x200900;
04805 }
04806
04807 static void
04808 Opcode_l32i_Slot_inst_encode (xtensa_insnbuf slotbuf)
04809 {
04810 slotbuf[0] = 0x200200;
04811 }
04812
04813 static void
04814 Opcode_l32r_Slot_inst_encode (xtensa_insnbuf slotbuf)
04815 {
04816 slotbuf[0] = 0x100000;
04817 }
04818
04819 static void
04820 Opcode_l8ui_Slot_inst_encode (xtensa_insnbuf slotbuf)
04821 {
04822 slotbuf[0] = 0x200000;
04823 }
04824
04825 static void
04826 Opcode_loop_Slot_inst_encode (xtensa_insnbuf slotbuf)
04827 {
04828 slotbuf[0] = 0x6d0800;
04829 }
04830
04831 static void
04832 Opcode_loopnez_Slot_inst_encode (xtensa_insnbuf slotbuf)
04833 {
04834 slotbuf[0] = 0x6d0900;
04835 }
04836
04837 static void
04838 Opcode_loopgtz_Slot_inst_encode (xtensa_insnbuf slotbuf)
04839 {
04840 slotbuf[0] = 0x6d0a00;
04841 }
04842
04843 static void
04844 Opcode_movi_Slot_inst_encode (xtensa_insnbuf slotbuf)
04845 {
04846 slotbuf[0] = 0x200a00;
04847 }
04848
04849 static void
04850 Opcode_moveqz_Slot_inst_encode (xtensa_insnbuf slotbuf)
04851 {
04852 slotbuf[0] = 0x38;
04853 }
04854
04855 static void
04856 Opcode_movnez_Slot_inst_encode (xtensa_insnbuf slotbuf)
04857 {
04858 slotbuf[0] = 0x39;
04859 }
04860
04861 static void
04862 Opcode_movltz_Slot_inst_encode (xtensa_insnbuf slotbuf)
04863 {
04864 slotbuf[0] = 0x3a;
04865 }
04866
04867 static void
04868 Opcode_movgez_Slot_inst_encode (xtensa_insnbuf slotbuf)
04869 {
04870 slotbuf[0] = 0x3b;
04871 }
04872
04873 static void
04874 Opcode_neg_Slot_inst_encode (xtensa_insnbuf slotbuf)
04875 {
04876 slotbuf[0] = 0x6;
04877 }
04878
04879 static void
04880 Opcode_abs_Slot_inst_encode (xtensa_insnbuf slotbuf)
04881 {
04882 slotbuf[0] = 0x1006;
04883 }
04884
04885 static void
04886 Opcode_nop_Slot_inst_encode (xtensa_insnbuf slotbuf)
04887 {
04888 slotbuf[0] = 0xf0200;
04889 }
04890
04891 static void
04892 Opcode_ret_Slot_inst_encode (xtensa_insnbuf slotbuf)
04893 {
04894 slotbuf[0] = 0x20000;
04895 }
04896
04897 static void
04898 Opcode_s16i_Slot_inst_encode (xtensa_insnbuf slotbuf)
04899 {
04900 slotbuf[0] = 0x200500;
04901 }
04902
04903 static void
04904 Opcode_s32i_Slot_inst_encode (xtensa_insnbuf slotbuf)
04905 {
04906 slotbuf[0] = 0x200600;
04907 }
04908
04909 static void
04910 Opcode_s8i_Slot_inst_encode (xtensa_insnbuf slotbuf)
04911 {
04912 slotbuf[0] = 0x200400;
04913 }
04914
04915 static void
04916 Opcode_ssr_Slot_inst_encode (xtensa_insnbuf slotbuf)
04917 {
04918 slotbuf[0] = 0x4;
04919 }
04920
04921 static void
04922 Opcode_ssl_Slot_inst_encode (xtensa_insnbuf slotbuf)
04923 {
04924 slotbuf[0] = 0x104;
04925 }
04926
04927 static void
04928 Opcode_ssa8l_Slot_inst_encode (xtensa_insnbuf slotbuf)
04929 {
04930 slotbuf[0] = 0x204;
04931 }
04932
04933 static void
04934 Opcode_ssa8b_Slot_inst_encode (xtensa_insnbuf slotbuf)
04935 {
04936 slotbuf[0] = 0x304;
04937 }
04938
04939 static void
04940 Opcode_ssai_Slot_inst_encode (xtensa_insnbuf slotbuf)
04941 {
04942 slotbuf[0] = 0x404;
04943 }
04944
04945 static void
04946 Opcode_sll_Slot_inst_encode (xtensa_insnbuf slotbuf)
04947 {
04948 slotbuf[0] = 0x1a;
04949 }
04950
04951 static void
04952 Opcode_src_Slot_inst_encode (xtensa_insnbuf slotbuf)
04953 {
04954 slotbuf[0] = 0x18;
04955 }
04956
04957 static void
04958 Opcode_srl_Slot_inst_encode (xtensa_insnbuf slotbuf)
04959 {
04960 slotbuf[0] = 0x19;
04961 }
04962
04963 static void
04964 Opcode_sra_Slot_inst_encode (xtensa_insnbuf slotbuf)
04965 {
04966 slotbuf[0] = 0x1b;
04967 }
04968
04969 static void
04970 Opcode_slli_Slot_inst_encode (xtensa_insnbuf slotbuf)
04971 {
04972 slotbuf[0] = 0x10;
04973 }
04974
04975 static void
04976 Opcode_srai_Slot_inst_encode (xtensa_insnbuf slotbuf)
04977 {
04978 slotbuf[0] = 0x12;
04979 }
04980
04981 static void
04982 Opcode_srli_Slot_inst_encode (xtensa_insnbuf slotbuf)
04983 {
04984 slotbuf[0] = 0x14;
04985 }
04986
04987 static void
04988 Opcode_memw_Slot_inst_encode (xtensa_insnbuf slotbuf)
04989 {
04990 slotbuf[0] = 0xc0200;
04991 }
04992
04993 static void
04994 Opcode_extw_Slot_inst_encode (xtensa_insnbuf slotbuf)
04995 {
04996 slotbuf[0] = 0xd0200;
04997 }
04998
04999 static void
05000 Opcode_isync_Slot_inst_encode (xtensa_insnbuf slotbuf)
05001 {
05002 slotbuf[0] = 0x200;
05003 }
05004
05005 static void
05006 Opcode_rsync_Slot_inst_encode (xtensa_insnbuf slotbuf)
05007 {
05008 slotbuf[0] = 0x10200;
05009 }
05010
05011 static void
05012 Opcode_esync_Slot_inst_encode (xtensa_insnbuf slotbuf)
05013 {
05014 slotbuf[0] = 0x20200;
05015 }
05016
05017 static void
05018 Opcode_dsync_Slot_inst_encode (xtensa_insnbuf slotbuf)
05019 {
05020 slotbuf[0] = 0x30200;
05021 }
05022
05023 static void
05024 Opcode_rsil_Slot_inst_encode (xtensa_insnbuf slotbuf)
05025 {
05026 slotbuf[0] = 0x600;
05027 }
05028
05029 static void
05030 Opcode_rsr_lend_Slot_inst_encode (xtensa_insnbuf slotbuf)
05031 {
05032 slotbuf[0] = 0x130;
05033 }
05034
05035 static void
05036 Opcode_wsr_lend_Slot_inst_encode (xtensa_insnbuf slotbuf)
05037 {
05038 slotbuf[0] = 0x131;
05039 }
05040
05041 static void
05042 Opcode_xsr_lend_Slot_inst_encode (xtensa_insnbuf slotbuf)
05043 {
05044 slotbuf[0] = 0x116;
05045 }
05046
05047 static void
05048 Opcode_rsr_lcount_Slot_inst_encode (xtensa_insnbuf slotbuf)
05049 {
05050 slotbuf[0] = 0x230;
05051 }
05052
05053 static void
05054 Opcode_wsr_lcount_Slot_inst_encode (xtensa_insnbuf slotbuf)
05055 {
05056 slotbuf[0] = 0x231;
05057 }
05058
05059 static void
05060 Opcode_xsr_lcount_Slot_inst_encode (xtensa_insnbuf slotbuf)
05061 {
05062 slotbuf[0] = 0x216;
05063 }
05064
05065 static void
05066 Opcode_rsr_lbeg_Slot_inst_encode (xtensa_insnbuf slotbuf)
05067 {
05068 slotbuf[0] = 0x30;
05069 }
05070
05071 static void
05072 Opcode_wsr_lbeg_Slot_inst_encode (xtensa_insnbuf slotbuf)
05073 {
05074 slotbuf[0] = 0x31;
05075 }
05076
05077 static void
05078 Opcode_xsr_lbeg_Slot_inst_encode (xtensa_insnbuf slotbuf)
05079 {
05080 slotbuf[0] = 0x16;
05081 }
05082
05083 static void
05084 Opcode_rsr_sar_Slot_inst_encode (xtensa_insnbuf slotbuf)
05085 {
05086 slotbuf[0] = 0x330;
05087 }
05088
05089 static void
05090 Opcode_wsr_sar_Slot_inst_encode (xtensa_insnbuf slotbuf)
05091 {
05092 slotbuf[0] = 0x331;
05093 }
05094
05095 static void
05096 Opcode_xsr_sar_Slot_inst_encode (xtensa_insnbuf slotbuf)
05097 {
05098 slotbuf[0] = 0x316;
05099 }
05100
05101 static void
05102 Opcode_rsr_litbase_Slot_inst_encode (xtensa_insnbuf slotbuf)
05103 {
05104 slotbuf[0] = 0x530;
05105 }
05106
05107 static void
05108 Opcode_wsr_litbase_Slot_inst_encode (xtensa_insnbuf slotbuf)
05109 {
05110 slotbuf[0] = 0x531;
05111 }
05112
05113 static void
05114 Opcode_xsr_litbase_Slot_inst_encode (xtensa_insnbuf slotbuf)
05115 {
05116 slotbuf[0] = 0x516;
05117 }
05118
05119 static void
05120 Opcode_rsr_176_Slot_inst_encode (xtensa_insnbuf slotbuf)
05121 {
05122 slotbuf[0] = 0xb030;
05123 }
05124
05125 static void
05126 Opcode_rsr_208_Slot_inst_encode (xtensa_insnbuf slotbuf)
05127 {
05128 slotbuf[0] = 0xd030;
05129 }
05130
05131 static void
05132 Opcode_rsr_ps_Slot_inst_encode (xtensa_insnbuf slotbuf)
05133 {
05134 slotbuf[0] = 0xe630;
05135 }
05136
05137 static void
05138 Opcode_wsr_ps_Slot_inst_encode (xtensa_insnbuf slotbuf)
05139 {
05140 slotbuf[0] = 0xe631;
05141 }
05142
05143 static void
05144 Opcode_xsr_ps_Slot_inst_encode (xtensa_insnbuf slotbuf)
05145 {
05146 slotbuf[0] = 0xe616;
05147 }
05148
05149 static void
05150 Opcode_rsr_epc1_Slot_inst_encode (xtensa_insnbuf slotbuf)
05151 {
05152 slotbuf[0] = 0xb130;
05153 }
05154
05155 static void
05156 Opcode_wsr_epc1_Slot_inst_encode (xtensa_insnbuf slotbuf)
05157 {
05158 slotbuf[0] = 0xb131;
05159 }
05160
05161 static void
05162 Opcode_xsr_epc1_Slot_inst_encode (xtensa_insnbuf slotbuf)
05163 {
05164 slotbuf[0] = 0xb116;
05165 }
05166
05167 static void
05168 Opcode_rsr_excsave1_Slot_inst_encode (xtensa_insnbuf slotbuf)
05169 {
05170 slotbuf[0] = 0xd130;
05171 }
05172
05173 static void
05174 Opcode_wsr_excsave1_Slot_inst_encode (xtensa_insnbuf slotbuf)
05175 {
05176 slotbuf[0] = 0xd131;
05177 }
05178
05179 static void
05180 Opcode_xsr_excsave1_Slot_inst_encode (xtensa_insnbuf slotbuf)
05181 {
05182 slotbuf[0] = 0xd116;
05183 }
05184
05185 static void
05186 Opcode_rsr_epc2_Slot_inst_encode (xtensa_insnbuf slotbuf)
05187 {
05188 slotbuf[0] = 0xb230;
05189 }
05190
05191 static void
05192 Opcode_wsr_epc2_Slot_inst_encode (xtensa_insnbuf slotbuf)
05193 {
05194 slotbuf[0] = 0xb231;
05195 }
05196
05197 static void
05198 Opcode_xsr_epc2_Slot_inst_encode (xtensa_insnbuf slotbuf)
05199 {
05200 slotbuf[0] = 0xb216;
05201 }
05202
05203 static void
05204 Opcode_rsr_excsave2_Slot_inst_encode (xtensa_insnbuf slotbuf)
05205 {
05206 slotbuf[0] = 0xd230;
05207 }
05208
05209 static void
05210 Opcode_wsr_excsave2_Slot_inst_encode (xtensa_insnbuf slotbuf)
05211 {
05212 slotbuf[0] = 0xd231;
05213 }
05214
05215 static void
05216 Opcode_xsr_excsave2_Slot_inst_encode (xtensa_insnbuf slotbuf)
05217 {
05218 slotbuf[0] = 0xd216;
05219 }
05220
05221 static void
05222 Opcode_rsr_epc3_Slot_inst_encode (xtensa_insnbuf slotbuf)
05223 {
05224 slotbuf[0] = 0xb330;
05225 }
05226
05227 static void
05228 Opcode_wsr_epc3_Slot_inst_encode (xtensa_insnbuf slotbuf)
05229 {
05230 slotbuf[0] = 0xb331;
05231 }
05232
05233 static void
05234 Opcode_xsr_epc3_Slot_inst_encode (xtensa_insnbuf slotbuf)
05235 {
05236 slotbuf[0] = 0xb316;
05237 }
05238
05239 static void
05240 Opcode_rsr_excsave3_Slot_inst_encode (xtensa_insnbuf slotbuf)
05241 {
05242 slotbuf[0] = 0xd330;
05243 }
05244
05245 static void
05246 Opcode_wsr_excsave3_Slot_inst_encode (xtensa_insnbuf slotbuf)
05247 {
05248 slotbuf[0] = 0xd331;
05249 }
05250
05251 static void
05252 Opcode_xsr_excsave3_Slot_inst_encode (xtensa_insnbuf slotbuf)
05253 {
05254 slotbuf[0] = 0xd316;
05255 }
05256
05257 static void
05258 Opcode_rsr_epc4_Slot_inst_encode (xtensa_insnbuf slotbuf)
05259 {
05260 slotbuf[0] = 0xb430;
05261 }
05262
05263 static void
05264 Opcode_wsr_epc4_Slot_inst_encode (xtensa_insnbuf slotbuf)
05265 {
05266 slotbuf[0] = 0xb431;
05267 }
05268
05269 static void
05270 Opcode_xsr_epc4_Slot_inst_encode (xtensa_insnbuf slotbuf)
05271 {
05272 slotbuf[0] = 0xb416;
05273 }
05274
05275 static void
05276 Opcode_rsr_excsave4_Slot_inst_encode (xtensa_insnbuf slotbuf)
05277 {
05278 slotbuf[0] = 0xd430;
05279 }
05280
05281 static void
05282 Opcode_wsr_excsave4_Slot_inst_encode (xtensa_insnbuf slotbuf)
05283 {
05284 slotbuf[0] = 0xd431;
05285 }
05286
05287 static void
05288 Opcode_xsr_excsave4_Slot_inst_encode (xtensa_insnbuf slotbuf)
05289 {
05290 slotbuf[0] = 0xd416;
05291 }
05292
05293 static void
05294 Opcode_rsr_eps2_Slot_inst_encode (xtensa_insnbuf slotbuf)
05295 {
05296 slotbuf[0] = 0xc230;
05297 }
05298
05299 static void
05300 Opcode_wsr_eps2_Slot_inst_encode (xtensa_insnbuf slotbuf)
05301 {
05302 slotbuf[0] = 0xc231;
05303 }
05304
05305 static void
05306 Opcode_xsr_eps2_Slot_inst_encode (xtensa_insnbuf slotbuf)
05307 {
05308 slotbuf[0] = 0xc216;
05309 }
05310
05311 static void
05312 Opcode_rsr_eps3_Slot_inst_encode (xtensa_insnbuf slotbuf)
05313 {
05314 slotbuf[0] = 0xc330;
05315 }
05316
05317 static void
05318 Opcode_wsr_eps3_Slot_inst_encode (xtensa_insnbuf slotbuf)
05319 {
05320 slotbuf[0] = 0xc331;
05321 }
05322
05323 static void
05324 Opcode_xsr_eps3_Slot_inst_encode (xtensa_insnbuf slotbuf)
05325 {
05326 slotbuf[0] = 0xc316;
05327 }
05328
05329 static void
05330 Opcode_rsr_eps4_Slot_inst_encode (xtensa_insnbuf slotbuf)
05331 {
05332 slotbuf[0] = 0xc430;
05333 }
05334
05335 static void
05336 Opcode_wsr_eps4_Slot_inst_encode (xtensa_insnbuf slotbuf)
05337 {
05338 slotbuf[0] = 0xc431;
05339 }
05340
05341 static void
05342 Opcode_xsr_eps4_Slot_inst_encode (xtensa_insnbuf slotbuf)
05343 {
05344 slotbuf[0] = 0xc416;
05345 }
05346
05347 static void
05348 Opcode_rsr_excvaddr_Slot_inst_encode (xtensa_insnbuf slotbuf)
05349 {
05350 slotbuf[0] = 0xee30;
05351 }
05352
05353 static void
05354 Opcode_wsr_excvaddr_Slot_inst_encode (xtensa_insnbuf slotbuf)
05355 {
05356 slotbuf[0] = 0xee31;
05357 }
05358
05359 static void
05360 Opcode_xsr_excvaddr_Slot_inst_encode (xtensa_insnbuf slotbuf)
05361 {
05362 slotbuf[0] = 0xee16;
05363 }
05364
05365 static void
05366 Opcode_rsr_depc_Slot_inst_encode (xtensa_insnbuf slotbuf)
05367 {
05368 slotbuf[0] = 0xc030;
05369 }
05370
05371 static void
05372 Opcode_wsr_depc_Slot_inst_encode (xtensa_insnbuf slotbuf)
05373 {
05374 slotbuf[0] = 0xc031;
05375 }
05376
05377 static void
05378 Opcode_xsr_depc_Slot_inst_encode (xtensa_insnbuf slotbuf)
05379 {
05380 slotbuf[0] = 0xc016;
05381 }
05382
05383 static void
05384 Opcode_rsr_exccause_Slot_inst_encode (xtensa_insnbuf slotbuf)
05385 {
05386 slotbuf[0] = 0xe830;
05387 }
05388
05389 static void
05390 Opcode_wsr_exccause_Slot_inst_encode (xtensa_insnbuf slotbuf)
05391 {
05392 slotbuf[0] = 0xe831;
05393 }
05394
05395 static void
05396 Opcode_xsr_exccause_Slot_inst_encode (xtensa_insnbuf slotbuf)
05397 {
05398 slotbuf[0] = 0xe816;
05399 }
05400
05401 static void
05402 Opcode_rsr_misc0_Slot_inst_encode (xtensa_insnbuf slotbuf)
05403 {
05404 slotbuf[0] = 0xf430;
05405 }
05406
05407 static void
05408 Opcode_wsr_misc0_Slot_inst_encode (xtensa_insnbuf slotbuf)
05409 {
05410 slotbuf[0] = 0xf431;
05411 }
05412
05413 static void
05414 Opcode_xsr_misc0_Slot_inst_encode (xtensa_insnbuf slotbuf)
05415 {
05416 slotbuf[0] = 0xf416;
05417 }
05418
05419 static void
05420 Opcode_rsr_misc1_Slot_inst_encode (xtensa_insnbuf slotbuf)
05421 {
05422 slotbuf[0] = 0xf530;
05423 }
05424
05425 static void
05426 Opcode_wsr_misc1_Slot_inst_encode (xtensa_insnbuf slotbuf)
05427 {
05428 slotbuf[0] = 0xf531;
05429 }
05430
05431 static void
05432 Opcode_xsr_misc1_Slot_inst_encode (xtensa_insnbuf slotbuf)
05433 {
05434 slotbuf[0] = 0xf516;
05435 }
05436
05437 static void
05438 Opcode_rsr_prid_Slot_inst_encode (xtensa_insnbuf slotbuf)
05439 {
05440 slotbuf[0] = 0xeb30;
05441 }
05442
05443 static void
05444 Opcode_rfi_Slot_inst_encode (xtensa_insnbuf slotbuf)
05445 {
05446 slotbuf[0] = 0x10300;
05447 }
05448
05449 static void
05450 Opcode_waiti_Slot_inst_encode (xtensa_insnbuf slotbuf)
05451 {
05452 slotbuf[0] = 0x700;
05453 }
05454
05455 static void
05456 Opcode_rsr_interrupt_Slot_inst_encode (xtensa_insnbuf slotbuf)
05457 {
05458 slotbuf[0] = 0xe230;
05459 }
05460
05461 static void
05462 Opcode_wsr_intset_Slot_inst_encode (xtensa_insnbuf slotbuf)
05463 {
05464 slotbuf[0] = 0xe231;
05465 }
05466
05467 static void
05468 Opcode_wsr_intclear_Slot_inst_encode (xtensa_insnbuf slotbuf)
05469 {
05470 slotbuf[0] = 0xe331;
05471 }
05472
05473 static void
05474 Opcode_rsr_intenable_Slot_inst_encode (xtensa_insnbuf slotbuf)
05475 {
05476 slotbuf[0] = 0xe430;
05477 }
05478
05479 static void
05480 Opcode_wsr_intenable_Slot_inst_encode (xtensa_insnbuf slotbuf)
05481 {
05482 slotbuf[0] = 0xe431;
05483 }
05484
05485 static void
05486 Opcode_xsr_intenable_Slot_inst_encode (xtensa_insnbuf slotbuf)
05487 {
05488 slotbuf[0] = 0xe416;
05489 }
05490
05491 static void
05492 Opcode_break_Slot_inst_encode (xtensa_insnbuf slotbuf)
05493 {
05494 slotbuf[0] = 0x400;
05495 }
05496
05497 static void
05498 Opcode_break_n_Slot_inst16b_encode (xtensa_insnbuf slotbuf)
05499 {
05500 slotbuf[0] = 0xd20f;
05501 }
05502
05503 static void
05504 Opcode_rsr_dbreaka0_Slot_inst_encode (xtensa_insnbuf slotbuf)
05505 {
05506 slotbuf[0] = 0x9030;
05507 }
05508
05509 static void
05510 Opcode_wsr_dbreaka0_Slot_inst_encode (xtensa_insnbuf slotbuf)
05511 {
05512 slotbuf[0] = 0x9031;
05513 }
05514
05515 static void
05516 Opcode_xsr_dbreaka0_Slot_inst_encode (xtensa_insnbuf slotbuf)
05517 {
05518 slotbuf[0] = 0x9016;
05519 }
05520
05521 static void
05522 Opcode_rsr_dbreakc0_Slot_inst_encode (xtensa_insnbuf slotbuf)
05523 {
05524 slotbuf[0] = 0xa030;
05525 }
05526
05527 static void
05528 Opcode_wsr_dbreakc0_Slot_inst_encode (xtensa_insnbuf slotbuf)
05529 {
05530 slotbuf[0] = 0xa031;
05531 }
05532
05533 static void
05534 Opcode_xsr_dbreakc0_Slot_inst_encode (xtensa_insnbuf slotbuf)
05535 {
05536 slotbuf[0] = 0xa016;
05537 }
05538
05539 static void
05540 Opcode_rsr_dbreaka1_Slot_inst_encode (xtensa_insnbuf slotbuf)
05541 {
05542 slotbuf[0] = 0x9130;
05543 }
05544
05545 static void
05546 Opcode_wsr_dbreaka1_Slot_inst_encode (xtensa_insnbuf slotbuf)
05547 {
05548 slotbuf[0] = 0x9131;
05549 }
05550
05551 static void
05552 Opcode_xsr_dbreaka1_Slot_inst_encode (xtensa_insnbuf slotbuf)
05553 {
05554 slotbuf[0] = 0x9116;
05555 }
05556
05557 static void
05558 Opcode_rsr_dbreakc1_Slot_inst_encode (xtensa_insnbuf slotbuf)
05559 {
05560 slotbuf[0] = 0xa130;
05561 }
05562
05563 static void
05564 Opcode_wsr_dbreakc1_Slot_inst_encode (xtensa_insnbuf slotbuf)
05565 {
05566 slotbuf[0] = 0xa131;
05567 }
05568
05569 static void
05570 Opcode_xsr_dbreakc1_Slot_inst_encode (xtensa_insnbuf slotbuf)
05571 {
05572 slotbuf[0] = 0xa116;
05573 }
05574
05575 static void
05576 Opcode_rsr_ibreaka0_Slot_inst_encode (xtensa_insnbuf slotbuf)
05577 {
05578 slotbuf[0] = 0x8030;
05579 }
05580
05581 static void
05582 Opcode_wsr_ibreaka0_Slot_inst_encode (xtensa_insnbuf slotbuf)
05583 {
05584 slotbuf[0] = 0x8031;
05585 }
05586
05587 static void
05588 Opcode_xsr_ibreaka0_Slot_inst_encode (xtensa_insnbuf slotbuf)
05589 {
05590 slotbuf[0] = 0x8016;
05591 }
05592
05593 static void
05594 Opcode_rsr_ibreaka1_Slot_inst_encode (xtensa_insnbuf slotbuf)
05595 {
05596 slotbuf[0] = 0x8130;
05597 }
05598
05599 static void
05600 Opcode_wsr_ibreaka1_Slot_inst_encode (xtensa_insnbuf slotbuf)
05601 {
05602 slotbuf[0] = 0x8131;
05603 }
05604
05605 static void
05606 Opcode_xsr_ibreaka1_Slot_inst_encode (xtensa_insnbuf slotbuf)
05607 {
05608 slotbuf[0] = 0x8116;
05609 }
05610
05611 static void
05612 Opcode_rsr_ibreakenable_Slot_inst_encode (xtensa_insnbuf slotbuf)
05613 {
05614 slotbuf[0] = 0x6030;
05615 }
05616
05617 static void
05618 Opcode_wsr_ibreakenable_Slot_inst_encode (xtensa_insnbuf slotbuf)
05619 {
05620 slotbuf[0] = 0x6031;
05621 }
05622
05623 static void
05624 Opcode_xsr_ibreakenable_Slot_inst_encode (xtensa_insnbuf slotbuf)
05625 {
05626 slotbuf[0] = 0x6016;
05627 }
05628
05629 static void
05630 Opcode_rsr_debugcause_Slot_inst_encode (xtensa_insnbuf slotbuf)
05631 {
05632 slotbuf[0] = 0xe930;
05633 }
05634
05635 static void
05636 Opcode_wsr_debugcause_Slot_inst_encode (xtensa_insnbuf slotbuf)
05637 {
05638 slotbuf[0] = 0xe931;
05639 }
05640
05641 static void
05642 Opcode_xsr_debugcause_Slot_inst_encode (xtensa_insnbuf slotbuf)
05643 {
05644 slotbuf[0] = 0xe916;
05645 }
05646
05647 static void
05648 Opcode_rsr_icount_Slot_inst_encode (xtensa_insnbuf slotbuf)
05649 {
05650 slotbuf[0] = 0xec30;
05651 }
05652
05653 static void
05654 Opcode_wsr_icount_Slot_inst_encode (xtensa_insnbuf slotbuf)
05655 {
05656 slotbuf[0] = 0xec31;
05657 }
05658
05659 static void
05660 Opcode_xsr_icount_Slot_inst_encode (xtensa_insnbuf slotbuf)
05661 {
05662 slotbuf[0] = 0xec16;
05663 }
05664
05665 static void
05666 Opcode_rsr_icountlevel_Slot_inst_encode (xtensa_insnbuf slotbuf)
05667 {
05668 slotbuf[0] = 0xed30;
05669 }
05670
05671 static void
05672 Opcode_wsr_icountlevel_Slot_inst_encode (xtensa_insnbuf slotbuf)
05673 {
05674 slotbuf[0] = 0xed31;
05675 }
05676
05677 static void
05678 Opcode_xsr_icountlevel_Slot_inst_encode (xtensa_insnbuf slotbuf)
05679 {
05680 slotbuf[0] = 0xed16;
05681 }
05682
05683 static void
05684 Opcode_rsr_ddr_Slot_inst_encode (xtensa_insnbuf slotbuf)
05685 {
05686 slotbuf[0] = 0x6830;
05687 }
05688
05689 static void
05690 Opcode_wsr_ddr_Slot_inst_encode (xtensa_insnbuf slotbuf)
05691 {
05692 slotbuf[0] = 0x6831;
05693 }
05694
05695 static void
05696 Opcode_xsr_ddr_Slot_inst_encode (xtensa_insnbuf slotbuf)
05697 {
05698 slotbuf[0] = 0x6816;
05699 }
05700
05701 static void
05702 Opcode_rfdo_Slot_inst_encode (xtensa_insnbuf slotbuf)
05703 {
05704 slotbuf[0] = 0xe1f;
05705 }
05706
05707 static void
05708 Opcode_rfdd_Slot_inst_encode (xtensa_insnbuf slotbuf)
05709 {
05710 slotbuf[0] = 0x10e1f;
05711 }
05712
05713 static void
05714 Opcode_rsr_ccount_Slot_inst_encode (xtensa_insnbuf slotbuf)
05715 {
05716 slotbuf[0] = 0xea30;
05717 }
05718
05719 static void
05720 Opcode_wsr_ccount_Slot_inst_encode (xtensa_insnbuf slotbuf)
05721 {
05722 slotbuf[0] = 0xea31;
05723 }
05724
05725 static void
05726 Opcode_xsr_ccount_Slot_inst_encode (xtensa_insnbuf slotbuf)
05727 {
05728 slotbuf[0] = 0xea16;
05729 }
05730
05731 static void
05732 Opcode_rsr_ccompare0_Slot_inst_encode (xtensa_insnbuf slotbuf)
05733 {
05734 slotbuf[0] = 0xf030;
05735 }
05736
05737 static void
05738 Opcode_wsr_ccompare0_Slot_inst_encode (xtensa_insnbuf slotbuf)
05739 {
05740 slotbuf[0] = 0xf031;
05741 }
05742
05743 static void
05744 Opcode_xsr_ccompare0_Slot_inst_encode (xtensa_insnbuf slotbuf)
05745 {
05746 slotbuf[0] = 0xf016;
05747 }
05748
05749 static void
05750 Opcode_rsr_ccompare1_Slot_inst_encode (xtensa_insnbuf slotbuf)
05751 {
05752 slotbuf[0] = 0xf130;
05753 }
05754
05755 static void
05756 Opcode_wsr_ccompare1_Slot_inst_encode (xtensa_insnbuf slotbuf)
05757 {
05758 slotbuf[0] = 0xf131;
05759 }
05760
05761 static void
05762 Opcode_xsr_ccompare1_Slot_inst_encode (xtensa_insnbuf slotbuf)
05763 {
05764 slotbuf[0] = 0xf116;
05765 }
05766
05767 static void
05768 Opcode_rsr_ccompare2_Slot_inst_encode (xtensa_insnbuf slotbuf)
05769 {
05770 slotbuf[0] = 0xf230;
05771 }
05772
05773 static void
05774 Opcode_wsr_ccompare2_Slot_inst_encode (xtensa_insnbuf slotbuf)
05775 {
05776 slotbuf[0] = 0xf231;
05777 }
05778
05779 static void
05780 Opcode_xsr_ccompare2_Slot_inst_encode (xtensa_insnbuf slotbuf)
05781 {
05782 slotbuf[0] = 0xf216;
05783 }
05784
05785 static void
05786 Opcode_ipf_Slot_inst_encode (xtensa_insnbuf slotbuf)
05787 {
05788 slotbuf[0] = 0x2c0700;
05789 }
05790
05791 static void
05792 Opcode_ihi_Slot_inst_encode (xtensa_insnbuf slotbuf)
05793 {
05794 slotbuf[0] = 0x2e0700;
05795 }
05796
05797 static void
05798 Opcode_iii_Slot_inst_encode (xtensa_insnbuf slotbuf)
05799 {
05800 slotbuf[0] = 0x2f0700;
05801 }
05802
05803 static void
05804 Opcode_lict_Slot_inst_encode (xtensa_insnbuf slotbuf)
05805 {
05806 slotbuf[0] = 0x1f;
05807 }
05808
05809 static void
05810 Opcode_licw_Slot_inst_encode (xtensa_insnbuf slotbuf)
05811 {
05812 slotbuf[0] = 0x21f;
05813 }
05814
05815 static void
05816 Opcode_sict_Slot_inst_encode (xtensa_insnbuf slotbuf)
05817 {
05818 slotbuf[0] = 0x11f;
05819 }
05820
05821 static void
05822 Opcode_sicw_Slot_inst_encode (xtensa_insnbuf slotbuf)
05823 {
05824 slotbuf[0] = 0x31f;
05825 }
05826
05827 static void
05828 Opcode_dhwb_Slot_inst_encode (xtensa_insnbuf slotbuf)
05829 {
05830 slotbuf[0] = 0x240700;
05831 }
05832
05833 static void
05834 Opcode_dhwbi_Slot_inst_encode (xtensa_insnbuf slotbuf)
05835 {
05836 slotbuf[0] = 0x250700;
05837 }
05838
05839 static void
05840 Opcode_diwb_Slot_inst_encode (xtensa_insnbuf slotbuf)
05841 {
05842 slotbuf[0] = 0x280740;
05843 }
05844
05845 static void
05846 Opcode_diwbi_Slot_inst_encode (xtensa_insnbuf slotbuf)
05847 {
05848 slotbuf[0] = 0x280750;
05849 }
05850
05851 static void
05852 Opcode_dhi_Slot_inst_encode (xtensa_insnbuf slotbuf)
05853 {
05854 slotbuf[0] = 0x260700;
05855 }
05856
05857 static void
05858 Opcode_dii_Slot_inst_encode (xtensa_insnbuf slotbuf)
05859 {
05860 slotbuf[0] = 0x270700;
05861 }
05862
05863 static void
05864 Opcode_dpfr_Slot_inst_encode (xtensa_insnbuf slotbuf)
05865 {
05866 slotbuf[0] = 0x200700;
05867 }
05868
05869 static void
05870 Opcode_dpfw_Slot_inst_encode (xtensa_insnbuf slotbuf)
05871 {
05872 slotbuf[0] = 0x210700;
05873 }
05874
05875 static void
05876 Opcode_dpfro_Slot_inst_encode (xtensa_insnbuf slotbuf)
05877 {
05878 slotbuf[0] = 0x220700;
05879 }
05880
05881 static void
05882 Opcode_dpfwo_Slot_inst_encode (xtensa_insnbuf slotbuf)
05883 {
05884 slotbuf[0] = 0x230700;
05885 }
05886
05887 static void
05888 Opcode_sdct_Slot_inst_encode (xtensa_insnbuf slotbuf)
05889 {
05890 slotbuf[0] = 0x91f;
05891 }
05892
05893 static void
05894 Opcode_ldct_Slot_inst_encode (xtensa_insnbuf slotbuf)
05895 {
05896 slotbuf[0] = 0x81f;
05897 }
05898
05899 static void
05900 Opcode_idtlb_Slot_inst_encode (xtensa_insnbuf slotbuf)
05901 {
05902 slotbuf[0] = 0xc05;
05903 }
05904
05905 static void
05906 Opcode_pdtlb_Slot_inst_encode (xtensa_insnbuf slotbuf)
05907 {
05908 slotbuf[0] = 0xd05;
05909 }
05910
05911 static void
05912 Opcode_rdtlb0_Slot_inst_encode (xtensa_insnbuf slotbuf)
05913 {
05914 slotbuf[0] = 0xb05;
05915 }
05916
05917 static void
05918 Opcode_rdtlb1_Slot_inst_encode (xtensa_insnbuf slotbuf)
05919 {
05920 slotbuf[0] = 0xf05;
05921 }
05922
05923 static void
05924 Opcode_wdtlb_Slot_inst_encode (xtensa_insnbuf slotbuf)
05925 {
05926 slotbuf[0] = 0xe05;
05927 }
05928
05929 static void
05930 Opcode_iitlb_Slot_inst_encode (xtensa_insnbuf slotbuf)
05931 {
05932 slotbuf[0] = 0x405;
05933 }
05934
05935 static void
05936 Opcode_pitlb_Slot_inst_encode (xtensa_insnbuf slotbuf)
05937 {
05938 slotbuf[0] = 0x505;
05939 }
05940
05941 static void
05942 Opcode_ritlb0_Slot_inst_encode (xtensa_insnbuf slotbuf)
05943 {
05944 slotbuf[0] = 0x305;
05945 }
05946
05947 static void
05948 Opcode_ritlb1_Slot_inst_encode (xtensa_insnbuf slotbuf)
05949 {
05950 slotbuf[0] = 0x705;
05951 }
05952
05953 static void
05954 Opcode_witlb_Slot_inst_encode (xtensa_insnbuf slotbuf)
05955 {
05956 slotbuf[0] = 0x605;
05957 }
05958
05959 static void
05960 Opcode_nsa_Slot_inst_encode (xtensa_insnbuf slotbuf)
05961 {
05962 slotbuf[0] = 0xe04;
05963 }
05964
05965 static void
05966 Opcode_nsau_Slot_inst_encode (xtensa_insnbuf slotbuf)
05967 {
05968 slotbuf[0] = 0xf04;
05969 }
05970
05971 xtensa_opcode_encode_fn Opcode_excw_encode_fns[] = {
05972 Opcode_excw_Slot_inst_encode, 0, 0
05973 };
05974
05975 xtensa_opcode_encode_fn Opcode_rfe_encode_fns[] = {
05976 Opcode_rfe_Slot_inst_encode, 0, 0
05977 };
05978
05979 xtensa_opcode_encode_fn Opcode_rfde_encode_fns[] = {
05980 Opcode_rfde_Slot_inst_encode, 0, 0
05981 };
05982
05983 xtensa_opcode_encode_fn Opcode_syscall_encode_fns[] = {
05984 Opcode_syscall_Slot_inst_encode, 0, 0
05985 };
05986
05987 xtensa_opcode_encode_fn Opcode_simcall_encode_fns[] = {
05988 Opcode_simcall_Slot_inst_encode, 0, 0
05989 };
05990
05991 xtensa_opcode_encode_fn Opcode_call12_encode_fns[] = {
05992 Opcode_call12_Slot_inst_encode, 0, 0
05993 };
05994
05995 xtensa_opcode_encode_fn Opcode_call8_encode_fns[] = {
05996 Opcode_call8_Slot_inst_encode, 0, 0
05997 };
05998
05999 xtensa_opcode_encode_fn Opcode_call4_encode_fns[] = {
06000 Opcode_call4_Slot_inst_encode, 0, 0
06001 };
06002
06003 xtensa_opcode_encode_fn Opcode_callx12_encode_fns[] = {
06004 Opcode_callx12_Slot_inst_encode, 0, 0
06005 };
06006
06007 xtensa_opcode_encode_fn Opcode_callx8_encode_fns[] = {
06008 Opcode_callx8_Slot_inst_encode, 0, 0
06009 };
06010
06011 xtensa_opcode_encode_fn Opcode_callx4_encode_fns[] = {
06012 Opcode_callx4_Slot_inst_encode, 0, 0
06013 };
06014
06015 xtensa_opcode_encode_fn Opcode_entry_encode_fns[] = {
06016 Opcode_entry_Slot_inst_encode, 0, 0
06017 };
06018
06019 xtensa_opcode_encode_fn Opcode_movsp_encode_fns[] = {
06020 Opcode_movsp_Slot_inst_encode, 0, 0
06021 };
06022
06023 xtensa_opcode_encode_fn Opcode_rotw_encode_fns[] = {
06024 Opcode_rotw_Slot_inst_encode, 0, 0
06025 };
06026
06027 xtensa_opcode_encode_fn Opcode_retw_encode_fns[] = {
06028 Opcode_retw_Slot_inst_encode, 0, 0
06029 };
06030
06031 xtensa_opcode_encode_fn Opcode_retw_n_encode_fns[] = {
06032 0, 0, Opcode_retw_n_Slot_inst16b_encode
06033 };
06034
06035 xtensa_opcode_encode_fn Opcode_rfwo_encode_fns[] = {
06036 Opcode_rfwo_Slot_inst_encode, 0, 0
06037 };
06038
06039 xtensa_opcode_encode_fn Opcode_rfwu_encode_fns[] = {
06040 Opcode_rfwu_Slot_inst_encode, 0, 0
06041 };
06042
06043 xtensa_opcode_encode_fn Opcode_l32e_encode_fns[] = {
06044 Opcode_l32e_Slot_inst_encode, 0, 0
06045 };
06046
06047 xtensa_opcode_encode_fn Opcode_s32e_encode_fns[] = {
06048 Opcode_s32e_Slot_inst_encode, 0, 0
06049 };
06050
06051 xtensa_opcode_encode_fn Opcode_rsr_windowbase_encode_fns[] = {
06052 Opcode_rsr_windowbase_Slot_inst_encode, 0, 0
06053 };
06054
06055 xtensa_opcode_encode_fn Opcode_wsr_windowbase_encode_fns[] = {
06056 Opcode_wsr_windowbase_Slot_inst_encode, 0, 0
06057 };
06058
06059 xtensa_opcode_encode_fn Opcode_xsr_windowbase_encode_fns[] = {
06060 Opcode_xsr_windowbase_Slot_inst_encode, 0, 0
06061 };
06062
06063 xtensa_opcode_encode_fn Opcode_rsr_windowstart_encode_fns[] = {
06064 Opcode_rsr_windowstart_Slot_inst_encode, 0, 0
06065 };
06066
06067 xtensa_opcode_encode_fn Opcode_wsr_windowstart_encode_fns[] = {
06068 Opcode_wsr_windowstart_Slot_inst_encode, 0, 0
06069 };
06070
06071 xtensa_opcode_encode_fn Opcode_xsr_windowstart_encode_fns[] = {
06072 Opcode_xsr_windowstart_Slot_inst_encode, 0, 0
06073 };
06074
06075 xtensa_opcode_encode_fn Opcode_add_n_encode_fns[] = {
06076 0, Opcode_add_n_Slot_inst16a_encode, 0
06077 };
06078
06079 xtensa_opcode_encode_fn Opcode_addi_n_encode_fns[] = {
06080 0, Opcode_addi_n_Slot_inst16a_encode, 0
06081 };
06082
06083 xtensa_opcode_encode_fn Opcode_beqz_n_encode_fns[] = {
06084 0, 0, Opcode_beqz_n_Slot_inst16b_encode
06085 };
06086
06087 xtensa_opcode_encode_fn Opcode_bnez_n_encode_fns[] = {
06088 0, 0, Opcode_bnez_n_Slot_inst16b_encode
06089 };
06090
06091 xtensa_opcode_encode_fn Opcode_ill_n_encode_fns[] = {
06092 0, 0, Opcode_ill_n_Slot_inst16b_encode
06093 };
06094
06095 xtensa_opcode_encode_fn Opcode_l32i_n_encode_fns[] = {
06096 0, Opcode_l32i_n_Slot_inst16a_encode, 0
06097 };
06098
06099 xtensa_opcode_encode_fn Opcode_mov_n_encode_fns[] = {
06100 0, 0, Opcode_mov_n_Slot_inst16b_encode
06101 };
06102
06103 xtensa_opcode_encode_fn Opcode_movi_n_encode_fns[] = {
06104 0, 0, Opcode_movi_n_Slot_inst16b_encode
06105 };
06106
06107 xtensa_opcode_encode_fn Opcode_nop_n_encode_fns[] = {
06108 0, 0, Opcode_nop_n_Slot_inst16b_encode
06109 };
06110
06111 xtensa_opcode_encode_fn Opcode_ret_n_encode_fns[] = {
06112 0, 0, Opcode_ret_n_Slot_inst16b_encode
06113 };
06114
06115 xtensa_opcode_encode_fn Opcode_s32i_n_encode_fns[] = {
06116 0, Opcode_s32i_n_Slot_inst16a_encode, 0
06117 };
06118
06119 xtensa_opcode_encode_fn Opcode_addi_encode_fns[] = {
06120 Opcode_addi_Slot_inst_encode, 0, 0
06121 };
06122
06123 xtensa_opcode_encode_fn Opcode_addmi_encode_fns[] = {
06124 Opcode_addmi_Slot_inst_encode, 0, 0
06125 };
06126
06127 xtensa_opcode_encode_fn Opcode_add_encode_fns[] = {
06128 Opcode_add_Slot_inst_encode, 0, 0
06129 };
06130
06131 xtensa_opcode_encode_fn Opcode_sub_encode_fns[] = {
06132 Opcode_sub_Slot_inst_encode, 0, 0
06133 };
06134
06135 xtensa_opcode_encode_fn Opcode_addx2_encode_fns[] = {
06136 Opcode_addx2_Slot_inst_encode, 0, 0
06137 };
06138
06139 xtensa_opcode_encode_fn Opcode_addx4_encode_fns[] = {
06140 Opcode_addx4_Slot_inst_encode, 0, 0
06141 };
06142
06143 xtensa_opcode_encode_fn Opcode_addx8_encode_fns[] = {
06144 Opcode_addx8_Slot_inst_encode, 0, 0
06145 };
06146
06147 xtensa_opcode_encode_fn Opcode_subx2_encode_fns[] = {
06148 Opcode_subx2_Slot_inst_encode, 0, 0
06149 };
06150
06151 xtensa_opcode_encode_fn Opcode_subx4_encode_fns[] = {
06152 Opcode_subx4_Slot_inst_encode, 0, 0
06153 };
06154
06155 xtensa_opcode_encode_fn Opcode_subx8_encode_fns[] = {
06156 Opcode_subx8_Slot_inst_encode, 0, 0
06157 };
06158
06159 xtensa_opcode_encode_fn Opcode_and_encode_fns[] = {
06160 Opcode_and_Slot_inst_encode, 0, 0
06161 };
06162
06163 xtensa_opcode_encode_fn Opcode_or_encode_fns[] = {
06164 Opcode_or_Slot_inst_encode, 0, 0
06165 };
06166
06167 xtensa_opcode_encode_fn Opcode_xor_encode_fns[] = {
06168 Opcode_xor_Slot_inst_encode, 0, 0
06169 };
06170
06171 xtensa_opcode_encode_fn Opcode_beqi_encode_fns[] = {
06172 Opcode_beqi_Slot_inst_encode, 0, 0
06173 };
06174
06175 xtensa_opcode_encode_fn Opcode_bnei_encode_fns[] = {
06176 Opcode_bnei_Slot_inst_encode, 0, 0
06177 };
06178
06179 xtensa_opcode_encode_fn Opcode_bgei_encode_fns[] = {
06180 Opcode_bgei_Slot_inst_encode, 0, 0
06181 };
06182
06183 xtensa_opcode_encode_fn Opcode_blti_encode_fns[] = {
06184 Opcode_blti_Slot_inst_encode, 0, 0
06185 };
06186
06187 xtensa_opcode_encode_fn Opcode_bbci_encode_fns[] = {
06188 Opcode_bbci_Slot_inst_encode, 0, 0
06189 };
06190
06191 xtensa_opcode_encode_fn Opcode_bbsi_encode_fns[] = {
06192 Opcode_bbsi_Slot_inst_encode, 0, 0
06193 };
06194
06195 xtensa_opcode_encode_fn Opcode_bgeui_encode_fns[] = {
06196 Opcode_bgeui_Slot_inst_encode, 0, 0
06197 };
06198
06199 xtensa_opcode_encode_fn Opcode_bltui_encode_fns[] = {
06200 Opcode_bltui_Slot_inst_encode, 0, 0
06201 };
06202
06203 xtensa_opcode_encode_fn Opcode_beq_encode_fns[] = {
06204 Opcode_beq_Slot_inst_encode, 0, 0
06205 };
06206
06207 xtensa_opcode_encode_fn Opcode_bne_encode_fns[] = {
06208 Opcode_bne_Slot_inst_encode, 0, 0
06209 };
06210
06211 xtensa_opcode_encode_fn Opcode_bge_encode_fns[] = {
06212 Opcode_bge_Slot_inst_encode, 0, 0
06213 };
06214
06215 xtensa_opcode_encode_fn Opcode_blt_encode_fns[] = {
06216 Opcode_blt_Slot_inst_encode, 0, 0
06217 };
06218
06219 xtensa_opcode_encode_fn Opcode_bgeu_encode_fns[] = {
06220 Opcode_bgeu_Slot_inst_encode, 0, 0
06221 };
06222
06223 xtensa_opcode_encode_fn Opcode_bltu_encode_fns[] = {
06224 Opcode_bltu_Slot_inst_encode, 0, 0
06225 };
06226
06227 xtensa_opcode_encode_fn Opcode_bany_encode_fns[] = {
06228 Opcode_bany_Slot_inst_encode, 0, 0
06229 };
06230
06231 xtensa_opcode_encode_fn Opcode_bnone_encode_fns[] = {
06232 Opcode_bnone_Slot_inst_encode, 0, 0
06233 };
06234
06235 xtensa_opcode_encode_fn Opcode_ball_encode_fns[] = {
06236 Opcode_ball_Slot_inst_encode, 0, 0
06237 };
06238
06239 xtensa_opcode_encode_fn Opcode_bnall_encode_fns[] = {
06240 Opcode_bnall_Slot_inst_encode, 0, 0
06241 };
06242
06243 xtensa_opcode_encode_fn Opcode_bbc_encode_fns[] = {
06244 Opcode_bbc_Slot_inst_encode, 0, 0
06245 };
06246
06247 xtensa_opcode_encode_fn Opcode_bbs_encode_fns[] = {
06248 Opcode_bbs_Slot_inst_encode, 0, 0
06249 };
06250
06251 xtensa_opcode_encode_fn Opcode_beqz_encode_fns[] = {
06252 Opcode_beqz_Slot_inst_encode, 0, 0
06253 };
06254
06255 xtensa_opcode_encode_fn Opcode_bnez_encode_fns[] = {
06256 Opcode_bnez_Slot_inst_encode, 0, 0
06257 };
06258
06259 xtensa_opcode_encode_fn Opcode_bgez_encode_fns[] = {
06260 Opcode_bgez_Slot_inst_encode, 0, 0
06261 };
06262
06263 xtensa_opcode_encode_fn Opcode_bltz_encode_fns[] = {
06264 Opcode_bltz_Slot_inst_encode, 0, 0
06265 };
06266
06267 xtensa_opcode_encode_fn Opcode_call0_encode_fns[] = {
06268 Opcode_call0_Slot_inst_encode, 0, 0
06269 };
06270
06271 xtensa_opcode_encode_fn Opcode_callx0_encode_fns[] = {
06272 Opcode_callx0_Slot_inst_encode, 0, 0
06273 };
06274
06275 xtensa_opcode_encode_fn Opcode_extui_encode_fns[] = {
06276 Opcode_extui_Slot_inst_encode, 0, 0
06277 };
06278
06279 xtensa_opcode_encode_fn Opcode_ill_encode_fns[] = {
06280 Opcode_ill_Slot_inst_encode, 0, 0
06281 };
06282
06283 xtensa_opcode_encode_fn Opcode_j_encode_fns[] = {
06284 Opcode_j_Slot_inst_encode, 0, 0
06285 };
06286
06287 xtensa_opcode_encode_fn Opcode_jx_encode_fns[] = {
06288 Opcode_jx_Slot_inst_encode, 0, 0
06289 };
06290
06291 xtensa_opcode_encode_fn Opcode_l16ui_encode_fns[] = {
06292 Opcode_l16ui_Slot_inst_encode, 0, 0
06293 };
06294
06295 xtensa_opcode_encode_fn Opcode_l16si_encode_fns[] = {
06296 Opcode_l16si_Slot_inst_encode, 0, 0
06297 };
06298
06299 xtensa_opcode_encode_fn Opcode_l32i_encode_fns[] = {
06300 Opcode_l32i_Slot_inst_encode, 0, 0
06301 };
06302
06303 xtensa_opcode_encode_fn Opcode_l32r_encode_fns[] = {
06304 Opcode_l32r_Slot_inst_encode, 0, 0
06305 };
06306
06307 xtensa_opcode_encode_fn Opcode_l8ui_encode_fns[] = {
06308 Opcode_l8ui_Slot_inst_encode, 0, 0
06309 };
06310
06311 xtensa_opcode_encode_fn Opcode_loop_encode_fns[] = {
06312 Opcode_loop_Slot_inst_encode, 0, 0
06313 };
06314
06315 xtensa_opcode_encode_fn Opcode_loopnez_encode_fns[] = {
06316 Opcode_loopnez_Slot_inst_encode, 0, 0
06317 };
06318
06319 xtensa_opcode_encode_fn Opcode_loopgtz_encode_fns[] = {
06320 Opcode_loopgtz_Slot_inst_encode, 0, 0
06321 };
06322
06323 xtensa_opcode_encode_fn Opcode_movi_encode_fns[] = {
06324 Opcode_movi_Slot_inst_encode, 0, 0
06325 };
06326
06327 xtensa_opcode_encode_fn Opcode_moveqz_encode_fns[] = {
06328 Opcode_moveqz_Slot_inst_encode, 0, 0
06329 };
06330
06331 xtensa_opcode_encode_fn Opcode_movnez_encode_fns[] = {
06332 Opcode_movnez_Slot_inst_encode, 0, 0
06333 };
06334
06335 xtensa_opcode_encode_fn Opcode_movltz_encode_fns[] = {
06336 Opcode_movltz_Slot_inst_encode, 0, 0
06337 };
06338
06339 xtensa_opcode_encode_fn Opcode_movgez_encode_fns[] = {
06340 Opcode_movgez_Slot_inst_encode, 0, 0
06341 };
06342
06343 xtensa_opcode_encode_fn Opcode_neg_encode_fns[] = {
06344 Opcode_neg_Slot_inst_encode, 0, 0
06345 };
06346
06347 xtensa_opcode_encode_fn Opcode_abs_encode_fns[] = {
06348 Opcode_abs_Slot_inst_encode, 0, 0
06349 };
06350
06351 xtensa_opcode_encode_fn Opcode_nop_encode_fns[] = {
06352 Opcode_nop_Slot_inst_encode, 0, 0
06353 };
06354
06355 xtensa_opcode_encode_fn Opcode_ret_encode_fns[] = {
06356 Opcode_ret_Slot_inst_encode, 0, 0
06357 };
06358
06359 xtensa_opcode_encode_fn Opcode_s16i_encode_fns[] = {
06360 Opcode_s16i_Slot_inst_encode, 0, 0
06361 };
06362
06363 xtensa_opcode_encode_fn Opcode_s32i_encode_fns[] = {
06364 Opcode_s32i_Slot_inst_encode, 0, 0
06365 };
06366
06367 xtensa_opcode_encode_fn Opcode_s8i_encode_fns[] = {
06368 Opcode_s8i_Slot_inst_encode, 0, 0
06369 };
06370
06371 xtensa_opcode_encode_fn Opcode_ssr_encode_fns[] = {
06372 Opcode_ssr_Slot_inst_encode, 0, 0
06373 };
06374
06375 xtensa_opcode_encode_fn Opcode_ssl_encode_fns[] = {
06376 Opcode_ssl_Slot_inst_encode, 0, 0
06377 };
06378
06379 xtensa_opcode_encode_fn Opcode_ssa8l_encode_fns[] = {
06380 Opcode_ssa8l_Slot_inst_encode, 0, 0
06381 };
06382
06383 xtensa_opcode_encode_fn Opcode_ssa8b_encode_fns[] = {
06384 Opcode_ssa8b_Slot_inst_encode, 0, 0
06385 };
06386
06387 xtensa_opcode_encode_fn Opcode_ssai_encode_fns[] = {
06388 Opcode_ssai_Slot_inst_encode, 0, 0
06389 };
06390
06391 xtensa_opcode_encode_fn Opcode_sll_encode_fns[] = {
06392 Opcode_sll_Slot_inst_encode, 0, 0
06393 };
06394
06395 xtensa_opcode_encode_fn Opcode_src_encode_fns[] = {
06396 Opcode_src_Slot_inst_encode, 0, 0
06397 };
06398
06399 xtensa_opcode_encode_fn Opcode_srl_encode_fns[] = {
06400 Opcode_srl_Slot_inst_encode, 0, 0
06401 };
06402
06403 xtensa_opcode_encode_fn Opcode_sra_encode_fns[] = {
06404 Opcode_sra_Slot_inst_encode, 0, 0
06405 };
06406
06407 xtensa_opcode_encode_fn Opcode_slli_encode_fns[] = {
06408 Opcode_slli_Slot_inst_encode, 0, 0
06409 };
06410
06411 xtensa_opcode_encode_fn Opcode_srai_encode_fns[] = {
06412 Opcode_srai_Slot_inst_encode, 0, 0
06413 };
06414
06415 xtensa_opcode_encode_fn Opcode_srli_encode_fns[] = {
06416 Opcode_srli_Slot_inst_encode, 0, 0
06417 };
06418
06419 xtensa_opcode_encode_fn Opcode_memw_encode_fns[] = {
06420 Opcode_memw_Slot_inst_encode, 0, 0
06421 };
06422
06423 xtensa_opcode_encode_fn Opcode_extw_encode_fns[] = {
06424 Opcode_extw_Slot_inst_encode, 0, 0
06425 };
06426
06427 xtensa_opcode_encode_fn Opcode_isync_encode_fns[] = {
06428 Opcode_isync_Slot_inst_encode, 0, 0
06429 };
06430
06431 xtensa_opcode_encode_fn Opcode_rsync_encode_fns[] = {
06432 Opcode_rsync_Slot_inst_encode, 0, 0
06433 };
06434
06435 xtensa_opcode_encode_fn Opcode_esync_encode_fns[] = {
06436 Opcode_esync_Slot_inst_encode, 0, 0
06437 };
06438
06439 xtensa_opcode_encode_fn Opcode_dsync_encode_fns[] = {
06440 Opcode_dsync_Slot_inst_encode, 0, 0
06441 };
06442
06443 xtensa_opcode_encode_fn Opcode_rsil_encode_fns[] = {
06444 Opcode_rsil_Slot_inst_encode, 0, 0
06445 };
06446
06447 xtensa_opcode_encode_fn Opcode_rsr_lend_encode_fns[] = {
06448 Opcode_rsr_lend_Slot_inst_encode, 0, 0
06449 };
06450
06451 xtensa_opcode_encode_fn Opcode_wsr_lend_encode_fns[] = {
06452 Opcode_wsr_lend_Slot_inst_encode, 0, 0
06453 };
06454
06455 xtensa_opcode_encode_fn Opcode_xsr_lend_encode_fns[] = {
06456 Opcode_xsr_lend_Slot_inst_encode, 0, 0
06457 };
06458
06459 xtensa_opcode_encode_fn Opcode_rsr_lcount_encode_fns[] = {
06460 Opcode_rsr_lcount_Slot_inst_encode, 0, 0
06461 };
06462
06463 xtensa_opcode_encode_fn Opcode_wsr_lcount_encode_fns[] = {
06464 Opcode_wsr_lcount_Slot_inst_encode, 0, 0
06465 };
06466
06467 xtensa_opcode_encode_fn Opcode_xsr_lcount_encode_fns[] = {
06468 Opcode_xsr_lcount_Slot_inst_encode, 0, 0
06469 };
06470
06471 xtensa_opcode_encode_fn Opcode_rsr_lbeg_encode_fns[] = {
06472 Opcode_rsr_lbeg_Slot_inst_encode, 0, 0
06473 };
06474
06475 xtensa_opcode_encode_fn Opcode_wsr_lbeg_encode_fns[] = {
06476 Opcode_wsr_lbeg_Slot_inst_encode, 0, 0
06477 };
06478
06479 xtensa_opcode_encode_fn Opcode_xsr_lbeg_encode_fns[] = {
06480 Opcode_xsr_lbeg_Slot_inst_encode, 0, 0
06481 };
06482
06483 xtensa_opcode_encode_fn Opcode_rsr_sar_encode_fns[] = {
06484 Opcode_rsr_sar_Slot_inst_encode, 0, 0
06485 };
06486
06487 xtensa_opcode_encode_fn Opcode_wsr_sar_encode_fns[] = {
06488 Opcode_wsr_sar_Slot_inst_encode, 0, 0
06489 };
06490
06491 xtensa_opcode_encode_fn Opcode_xsr_sar_encode_fns[] = {
06492 Opcode_xsr_sar_Slot_inst_encode, 0, 0
06493 };
06494
06495 xtensa_opcode_encode_fn Opcode_rsr_litbase_encode_fns[] = {
06496 Opcode_rsr_litbase_Slot_inst_encode, 0, 0
06497 };
06498
06499 xtensa_opcode_encode_fn Opcode_wsr_litbase_encode_fns[] = {
06500 Opcode_wsr_litbase_Slot_inst_encode, 0, 0
06501 };
06502
06503 xtensa_opcode_encode_fn Opcode_xsr_litbase_encode_fns[] = {
06504 Opcode_xsr_litbase_Slot_inst_encode, 0, 0
06505 };
06506
06507 xtensa_opcode_encode_fn Opcode_rsr_176_encode_fns[] = {
06508 Opcode_rsr_176_Slot_inst_encode, 0, 0
06509 };
06510
06511 xtensa_opcode_encode_fn Opcode_rsr_208_encode_fns[] = {
06512 Opcode_rsr_208_Slot_inst_encode, 0, 0
06513 };
06514
06515 xtensa_opcode_encode_fn Opcode_rsr_ps_encode_fns[] = {
06516 Opcode_rsr_ps_Slot_inst_encode, 0, 0
06517 };
06518
06519 xtensa_opcode_encode_fn Opcode_wsr_ps_encode_fns[] = {
06520 Opcode_wsr_ps_Slot_inst_encode, 0, 0
06521 };
06522
06523 xtensa_opcode_encode_fn Opcode_xsr_ps_encode_fns[] = {
06524 Opcode_xsr_ps_Slot_inst_encode, 0, 0
06525 };
06526
06527 xtensa_opcode_encode_fn Opcode_rsr_epc1_encode_fns[] = {
06528 Opcode_rsr_epc1_Slot_inst_encode, 0, 0
06529 };
06530
06531 xtensa_opcode_encode_fn Opcode_wsr_epc1_encode_fns[] = {
06532 Opcode_wsr_epc1_Slot_inst_encode, 0, 0
06533 };
06534
06535 xtensa_opcode_encode_fn Opcode_xsr_epc1_encode_fns[] = {
06536 Opcode_xsr_epc1_Slot_inst_encode, 0, 0
06537 };
06538
06539 xtensa_opcode_encode_fn Opcode_rsr_excsave1_encode_fns[] = {
06540 Opcode_rsr_excsave1_Slot_inst_encode, 0, 0
06541 };
06542
06543 xtensa_opcode_encode_fn Opcode_wsr_excsave1_encode_fns[] = {
06544 Opcode_wsr_excsave1_Slot_inst_encode, 0, 0
06545 };
06546
06547 xtensa_opcode_encode_fn Opcode_xsr_excsave1_encode_fns[] = {
06548 Opcode_xsr_excsave1_Slot_inst_encode, 0, 0
06549 };
06550
06551 xtensa_opcode_encode_fn Opcode_rsr_epc2_encode_fns[] = {
06552 Opcode_rsr_epc2_Slot_inst_encode, 0, 0
06553 };
06554
06555 xtensa_opcode_encode_fn Opcode_wsr_epc2_encode_fns[] = {
06556 Opcode_wsr_epc2_Slot_inst_encode, 0, 0
06557 };
06558
06559 xtensa_opcode_encode_fn Opcode_xsr_epc2_encode_fns[] = {
06560 Opcode_xsr_epc2_Slot_inst_encode, 0, 0
06561 };
06562
06563 xtensa_opcode_encode_fn Opcode_rsr_excsave2_encode_fns[] = {
06564 Opcode_rsr_excsave2_Slot_inst_encode, 0, 0
06565 };
06566
06567 xtensa_opcode_encode_fn Opcode_wsr_excsave2_encode_fns[] = {
06568 Opcode_wsr_excsave2_Slot_inst_encode, 0, 0
06569 };
06570
06571 xtensa_opcode_encode_fn Opcode_xsr_excsave2_encode_fns[] = {
06572 Opcode_xsr_excsave2_Slot_inst_encode, 0, 0
06573 };
06574
06575 xtensa_opcode_encode_fn Opcode_rsr_epc3_encode_fns[] = {
06576 Opcode_rsr_epc3_Slot_inst_encode, 0, 0
06577 };
06578
06579 xtensa_opcode_encode_fn Opcode_wsr_epc3_encode_fns[] = {
06580 Opcode_wsr_epc3_Slot_inst_encode, 0, 0
06581 };
06582
06583 xtensa_opcode_encode_fn Opcode_xsr_epc3_encode_fns[] = {
06584 Opcode_xsr_epc3_Slot_inst_encode, 0, 0
06585 };
06586
06587 xtensa_opcode_encode_fn Opcode_rsr_excsave3_encode_fns[] = {
06588 Opcode_rsr_excsave3_Slot_inst_encode, 0, 0
06589 };
06590
06591 xtensa_opcode_encode_fn Opcode_wsr_excsave3_encode_fns[] = {
06592 Opcode_wsr_excsave3_Slot_inst_encode, 0, 0
06593 };
06594
06595 xtensa_opcode_encode_fn Opcode_xsr_excsave3_encode_fns[] = {
06596 Opcode_xsr_excsave3_Slot_inst_encode, 0, 0
06597 };
06598
06599 xtensa_opcode_encode_fn Opcode_rsr_epc4_encode_fns[] = {
06600 Opcode_rsr_epc4_Slot_inst_encode, 0, 0
06601 };
06602
06603 xtensa_opcode_encode_fn Opcode_wsr_epc4_encode_fns[] = {
06604 Opcode_wsr_epc4_Slot_inst_encode, 0, 0
06605 };
06606
06607 xtensa_opcode_encode_fn Opcode_xsr_epc4_encode_fns[] = {
06608 Opcode_xsr_epc4_Slot_inst_encode, 0, 0
06609 };
06610
06611 xtensa_opcode_encode_fn Opcode_rsr_excsave4_encode_fns[] = {
06612 Opcode_rsr_excsave4_Slot_inst_encode, 0, 0
06613 };
06614
06615 xtensa_opcode_encode_fn Opcode_wsr_excsave4_encode_fns[] = {
06616 Opcode_wsr_excsave4_Slot_inst_encode, 0, 0
06617 };
06618
06619 xtensa_opcode_encode_fn Opcode_xsr_excsave4_encode_fns[] = {
06620 Opcode_xsr_excsave4_Slot_inst_encode, 0, 0
06621 };
06622
06623 xtensa_opcode_encode_fn Opcode_rsr_eps2_encode_fns[] = {
06624 Opcode_rsr_eps2_Slot_inst_encode, 0, 0
06625 };
06626
06627 xtensa_opcode_encode_fn Opcode_wsr_eps2_encode_fns[] = {
06628 Opcode_wsr_eps2_Slot_inst_encode, 0, 0
06629 };
06630
06631 xtensa_opcode_encode_fn Opcode_xsr_eps2_encode_fns[] = {
06632 Opcode_xsr_eps2_Slot_inst_encode, 0, 0
06633 };
06634
06635 xtensa_opcode_encode_fn Opcode_rsr_eps3_encode_fns[] = {
06636 Opcode_rsr_eps3_Slot_inst_encode, 0, 0
06637 };
06638
06639 xtensa_opcode_encode_fn Opcode_wsr_eps3_encode_fns[] = {
06640 Opcode_wsr_eps3_Slot_inst_encode, 0, 0
06641 };
06642
06643 xtensa_opcode_encode_fn Opcode_xsr_eps3_encode_fns[] = {
06644 Opcode_xsr_eps3_Slot_inst_encode, 0, 0
06645 };
06646
06647 xtensa_opcode_encode_fn Opcode_rsr_eps4_encode_fns[] = {
06648 Opcode_rsr_eps4_Slot_inst_encode, 0, 0
06649 };
06650
06651 xtensa_opcode_encode_fn Opcode_wsr_eps4_encode_fns[] = {
06652 Opcode_wsr_eps4_Slot_inst_encode, 0, 0
06653 };
06654
06655 xtensa_opcode_encode_fn Opcode_xsr_eps4_encode_fns[] = {
06656 Opcode_xsr_eps4_Slot_inst_encode, 0, 0
06657 };
06658
06659 xtensa_opcode_encode_fn Opcode_rsr_excvaddr_encode_fns[] = {
06660 Opcode_rsr_excvaddr_Slot_inst_encode, 0, 0
06661 };
06662
06663 xtensa_opcode_encode_fn Opcode_wsr_excvaddr_encode_fns[] = {
06664 Opcode_wsr_excvaddr_Slot_inst_encode, 0, 0
06665 };
06666
06667 xtensa_opcode_encode_fn Opcode_xsr_excvaddr_encode_fns[] = {
06668 Opcode_xsr_excvaddr_Slot_inst_encode, 0, 0
06669 };
06670
06671 xtensa_opcode_encode_fn Opcode_rsr_depc_encode_fns[] = {
06672 Opcode_rsr_depc_Slot_inst_encode, 0, 0
06673 };
06674
06675 xtensa_opcode_encode_fn Opcode_wsr_depc_encode_fns[] = {
06676 Opcode_wsr_depc_Slot_inst_encode, 0, 0
06677 };
06678
06679 xtensa_opcode_encode_fn Opcode_xsr_depc_encode_fns[] = {
06680 Opcode_xsr_depc_Slot_inst_encode, 0, 0
06681 };
06682
06683 xtensa_opcode_encode_fn Opcode_rsr_exccause_encode_fns[] = {
06684 Opcode_rsr_exccause_Slot_inst_encode, 0, 0
06685 };
06686
06687 xtensa_opcode_encode_fn Opcode_wsr_exccause_encode_fns[] = {
06688 Opcode_wsr_exccause_Slot_inst_encode, 0, 0
06689 };
06690
06691 xtensa_opcode_encode_fn Opcode_xsr_exccause_encode_fns[] = {
06692 Opcode_xsr_exccause_Slot_inst_encode, 0, 0
06693 };
06694
06695 xtensa_opcode_encode_fn Opcode_rsr_misc0_encode_fns[] = {
06696 Opcode_rsr_misc0_Slot_inst_encode, 0, 0
06697 };
06698
06699 xtensa_opcode_encode_fn Opcode_wsr_misc0_encode_fns[] = {
06700 Opcode_wsr_misc0_Slot_inst_encode, 0, 0
06701 };
06702
06703 xtensa_opcode_encode_fn Opcode_xsr_misc0_encode_fns[] = {
06704 Opcode_xsr_misc0_Slot_inst_encode, 0, 0
06705 };
06706
06707 xtensa_opcode_encode_fn Opcode_rsr_misc1_encode_fns[] = {
06708 Opcode_rsr_misc1_Slot_inst_encode, 0, 0
06709 };
06710
06711 xtensa_opcode_encode_fn Opcode_wsr_misc1_encode_fns[] = {
06712 Opcode_wsr_misc1_Slot_inst_encode, 0, 0
06713 };
06714
06715 xtensa_opcode_encode_fn Opcode_xsr_misc1_encode_fns[] = {
06716 Opcode_xsr_misc1_Slot_inst_encode, 0, 0
06717 };
06718
06719 xtensa_opcode_encode_fn Opcode_rsr_prid_encode_fns[] = {
06720 Opcode_rsr_prid_Slot_inst_encode, 0, 0
06721 };
06722
06723 xtensa_opcode_encode_fn Opcode_rfi_encode_fns[] = {
06724 Opcode_rfi_Slot_inst_encode, 0, 0
06725 };
06726
06727 xtensa_opcode_encode_fn Opcode_waiti_encode_fns[] = {
06728 Opcode_waiti_Slot_inst_encode, 0, 0
06729 };
06730
06731 xtensa_opcode_encode_fn Opcode_rsr_interrupt_encode_fns[] = {
06732 Opcode_rsr_interrupt_Slot_inst_encode, 0, 0
06733 };
06734
06735 xtensa_opcode_encode_fn Opcode_wsr_intset_encode_fns[] = {
06736 Opcode_wsr_intset_Slot_inst_encode, 0, 0
06737 };
06738
06739 xtensa_opcode_encode_fn Opcode_wsr_intclear_encode_fns[] = {
06740 Opcode_wsr_intclear_Slot_inst_encode, 0, 0
06741 };
06742
06743 xtensa_opcode_encode_fn Opcode_rsr_intenable_encode_fns[] = {
06744 Opcode_rsr_intenable_Slot_inst_encode, 0, 0
06745 };
06746
06747 xtensa_opcode_encode_fn Opcode_wsr_intenable_encode_fns[] = {
06748 Opcode_wsr_intenable_Slot_inst_encode, 0, 0
06749 };
06750
06751 xtensa_opcode_encode_fn Opcode_xsr_intenable_encode_fns[] = {
06752 Opcode_xsr_intenable_Slot_inst_encode, 0, 0
06753 };
06754
06755 xtensa_opcode_encode_fn Opcode_break_encode_fns[] = {
06756 Opcode_break_Slot_inst_encode, 0, 0
06757 };
06758
06759 xtensa_opcode_encode_fn Opcode_break_n_encode_fns[] = {
06760 0, 0, Opcode_break_n_Slot_inst16b_encode
06761 };
06762
06763 xtensa_opcode_encode_fn Opcode_rsr_dbreaka0_encode_fns[] = {
06764 Opcode_rsr_dbreaka0_Slot_inst_encode, 0, 0
06765 };
06766
06767 xtensa_opcode_encode_fn Opcode_wsr_dbreaka0_encode_fns[] = {
06768 Opcode_wsr_dbreaka0_Slot_inst_encode, 0, 0
06769 };
06770
06771 xtensa_opcode_encode_fn Opcode_xsr_dbreaka0_encode_fns[] = {
06772 Opcode_xsr_dbreaka0_Slot_inst_encode, 0, 0
06773 };
06774
06775 xtensa_opcode_encode_fn Opcode_rsr_dbreakc0_encode_fns[] = {
06776 Opcode_rsr_dbreakc0_Slot_inst_encode, 0, 0
06777 };
06778
06779 xtensa_opcode_encode_fn Opcode_wsr_dbreakc0_encode_fns[] = {
06780 Opcode_wsr_dbreakc0_Slot_inst_encode, 0, 0
06781 };
06782
06783 xtensa_opcode_encode_fn Opcode_xsr_dbreakc0_encode_fns[] = {
06784 Opcode_xsr_dbreakc0_Slot_inst_encode, 0, 0
06785 };
06786
06787 xtensa_opcode_encode_fn Opcode_rsr_dbreaka1_encode_fns[] = {
06788 Opcode_rsr_dbreaka1_Slot_inst_encode, 0, 0
06789 };
06790
06791 xtensa_opcode_encode_fn Opcode_wsr_dbreaka1_encode_fns[] = {
06792 Opcode_wsr_dbreaka1_Slot_inst_encode, 0, 0
06793 };
06794
06795 xtensa_opcode_encode_fn Opcode_xsr_dbreaka1_encode_fns[] = {
06796 Opcode_xsr_dbreaka1_Slot_inst_encode, 0, 0
06797 };
06798
06799 xtensa_opcode_encode_fn Opcode_rsr_dbreakc1_encode_fns[] = {
06800 Opcode_rsr_dbreakc1_Slot_inst_encode, 0, 0
06801 };
06802
06803 xtensa_opcode_encode_fn Opcode_wsr_dbreakc1_encode_fns[] = {
06804 Opcode_wsr_dbreakc1_Slot_inst_encode, 0, 0
06805 };
06806
06807 xtensa_opcode_encode_fn Opcode_xsr_dbreakc1_encode_fns[] = {
06808 Opcode_xsr_dbreakc1_Slot_inst_encode, 0, 0
06809 };
06810
06811 xtensa_opcode_encode_fn Opcode_rsr_ibreaka0_encode_fns[] = {
06812 Opcode_rsr_ibreaka0_Slot_inst_encode, 0, 0
06813 };
06814
06815 xtensa_opcode_encode_fn Opcode_wsr_ibreaka0_encode_fns[] = {
06816 Opcode_wsr_ibreaka0_Slot_inst_encode, 0, 0
06817 };
06818
06819 xtensa_opcode_encode_fn Opcode_xsr_ibreaka0_encode_fns[] = {
06820 Opcode_xsr_ibreaka0_Slot_inst_encode, 0, 0
06821 };
06822
06823 xtensa_opcode_encode_fn Opcode_rsr_ibreaka1_encode_fns[] = {
06824 Opcode_rsr_ibreaka1_Slot_inst_encode, 0, 0
06825 };
06826
06827 xtensa_opcode_encode_fn Opcode_wsr_ibreaka1_encode_fns[] = {
06828 Opcode_wsr_ibreaka1_Slot_inst_encode, 0, 0
06829 };
06830
06831 xtensa_opcode_encode_fn Opcode_xsr_ibreaka1_encode_fns[] = {
06832 Opcode_xsr_ibreaka1_Slot_inst_encode, 0, 0
06833 };
06834
06835 xtensa_opcode_encode_fn Opcode_rsr_ibreakenable_encode_fns[] = {
06836 Opcode_rsr_ibreakenable_Slot_inst_encode, 0, 0
06837 };
06838
06839 xtensa_opcode_encode_fn Opcode_wsr_ibreakenable_encode_fns[] = {
06840 Opcode_wsr_ibreakenable_Slot_inst_encode, 0, 0
06841 };
06842
06843 xtensa_opcode_encode_fn Opcode_xsr_ibreakenable_encode_fns[] = {
06844 Opcode_xsr_ibreakenable_Slot_inst_encode, 0, 0
06845 };
06846
06847 xtensa_opcode_encode_fn Opcode_rsr_debugcause_encode_fns[] = {
06848 Opcode_rsr_debugcause_Slot_inst_encode, 0, 0
06849 };
06850
06851 xtensa_opcode_encode_fn Opcode_wsr_debugcause_encode_fns[] = {
06852 Opcode_wsr_debugcause_Slot_inst_encode, 0, 0
06853 };
06854
06855 xtensa_opcode_encode_fn Opcode_xsr_debugcause_encode_fns[] = {
06856 Opcode_xsr_debugcause_Slot_inst_encode, 0, 0
06857 };
06858
06859 xtensa_opcode_encode_fn Opcode_rsr_icount_encode_fns[] = {
06860 Opcode_rsr_icount_Slot_inst_encode, 0, 0
06861 };
06862
06863 xtensa_opcode_encode_fn Opcode_wsr_icount_encode_fns[] = {
06864 Opcode_wsr_icount_Slot_inst_encode, 0, 0
06865 };
06866
06867 xtensa_opcode_encode_fn Opcode_xsr_icount_encode_fns[] = {
06868 Opcode_xsr_icount_Slot_inst_encode, 0, 0
06869 };
06870
06871 xtensa_opcode_encode_fn Opcode_rsr_icountlevel_encode_fns[] = {
06872 Opcode_rsr_icountlevel_Slot_inst_encode, 0, 0
06873 };
06874
06875 xtensa_opcode_encode_fn Opcode_wsr_icountlevel_encode_fns[] = {
06876 Opcode_wsr_icountlevel_Slot_inst_encode, 0, 0
06877 };
06878
06879 xtensa_opcode_encode_fn Opcode_xsr_icountlevel_encode_fns[] = {
06880 Opcode_xsr_icountlevel_Slot_inst_encode, 0, 0
06881 };
06882
06883 xtensa_opcode_encode_fn Opcode_rsr_ddr_encode_fns[] = {
06884 Opcode_rsr_ddr_Slot_inst_encode, 0, 0
06885 };
06886
06887 xtensa_opcode_encode_fn Opcode_wsr_ddr_encode_fns[] = {
06888 Opcode_wsr_ddr_Slot_inst_encode, 0, 0
06889 };
06890
06891 xtensa_opcode_encode_fn Opcode_xsr_ddr_encode_fns[] = {
06892 Opcode_xsr_ddr_Slot_inst_encode, 0, 0
06893 };
06894
06895 xtensa_opcode_encode_fn Opcode_rfdo_encode_fns[] = {
06896 Opcode_rfdo_Slot_inst_encode, 0, 0
06897 };
06898
06899 xtensa_opcode_encode_fn Opcode_rfdd_encode_fns[] = {
06900 Opcode_rfdd_Slot_inst_encode, 0, 0
06901 };
06902
06903 xtensa_opcode_encode_fn Opcode_rsr_ccount_encode_fns[] = {
06904 Opcode_rsr_ccount_Slot_inst_encode, 0, 0
06905 };
06906
06907 xtensa_opcode_encode_fn Opcode_wsr_ccount_encode_fns[] = {
06908 Opcode_wsr_ccount_Slot_inst_encode, 0, 0
06909 };
06910
06911 xtensa_opcode_encode_fn Opcode_xsr_ccount_encode_fns[] = {
06912 Opcode_xsr_ccount_Slot_inst_encode, 0, 0
06913 };
06914
06915 xtensa_opcode_encode_fn Opcode_rsr_ccompare0_encode_fns[] = {
06916 Opcode_rsr_ccompare0_Slot_inst_encode, 0, 0
06917 };
06918
06919 xtensa_opcode_encode_fn Opcode_wsr_ccompare0_encode_fns[] = {
06920 Opcode_wsr_ccompare0_Slot_inst_encode, 0, 0
06921 };
06922
06923 xtensa_opcode_encode_fn Opcode_xsr_ccompare0_encode_fns[] = {
06924 Opcode_xsr_ccompare0_Slot_inst_encode, 0, 0
06925 };
06926
06927 xtensa_opcode_encode_fn Opcode_rsr_ccompare1_encode_fns[] = {
06928 Opcode_rsr_ccompare1_Slot_inst_encode, 0, 0
06929 };
06930
06931 xtensa_opcode_encode_fn Opcode_wsr_ccompare1_encode_fns[] = {
06932 Opcode_wsr_ccompare1_Slot_inst_encode, 0, 0
06933 };
06934
06935 xtensa_opcode_encode_fn Opcode_xsr_ccompare1_encode_fns[] = {
06936 Opcode_xsr_ccompare1_Slot_inst_encode, 0, 0
06937 };
06938
06939 xtensa_opcode_encode_fn Opcode_rsr_ccompare2_encode_fns[] = {
06940 Opcode_rsr_ccompare2_Slot_inst_encode, 0, 0
06941 };
06942
06943 xtensa_opcode_encode_fn Opcode_wsr_ccompare2_encode_fns[] = {
06944 Opcode_wsr_ccompare2_Slot_inst_encode, 0, 0
06945 };
06946
06947 xtensa_opcode_encode_fn Opcode_xsr_ccompare2_encode_fns[] = {
06948 Opcode_xsr_ccompare2_Slot_inst_encode, 0, 0
06949 };
06950
06951 xtensa_opcode_encode_fn Opcode_ipf_encode_fns[] = {
06952 Opcode_ipf_Slot_inst_encode, 0, 0
06953 };
06954
06955 xtensa_opcode_encode_fn Opcode_ihi_encode_fns[] = {
06956 Opcode_ihi_Slot_inst_encode, 0, 0
06957 };
06958
06959 xtensa_opcode_encode_fn Opcode_iii_encode_fns[] = {
06960 Opcode_iii_Slot_inst_encode, 0, 0
06961 };
06962
06963 xtensa_opcode_encode_fn Opcode_lict_encode_fns[] = {
06964 Opcode_lict_Slot_inst_encode, 0, 0
06965 };
06966
06967 xtensa_opcode_encode_fn Opcode_licw_encode_fns[] = {
06968 Opcode_licw_Slot_inst_encode, 0, 0
06969 };
06970
06971 xtensa_opcode_encode_fn Opcode_sict_encode_fns[] = {
06972 Opcode_sict_Slot_inst_encode, 0, 0
06973 };
06974
06975 xtensa_opcode_encode_fn Opcode_sicw_encode_fns[] = {
06976 Opcode_sicw_Slot_inst_encode, 0, 0
06977 };
06978
06979 xtensa_opcode_encode_fn Opcode_dhwb_encode_fns[] = {
06980 Opcode_dhwb_Slot_inst_encode, 0, 0
06981 };
06982
06983 xtensa_opcode_encode_fn Opcode_dhwbi_encode_fns[] = {
06984 Opcode_dhwbi_Slot_inst_encode, 0, 0
06985 };
06986
06987 xtensa_opcode_encode_fn Opcode_diwb_encode_fns[] = {
06988 Opcode_diwb_Slot_inst_encode, 0, 0
06989 };
06990
06991 xtensa_opcode_encode_fn Opcode_diwbi_encode_fns[] = {
06992 Opcode_diwbi_Slot_inst_encode, 0, 0
06993 };
06994
06995 xtensa_opcode_encode_fn Opcode_dhi_encode_fns[] = {
06996 Opcode_dhi_Slot_inst_encode, 0, 0
06997 };
06998
06999 xtensa_opcode_encode_fn Opcode_dii_encode_fns[] = {
07000 Opcode_dii_Slot_inst_encode, 0, 0
07001 };
07002
07003 xtensa_opcode_encode_fn Opcode_dpfr_encode_fns[] = {
07004 Opcode_dpfr_Slot_inst_encode, 0, 0
07005 };
07006
07007 xtensa_opcode_encode_fn Opcode_dpfw_encode_fns[] = {
07008 Opcode_dpfw_Slot_inst_encode, 0, 0
07009 };
07010
07011 xtensa_opcode_encode_fn Opcode_dpfro_encode_fns[] = {
07012 Opcode_dpfro_Slot_inst_encode, 0, 0
07013 };
07014
07015 xtensa_opcode_encode_fn Opcode_dpfwo_encode_fns[] = {
07016 Opcode_dpfwo_Slot_inst_encode, 0, 0
07017 };
07018
07019 xtensa_opcode_encode_fn Opcode_sdct_encode_fns[] = {
07020 Opcode_sdct_Slot_inst_encode, 0, 0
07021 };
07022
07023 xtensa_opcode_encode_fn Opcode_ldct_encode_fns[] = {
07024 Opcode_ldct_Slot_inst_encode, 0, 0
07025 };
07026
07027 xtensa_opcode_encode_fn Opcode_idtlb_encode_fns[] = {
07028 Opcode_idtlb_Slot_inst_encode, 0, 0
07029 };
07030
07031 xtensa_opcode_encode_fn Opcode_pdtlb_encode_fns[] = {
07032 Opcode_pdtlb_Slot_inst_encode, 0, 0
07033 };
07034
07035 xtensa_opcode_encode_fn Opcode_rdtlb0_encode_fns[] = {
07036 Opcode_rdtlb0_Slot_inst_encode, 0, 0
07037 };
07038
07039 xtensa_opcode_encode_fn Opcode_rdtlb1_encode_fns[] = {
07040 Opcode_rdtlb1_Slot_inst_encode, 0, 0
07041 };
07042
07043 xtensa_opcode_encode_fn Opcode_wdtlb_encode_fns[] = {
07044 Opcode_wdtlb_Slot_inst_encode, 0, 0
07045 };
07046
07047 xtensa_opcode_encode_fn Opcode_iitlb_encode_fns[] = {
07048 Opcode_iitlb_Slot_inst_encode, 0, 0
07049 };
07050
07051 xtensa_opcode_encode_fn Opcode_pitlb_encode_fns[] = {
07052 Opcode_pitlb_Slot_inst_encode, 0, 0
07053 };
07054
07055 xtensa_opcode_encode_fn Opcode_ritlb0_encode_fns[] = {
07056 Opcode_ritlb0_Slot_inst_encode, 0, 0
07057 };
07058
07059 xtensa_opcode_encode_fn Opcode_ritlb1_encode_fns[] = {
07060 Opcode_ritlb1_Slot_inst_encode, 0, 0
07061 };
07062
07063 xtensa_opcode_encode_fn Opcode_witlb_encode_fns[] = {
07064 Opcode_witlb_Slot_inst_encode, 0, 0
07065 };
07066
07067 xtensa_opcode_encode_fn Opcode_nsa_encode_fns[] = {
07068 Opcode_nsa_Slot_inst_encode, 0, 0
07069 };
07070
07071 xtensa_opcode_encode_fn Opcode_nsau_encode_fns[] = {
07072 Opcode_nsau_Slot_inst_encode, 0, 0
07073 };
07074
07075
07076
07077
07078 static xtensa_opcode_internal opcodes[] = {
07079 { "excw", 0 ,
07080 0,
07081 Opcode_excw_encode_fns, 0, 0 },
07082 { "rfe", 1 ,
07083 XTENSA_OPCODE_IS_JUMP,
07084 Opcode_rfe_encode_fns, 0, 0 },
07085 { "rfde", 2 ,
07086 XTENSA_OPCODE_IS_JUMP,
07087 Opcode_rfde_encode_fns, 0, 0 },
07088 { "syscall", 3 ,
07089 0,
07090 Opcode_syscall_encode_fns, 0, 0 },
07091 { "simcall", 4 ,
07092 0,
07093 Opcode_simcall_encode_fns, 0, 0 },
07094 { "call12", 5 ,
07095 XTENSA_OPCODE_IS_CALL,
07096 Opcode_call12_encode_fns, 0, 0 },
07097 { "call8", 6 ,
07098 XTENSA_OPCODE_IS_CALL,
07099 Opcode_call8_encode_fns, 0, 0 },
07100 { "call4", 7 ,
07101 XTENSA_OPCODE_IS_CALL,
07102 Opcode_call4_encode_fns, 0, 0 },
07103 { "callx12", 8 ,
07104 XTENSA_OPCODE_IS_CALL,
07105 Opcode_callx12_encode_fns, 0, 0 },
07106 { "callx8", 9 ,
07107 XTENSA_OPCODE_IS_CALL,
07108 Opcode_callx8_encode_fns, 0, 0 },
07109 { "callx4", 10 ,
07110 XTENSA_OPCODE_IS_CALL,
07111 Opcode_callx4_encode_fns, 0, 0 },
07112 { "entry", 11 ,
07113 0,
07114 Opcode_entry_encode_fns, 0, 0 },
07115 { "movsp", 12 ,
07116 0,
07117 Opcode_movsp_encode_fns, 0, 0 },
07118 { "rotw", 13 ,
07119 0,
07120 Opcode_rotw_encode_fns, 0, 0 },
07121 { "retw", 14 ,
07122 XTENSA_OPCODE_IS_JUMP,
07123 Opcode_retw_encode_fns, 0, 0 },
07124 { "retw.n", 14 ,
07125 XTENSA_OPCODE_IS_JUMP,
07126 Opcode_retw_n_encode_fns, 0, 0 },
07127 { "rfwo", 15 ,
07128 XTENSA_OPCODE_IS_JUMP,
07129 Opcode_rfwo_encode_fns, 0, 0 },
07130 { "rfwu", 15 ,
07131 XTENSA_OPCODE_IS_JUMP,
07132 Opcode_rfwu_encode_fns, 0, 0 },
07133 { "l32e", 16 ,
07134 0,
07135 Opcode_l32e_encode_fns, 0, 0 },
07136 { "s32e", 17 ,
07137 0,
07138 Opcode_s32e_encode_fns, 0, 0 },
07139 { "rsr.windowbase", 18 ,
07140 0,
07141 Opcode_rsr_windowbase_encode_fns, 0, 0 },
07142 { "wsr.windowbase", 19 ,
07143 0,
07144 Opcode_wsr_windowbase_encode_fns, 0, 0 },
07145 { "xsr.windowbase", 20 ,
07146 0,
07147 Opcode_xsr_windowbase_encode_fns, 0, 0 },
07148 { "rsr.windowstart", 21 ,
07149 0,
07150 Opcode_rsr_windowstart_encode_fns, 0, 0 },
07151 { "wsr.windowstart", 22 ,
07152 0,
07153 Opcode_wsr_windowstart_encode_fns, 0, 0 },
07154 { "xsr.windowstart", 23 ,
07155 0,
07156 Opcode_xsr_windowstart_encode_fns, 0, 0 },
07157 { "add.n", 24 ,
07158 0,
07159 Opcode_add_n_encode_fns, 0, 0 },
07160 { "addi.n", 25 ,
07161 0,
07162 Opcode_addi_n_encode_fns, 0, 0 },
07163 { "beqz.n", 26 ,
07164 XTENSA_OPCODE_IS_BRANCH,
07165 Opcode_beqz_n_encode_fns, 0, 0 },
07166 { "bnez.n", 26 ,
07167 XTENSA_OPCODE_IS_BRANCH,
07168 Opcode_bnez_n_encode_fns, 0, 0 },
07169 { "ill.n", 27 ,
07170 0,
07171 Opcode_ill_n_encode_fns, 0, 0 },
07172 { "l32i.n", 28 ,
07173 0,
07174 Opcode_l32i_n_encode_fns, 0, 0 },
07175 { "mov.n", 29 ,
07176 0,
07177 Opcode_mov_n_encode_fns, 0, 0 },
07178 { "movi.n", 30 ,
07179 0,
07180 Opcode_movi_n_encode_fns, 0, 0 },
07181 { "nop.n", 31 ,
07182 0,
07183 Opcode_nop_n_encode_fns, 0, 0 },
07184 { "ret.n", 32 ,
07185 XTENSA_OPCODE_IS_JUMP,
07186 Opcode_ret_n_encode_fns, 0, 0 },
07187 { "s32i.n", 33 ,
07188 0,
07189 Opcode_s32i_n_encode_fns, 0, 0 },
07190 { "addi", 34 ,
07191 0,
07192 Opcode_addi_encode_fns, 0, 0 },
07193 { "addmi", 35 ,
07194 0,
07195 Opcode_addmi_encode_fns, 0, 0 },
07196 { "add", 36 ,
07197 0,
07198 Opcode_add_encode_fns, 0, 0 },
07199 { "sub", 36 ,
07200 0,
07201 Opcode_sub_encode_fns, 0, 0 },
07202 { "addx2", 36 ,
07203 0,
07204 Opcode_addx2_encode_fns, 0, 0 },
07205 { "addx4", 36 ,
07206 0,
07207 Opcode_addx4_encode_fns, 0, 0 },
07208 { "addx8", 36 ,
07209 0,
07210 Opcode_addx8_encode_fns, 0, 0 },
07211 { "subx2", 36 ,
07212 0,
07213 Opcode_subx2_encode_fns, 0, 0 },
07214 { "subx4", 36 ,
07215 0,
07216 Opcode_subx4_encode_fns, 0, 0 },
07217 { "subx8", 36 ,
07218 0,
07219 Opcode_subx8_encode_fns, 0, 0 },
07220 { "and", 37 ,
07221 0,
07222 Opcode_and_encode_fns, 0, 0 },
07223 { "or", 37 ,
07224 0,
07225 Opcode_or_encode_fns, 0, 0 },
07226 { "xor", 37 ,
07227 0,
07228 Opcode_xor_encode_fns, 0, 0 },
07229 { "beqi", 38 ,
07230 XTENSA_OPCODE_IS_BRANCH,
07231 Opcode_beqi_encode_fns, 0, 0 },
07232 { "bnei", 38 ,
07233 XTENSA_OPCODE_IS_BRANCH,
07234 Opcode_bnei_encode_fns, 0, 0 },
07235 { "bgei", 38 ,
07236 XTENSA_OPCODE_IS_BRANCH,
07237 Opcode_bgei_encode_fns, 0, 0 },
07238 { "blti", 38 ,
07239 XTENSA_OPCODE_IS_BRANCH,
07240 Opcode_blti_encode_fns, 0, 0 },
07241 { "bbci", 39 ,
07242 XTENSA_OPCODE_IS_BRANCH,
07243 Opcode_bbci_encode_fns, 0, 0 },
07244 { "bbsi", 39 ,
07245 XTENSA_OPCODE_IS_BRANCH,
07246 Opcode_bbsi_encode_fns, 0, 0 },
07247 { "bgeui", 40 ,
07248 XTENSA_OPCODE_IS_BRANCH,
07249 Opcode_bgeui_encode_fns, 0, 0 },
07250 { "bltui", 40 ,
07251 XTENSA_OPCODE_IS_BRANCH,
07252 Opcode_bltui_encode_fns, 0, 0 },
07253 { "beq", 41 ,
07254 XTENSA_OPCODE_IS_BRANCH,
07255 Opcode_beq_encode_fns, 0, 0 },
07256 { "bne", 41 ,
07257 XTENSA_OPCODE_IS_BRANCH,
07258 Opcode_bne_encode_fns, 0, 0 },
07259 { "bge", 41 ,
07260 XTENSA_OPCODE_IS_BRANCH,
07261 Opcode_bge_encode_fns, 0, 0 },
07262 { "blt", 41 ,
07263 XTENSA_OPCODE_IS_BRANCH,
07264 Opcode_blt_encode_fns, 0, 0 },
07265 { "bgeu", 41 ,
07266 XTENSA_OPCODE_IS_BRANCH,
07267 Opcode_bgeu_encode_fns, 0, 0 },
07268 { "bltu", 41 ,
07269 XTENSA_OPCODE_IS_BRANCH,
07270 Opcode_bltu_encode_fns, 0, 0 },
07271 { "bany", 41 ,
07272 XTENSA_OPCODE_IS_BRANCH,
07273 Opcode_bany_encode_fns, 0, 0 },
07274 { "bnone", 41 ,
07275 XTENSA_OPCODE_IS_BRANCH,
07276 Opcode_bnone_encode_fns, 0, 0 },
07277 { "ball", 41 ,
07278 XTENSA_OPCODE_IS_BRANCH,
07279 Opcode_ball_encode_fns, 0, 0 },
07280 { "bnall", 41 ,
07281 XTENSA_OPCODE_IS_BRANCH,
07282 Opcode_bnall_encode_fns, 0, 0 },
07283 { "bbc", 41 ,
07284 XTENSA_OPCODE_IS_BRANCH,
07285 Opcode_bbc_encode_fns, 0, 0 },
07286 { "bbs", 41 ,
07287 XTENSA_OPCODE_IS_BRANCH,
07288 Opcode_bbs_encode_fns, 0, 0 },
07289 { "beqz", 42 ,
07290 XTENSA_OPCODE_IS_BRANCH,
07291 Opcode_beqz_encode_fns, 0, 0 },
07292 { "bnez", 42 ,
07293 XTENSA_OPCODE_IS_BRANCH,
07294 Opcode_bnez_encode_fns, 0, 0 },
07295 { "bgez", 42 ,
07296 XTENSA_OPCODE_IS_BRANCH,
07297 Opcode_bgez_encode_fns, 0, 0 },
07298 { "bltz", 42 ,
07299 XTENSA_OPCODE_IS_BRANCH,
07300 Opcode_bltz_encode_fns, 0, 0 },
07301 { "call0", 43 ,
07302 XTENSA_OPCODE_IS_CALL,
07303 Opcode_call0_encode_fns, 0, 0 },
07304 { "callx0", 44 ,
07305 XTENSA_OPCODE_IS_CALL,
07306 Opcode_callx0_encode_fns, 0, 0 },
07307 { "extui", 45 ,
07308 0,
07309 Opcode_extui_encode_fns, 0, 0 },
07310 { "ill", 46 ,
07311 0,
07312 Opcode_ill_encode_fns, 0, 0 },
07313 { "j", 47 ,
07314 XTENSA_OPCODE_IS_JUMP,
07315 Opcode_j_encode_fns, 0, 0 },
07316 { "jx", 48 ,
07317 XTENSA_OPCODE_IS_JUMP,
07318 Opcode_jx_encode_fns, 0, 0 },
07319 { "l16ui", 49 ,
07320 0,
07321 Opcode_l16ui_encode_fns, 0, 0 },
07322 { "l16si", 50 ,
07323 0,
07324 Opcode_l16si_encode_fns, 0, 0 },
07325 { "l32i", 51 ,
07326 0,
07327 Opcode_l32i_encode_fns, 0, 0 },
07328 { "l32r", 52 ,
07329 0,
07330 Opcode_l32r_encode_fns, 0, 0 },
07331 { "l8ui", 53 ,
07332 0,
07333 Opcode_l8ui_encode_fns, 0, 0 },
07334 { "loop", 54 ,
07335 XTENSA_OPCODE_IS_LOOP,
07336 Opcode_loop_encode_fns, 0, 0 },
07337 { "loopnez", 55 ,
07338 XTENSA_OPCODE_IS_LOOP,
07339 Opcode_loopnez_encode_fns, 0, 0 },
07340 { "loopgtz", 55 ,
07341 XTENSA_OPCODE_IS_LOOP,
07342 Opcode_loopgtz_encode_fns, 0, 0 },
07343 { "movi", 56 ,
07344 0,
07345 Opcode_movi_encode_fns, 0, 0 },
07346 { "moveqz", 57 ,
07347 0,
07348 Opcode_moveqz_encode_fns, 0, 0 },
07349 { "movnez", 57 ,
07350 0,
07351 Opcode_movnez_encode_fns, 0, 0 },
07352 { "movltz", 57 ,
07353 0,
07354 Opcode_movltz_encode_fns, 0, 0 },
07355 { "movgez", 57 ,
07356 0,
07357 Opcode_movgez_encode_fns, 0, 0 },
07358 { "neg", 58 ,
07359 0,
07360 Opcode_neg_encode_fns, 0, 0 },
07361 { "abs", 58 ,
07362 0,
07363 Opcode_abs_encode_fns, 0, 0 },
07364 { "nop", 59 ,
07365 0,
07366 Opcode_nop_encode_fns, 0, 0 },
07367 { "ret", 60 ,
07368 XTENSA_OPCODE_IS_JUMP,
07369 Opcode_ret_encode_fns, 0, 0 },
07370 { "s16i", 61 ,
07371 0,
07372 Opcode_s16i_encode_fns, 0, 0 },
07373 { "s32i", 62 ,
07374 0,
07375 Opcode_s32i_encode_fns, 0, 0 },
07376 { "s8i", 63 ,
07377 0,
07378 Opcode_s8i_encode_fns, 0, 0 },
07379 { "ssr", 64 ,
07380 0,
07381 Opcode_ssr_encode_fns, 0, 0 },
07382 { "ssl", 64 ,
07383 0,
07384 Opcode_ssl_encode_fns, 0, 0 },
07385 { "ssa8l", 64 ,
07386 0,
07387 Opcode_ssa8l_encode_fns, 0, 0 },
07388 { "ssa8b", 64 ,
07389 0,
07390 Opcode_ssa8b_encode_fns, 0, 0 },
07391 { "ssai", 65 ,
07392 0,
07393 Opcode_ssai_encode_fns, 0, 0 },
07394 { "sll", 66 ,
07395 0,
07396 Opcode_sll_encode_fns, 0, 0 },
07397 { "src", 67 ,
07398 0,
07399 Opcode_src_encode_fns, 0, 0 },
07400 { "srl", 68 ,
07401 0,
07402 Opcode_srl_encode_fns, 0, 0 },
07403 { "sra", 68 ,
07404 0,
07405 Opcode_sra_encode_fns, 0, 0 },
07406 { "slli", 69 ,
07407 0,
07408 Opcode_slli_encode_fns, 0, 0 },
07409 { "srai", 70 ,
07410 0,
07411 Opcode_srai_encode_fns, 0, 0 },
07412 { "srli", 71 ,
07413 0,
07414 Opcode_srli_encode_fns, 0, 0 },
07415 { "memw", 72 ,
07416 0,
07417 Opcode_memw_encode_fns, 0, 0 },
07418 { "extw", 73 ,
07419 0,
07420 Opcode_extw_encode_fns, 0, 0 },
07421 { "isync", 74 ,
07422 0,
07423 Opcode_isync_encode_fns, 0, 0 },
07424 { "rsync", 75 ,
07425 0,
07426 Opcode_rsync_encode_fns, 0, 0 },
07427 { "esync", 75 ,
07428 0,
07429 Opcode_esync_encode_fns, 0, 0 },
07430 { "dsync", 75 ,
07431 0,
07432 Opcode_dsync_encode_fns, 0, 0 },
07433 { "rsil", 76 ,
07434 0,
07435 Opcode_rsil_encode_fns, 0, 0 },
07436 { "rsr.lend", 77 ,
07437 0,
07438 Opcode_rsr_lend_encode_fns, 0, 0 },
07439 { "wsr.lend", 78 ,
07440 0,
07441 Opcode_wsr_lend_encode_fns, 0, 0 },
07442 { "xsr.lend", 79 ,
07443 0,
07444 Opcode_xsr_lend_encode_fns, 0, 0 },
07445 { "rsr.lcount", 80 ,
07446 0,
07447 Opcode_rsr_lcount_encode_fns, 0, 0 },
07448 { "wsr.lcount", 81 ,
07449 0,
07450 Opcode_wsr_lcount_encode_fns, 0, 0 },
07451 { "xsr.lcount", 82 ,
07452 0,
07453 Opcode_xsr_lcount_encode_fns, 0, 0 },
07454 { "rsr.lbeg", 83 ,
07455 0,
07456 Opcode_rsr_lbeg_encode_fns, 0, 0 },
07457 { "wsr.lbeg", 84 ,
07458 0,
07459 Opcode_wsr_lbeg_encode_fns, 0, 0 },
07460 { "xsr.lbeg", 85 ,
07461 0,
07462 Opcode_xsr_lbeg_encode_fns, 0, 0 },
07463 { "rsr.sar", 86 ,
07464 0,
07465 Opcode_rsr_sar_encode_fns, 0, 0 },
07466 { "wsr.sar", 87 ,
07467 0,
07468 Opcode_wsr_sar_encode_fns, 0, 0 },
07469 { "xsr.sar", 88 ,
07470 0,
07471 Opcode_xsr_sar_encode_fns, 0, 0 },
07472 { "rsr.litbase", 89 ,
07473 0,
07474 Opcode_rsr_litbase_encode_fns, 0, 0 },
07475 { "wsr.litbase", 90 ,
07476 0,
07477 Opcode_wsr_litbase_encode_fns, 0, 0 },
07478 { "xsr.litbase", 91 ,
07479 0,
07480 Opcode_xsr_litbase_encode_fns, 0, 0 },
07481 { "rsr.176", 92 ,
07482 0,
07483 Opcode_rsr_176_encode_fns, 0, 0 },
07484 { "rsr.208", 93 ,
07485 0,
07486 Opcode_rsr_208_encode_fns, 0, 0 },
07487 { "rsr.ps", 94 ,
07488 0,
07489 Opcode_rsr_ps_encode_fns, 0, 0 },
07490 { "wsr.ps", 95 ,
07491 0,
07492 Opcode_wsr_ps_encode_fns, 0, 0 },
07493 { "xsr.ps", 96 ,
07494 0,
07495 Opcode_xsr_ps_encode_fns, 0, 0 },
07496 { "rsr.epc1", 97 ,
07497 0,
07498 Opcode_rsr_epc1_encode_fns, 0, 0 },
07499 { "wsr.epc1", 98 ,
07500 0,
07501 Opcode_wsr_epc1_encode_fns, 0, 0 },
07502 { "xsr.epc1", 99 ,
07503 0,
07504 Opcode_xsr_epc1_encode_fns, 0, 0 },
07505 { "rsr.excsave1", 100 ,
07506 0,
07507 Opcode_rsr_excsave1_encode_fns, 0, 0 },
07508 { "wsr.excsave1", 101 ,
07509 0,
07510 Opcode_wsr_excsave1_encode_fns, 0, 0 },
07511 { "xsr.excsave1", 102 ,
07512 0,
07513 Opcode_xsr_excsave1_encode_fns, 0, 0 },
07514 { "rsr.epc2", 103 ,
07515 0,
07516 Opcode_rsr_epc2_encode_fns, 0, 0 },
07517 { "wsr.epc2", 104 ,
07518 0,
07519 Opcode_wsr_epc2_encode_fns, 0, 0 },
07520 { "xsr.epc2", 105 ,
07521 0,
07522 Opcode_xsr_epc2_encode_fns, 0, 0 },
07523 { "rsr.excsave2", 106 ,
07524 0,
07525 Opcode_rsr_excsave2_encode_fns, 0, 0 },
07526 { "wsr.excsave2", 107 ,
07527 0,
07528 Opcode_wsr_excsave2_encode_fns, 0, 0 },
07529 { "xsr.excsave2", 108 ,
07530 0,
07531 Opcode_xsr_excsave2_encode_fns, 0, 0 },
07532 { "rsr.epc3", 109 ,
07533 0,
07534 Opcode_rsr_epc3_encode_fns, 0, 0 },
07535 { "wsr.epc3", 110 ,
07536 0,
07537 Opcode_wsr_epc3_encode_fns, 0, 0 },
07538 { "xsr.epc3", 111 ,
07539 0,
07540 Opcode_xsr_epc3_encode_fns, 0, 0 },
07541 { "rsr.excsave3", 112 ,
07542 0,
07543 Opcode_rsr_excsave3_encode_fns, 0, 0 },
07544 { "wsr.excsave3", 113 ,
07545 0,
07546 Opcode_wsr_excsave3_encode_fns, 0, 0 },
07547 { "xsr.excsave3", 114 ,
07548 0,
07549 Opcode_xsr_excsave3_encode_fns, 0, 0 },
07550 { "rsr.epc4", 115 ,
07551 0,
07552 Opcode_rsr_epc4_encode_fns, 0, 0 },
07553 { "wsr.epc4", 116 ,
07554 0,
07555 Opcode_wsr_epc4_encode_fns, 0, 0 },
07556 { "xsr.epc4", 117 ,
07557 0,
07558 Opcode_xsr_epc4_encode_fns, 0, 0 },
07559 { "rsr.excsave4", 118 ,
07560 0,
07561 Opcode_rsr_excsave4_encode_fns, 0, 0 },
07562 { "wsr.excsave4", 119 ,
07563 0,
07564 Opcode_wsr_excsave4_encode_fns, 0, 0 },
07565 { "xsr.excsave4", 120 ,
07566 0,
07567 Opcode_xsr_excsave4_encode_fns, 0, 0 },
07568 { "rsr.eps2", 121 ,
07569 0,
07570 Opcode_rsr_eps2_encode_fns, 0, 0 },
07571 { "wsr.eps2", 122 ,
07572 0,
07573 Opcode_wsr_eps2_encode_fns, 0, 0 },
07574 { "xsr.eps2", 123 ,
07575 0,
07576 Opcode_xsr_eps2_encode_fns, 0, 0 },
07577 { "rsr.eps3", 124 ,
07578 0,
07579 Opcode_rsr_eps3_encode_fns, 0, 0 },
07580 { "wsr.eps3", 125 ,
07581 0,
07582 Opcode_wsr_eps3_encode_fns, 0, 0 },
07583 { "xsr.eps3", 126 ,
07584 0,
07585 Opcode_xsr_eps3_encode_fns, 0, 0 },
07586 { "rsr.eps4", 127 ,
07587 0,
07588 Opcode_rsr_eps4_encode_fns, 0, 0 },
07589 { "wsr.eps4", 128 ,
07590 0,
07591 Opcode_wsr_eps4_encode_fns, 0, 0 },
07592 { "xsr.eps4", 129 ,
07593 0,
07594 Opcode_xsr_eps4_encode_fns, 0, 0 },
07595 { "rsr.excvaddr", 130 ,
07596 0,
07597 Opcode_rsr_excvaddr_encode_fns, 0, 0 },
07598 { "wsr.excvaddr", 131 ,
07599 0,
07600 Opcode_wsr_excvaddr_encode_fns, 0, 0 },
07601 { "xsr.excvaddr", 132 ,
07602 0,
07603 Opcode_xsr_excvaddr_encode_fns, 0, 0 },
07604 { "rsr.depc", 133 ,
07605 0,
07606 Opcode_rsr_depc_encode_fns, 0, 0 },
07607 { "wsr.depc", 134 ,
07608 0,
07609 Opcode_wsr_depc_encode_fns, 0, 0 },
07610 { "xsr.depc", 135 ,
07611 0,
07612 Opcode_xsr_depc_encode_fns, 0, 0 },
07613 { "rsr.exccause", 136 ,
07614 0,
07615 Opcode_rsr_exccause_encode_fns, 0, 0 },
07616 { "wsr.exccause", 137 ,
07617 0,
07618 Opcode_wsr_exccause_encode_fns, 0, 0 },
07619 { "xsr.exccause", 138 ,
07620 0,
07621 Opcode_xsr_exccause_encode_fns, 0, 0 },
07622 { "rsr.misc0", 139 ,
07623 0,
07624 Opcode_rsr_misc0_encode_fns, 0, 0 },
07625 { "wsr.misc0", 140 ,
07626 0,
07627 Opcode_wsr_misc0_encode_fns, 0, 0 },
07628 { "xsr.misc0", 141 ,
07629 0,
07630 Opcode_xsr_misc0_encode_fns, 0, 0 },
07631 { "rsr.misc1", 142 ,
07632 0,
07633 Opcode_rsr_misc1_encode_fns, 0, 0 },
07634 { "wsr.misc1", 143 ,
07635 0,
07636 Opcode_wsr_misc1_encode_fns, 0, 0 },
07637 { "xsr.misc1", 144 ,
07638 0,
07639 Opcode_xsr_misc1_encode_fns, 0, 0 },
07640 { "rsr.prid", 145 ,
07641 0,
07642 Opcode_rsr_prid_encode_fns, 0, 0 },
07643 { "rfi", 146 ,
07644 XTENSA_OPCODE_IS_JUMP,
07645 Opcode_rfi_encode_fns, 0, 0 },
07646 { "waiti", 147 ,
07647 0,
07648 Opcode_waiti_encode_fns, 0, 0 },
07649 { "rsr.interrupt", 148 ,
07650 0,
07651 Opcode_rsr_interrupt_encode_fns, 0, 0 },
07652 { "wsr.intset", 149 ,
07653 0,
07654 Opcode_wsr_intset_encode_fns, 0, 0 },
07655 { "wsr.intclear", 150 ,
07656 0,
07657 Opcode_wsr_intclear_encode_fns, 0, 0 },
07658 { "rsr.intenable", 151 ,
07659 0,
07660 Opcode_rsr_intenable_encode_fns, 0, 0 },
07661 { "wsr.intenable", 152 ,
07662 0,
07663 Opcode_wsr_intenable_encode_fns, 0, 0 },
07664 { "xsr.intenable", 153 ,
07665 0,
07666 Opcode_xsr_intenable_encode_fns, 0, 0 },
07667 { "break", 154 ,
07668 0,
07669 Opcode_break_encode_fns, 0, 0 },
07670 { "break.n", 155 ,
07671 0,
07672 Opcode_break_n_encode_fns, 0, 0 },
07673 { "rsr.dbreaka0", 156 ,
07674 0,
07675 Opcode_rsr_dbreaka0_encode_fns, 0, 0 },
07676 { "wsr.dbreaka0", 157 ,
07677 0,
07678 Opcode_wsr_dbreaka0_encode_fns, 0, 0 },
07679 { "xsr.dbreaka0", 158 ,
07680 0,
07681 Opcode_xsr_dbreaka0_encode_fns, 0, 0 },
07682 { "rsr.dbreakc0", 159 ,
07683 0,
07684 Opcode_rsr_dbreakc0_encode_fns, 0, 0 },
07685 { "wsr.dbreakc0", 160 ,
07686 0,
07687 Opcode_wsr_dbreakc0_encode_fns, 0, 0 },
07688 { "xsr.dbreakc0", 161 ,
07689 0,
07690 Opcode_xsr_dbreakc0_encode_fns, 0, 0 },
07691 { "rsr.dbreaka1", 162 ,
07692 0,
07693 Opcode_rsr_dbreaka1_encode_fns, 0, 0 },
07694 { "wsr.dbreaka1", 163 ,
07695 0,
07696 Opcode_wsr_dbreaka1_encode_fns, 0, 0 },
07697 { "xsr.dbreaka1", 164 ,
07698 0,
07699 Opcode_xsr_dbreaka1_encode_fns, 0, 0 },
07700 { "rsr.dbreakc1", 165 ,
07701 0,
07702 Opcode_rsr_dbreakc1_encode_fns, 0, 0 },
07703 { "wsr.dbreakc1", 166 ,
07704 0,
07705 Opcode_wsr_dbreakc1_encode_fns, 0, 0 },
07706 { "xsr.dbreakc1", 167 ,
07707 0,
07708 Opcode_xsr_dbreakc1_encode_fns, 0, 0 },
07709 { "rsr.ibreaka0", 168 ,
07710 0,
07711 Opcode_rsr_ibreaka0_encode_fns, 0, 0 },
07712 { "wsr.ibreaka0", 169 ,
07713 0,
07714 Opcode_wsr_ibreaka0_encode_fns, 0, 0 },
07715 { "xsr.ibreaka0", 170 ,
07716 0,
07717 Opcode_xsr_ibreaka0_encode_fns, 0, 0 },
07718 { "rsr.ibreaka1", 171 ,
07719 0,
07720 Opcode_rsr_ibreaka1_encode_fns, 0, 0 },
07721 { "wsr.ibreaka1", 172 ,
07722 0,
07723 Opcode_wsr_ibreaka1_encode_fns, 0, 0 },
07724 { "xsr.ibreaka1", 173 ,
07725 0,
07726 Opcode_xsr_ibreaka1_encode_fns, 0, 0 },
07727 { "rsr.ibreakenable", 174 ,
07728 0,
07729 Opcode_rsr_ibreakenable_encode_fns, 0, 0 },
07730 { "wsr.ibreakenable", 175 ,
07731 0,
07732 Opcode_wsr_ibreakenable_encode_fns, 0, 0 },
07733 { "xsr.ibreakenable", 176 ,
07734 0,
07735 Opcode_xsr_ibreakenable_encode_fns, 0, 0 },
07736 { "rsr.debugcause", 177 ,
07737 0,
07738 Opcode_rsr_debugcause_encode_fns, 0, 0 },
07739 { "wsr.debugcause", 178 ,
07740 0,
07741 Opcode_wsr_debugcause_encode_fns, 0, 0 },
07742 { "xsr.debugcause", 179 ,
07743 0,
07744 Opcode_xsr_debugcause_encode_fns, 0, 0 },
07745 { "rsr.icount", 180 ,
07746 0,
07747 Opcode_rsr_icount_encode_fns, 0, 0 },
07748 { "wsr.icount", 181 ,
07749 0,
07750 Opcode_wsr_icount_encode_fns, 0, 0 },
07751 { "xsr.icount", 182 ,
07752 0,
07753 Opcode_xsr_icount_encode_fns, 0, 0 },
07754 { "rsr.icountlevel", 183 ,
07755 0,
07756 Opcode_rsr_icountlevel_encode_fns, 0, 0 },
07757 { "wsr.icountlevel", 184 ,
07758 0,
07759 Opcode_wsr_icountlevel_encode_fns, 0, 0 },
07760 { "xsr.icountlevel", 185 ,
07761 0,
07762 Opcode_xsr_icountlevel_encode_fns, 0, 0 },
07763 { "rsr.ddr", 186 ,
07764 0,
07765 Opcode_rsr_ddr_encode_fns, 0, 0 },
07766 { "wsr.ddr", 187 ,
07767 0,
07768 Opcode_wsr_ddr_encode_fns, 0, 0 },
07769 { "xsr.ddr", 188 ,
07770 0,
07771 Opcode_xsr_ddr_encode_fns, 0, 0 },
07772 { "rfdo", 189 ,
07773 XTENSA_OPCODE_IS_JUMP,
07774 Opcode_rfdo_encode_fns, 0, 0 },
07775 { "rfdd", 190 ,
07776 XTENSA_OPCODE_IS_JUMP,
07777 Opcode_rfdd_encode_fns, 0, 0 },
07778 { "rsr.ccount", 191 ,
07779 0,
07780 Opcode_rsr_ccount_encode_fns, 0, 0 },
07781 { "wsr.ccount", 192 ,
07782 0,
07783 Opcode_wsr_ccount_encode_fns, 0, 0 },
07784 { "xsr.ccount", 193 ,
07785 0,
07786 Opcode_xsr_ccount_encode_fns, 0, 0 },
07787 { "rsr.ccompare0", 194 ,
07788 0,
07789 Opcode_rsr_ccompare0_encode_fns, 0, 0 },
07790 { "wsr.ccompare0", 195 ,
07791 0,
07792 Opcode_wsr_ccompare0_encode_fns, 0, 0 },
07793 { "xsr.ccompare0", 196 ,
07794 0,
07795 Opcode_xsr_ccompare0_encode_fns, 0, 0 },
07796 { "rsr.ccompare1", 197 ,
07797 0,
07798 Opcode_rsr_ccompare1_encode_fns, 0, 0 },
07799 { "wsr.ccompare1", 198 ,
07800 0,
07801 Opcode_wsr_ccompare1_encode_fns, 0, 0 },
07802 { "xsr.ccompare1", 199 ,
07803 0,
07804 Opcode_xsr_ccompare1_encode_fns, 0, 0 },
07805 { "rsr.ccompare2", 200 ,
07806 0,
07807 Opcode_rsr_ccompare2_encode_fns, 0, 0 },
07808 { "wsr.ccompare2", 201 ,
07809 0,
07810 Opcode_wsr_ccompare2_encode_fns, 0, 0 },
07811 { "xsr.ccompare2", 202 ,
07812 0,
07813 Opcode_xsr_ccompare2_encode_fns, 0, 0 },
07814 { "ipf", 203 ,
07815 0,
07816 Opcode_ipf_encode_fns, 0, 0 },
07817 { "ihi", 203 ,
07818 0,
07819 Opcode_ihi_encode_fns, 0, 0 },
07820 { "iii", 204 ,
07821 0,
07822 Opcode_iii_encode_fns, 0, 0 },
07823 { "lict", 205 ,
07824 0,
07825 Opcode_lict_encode_fns, 0, 0 },
07826 { "licw", 205 ,
07827 0,
07828 Opcode_licw_encode_fns, 0, 0 },
07829 { "sict", 206 ,
07830 0,
07831 Opcode_sict_encode_fns, 0, 0 },
07832 { "sicw", 206 ,
07833 0,
07834 Opcode_sicw_encode_fns, 0, 0 },
07835 { "dhwb", 207 ,
07836 0,
07837 Opcode_dhwb_encode_fns, 0, 0 },
07838 { "dhwbi", 207 ,
07839 0,
07840 Opcode_dhwbi_encode_fns, 0, 0 },
07841 { "diwb", 208 ,
07842 0,
07843 Opcode_diwb_encode_fns, 0, 0 },
07844 { "diwbi", 208 ,
07845 0,
07846 Opcode_diwbi_encode_fns, 0, 0 },
07847 { "dhi", 209 ,
07848 0,
07849 Opcode_dhi_encode_fns, 0, 0 },
07850 { "dii", 209 ,
07851 0,
07852 Opcode_dii_encode_fns, 0, 0 },
07853 { "dpfr", 210 ,
07854 0,
07855 Opcode_dpfr_encode_fns, 0, 0 },
07856 { "dpfw", 210 ,
07857 0,
07858 Opcode_dpfw_encode_fns, 0, 0 },
07859 { "dpfro", 210 ,
07860 0,
07861 Opcode_dpfro_encode_fns, 0, 0 },
07862 { "dpfwo", 210 ,
07863 0,
07864 Opcode_dpfwo_encode_fns, 0, 0 },
07865 { "sdct", 211 ,
07866 0,
07867 Opcode_sdct_encode_fns, 0, 0 },
07868 { "ldct", 212 ,
07869 0,
07870 Opcode_ldct_encode_fns, 0, 0 },
07871 { "idtlb", 213 ,
07872 0,
07873 Opcode_idtlb_encode_fns, 0, 0 },
07874 { "pdtlb", 214 ,
07875 0,
07876 Opcode_pdtlb_encode_fns, 0, 0 },
07877 { "rdtlb0", 214 ,
07878 0,
07879 Opcode_rdtlb0_encode_fns, 0, 0 },
07880 { "rdtlb1", 214 ,
07881 0,
07882 Opcode_rdtlb1_encode_fns, 0, 0 },
07883 { "wdtlb", 215 ,
07884 0,
07885 Opcode_wdtlb_encode_fns, 0, 0 },
07886 { "iitlb", 216 ,
07887 0,
07888 Opcode_iitlb_encode_fns, 0, 0 },
07889 { "pitlb", 217 ,
07890 0,
07891 Opcode_pitlb_encode_fns, 0, 0 },
07892 { "ritlb0", 217 ,
07893 0,
07894 Opcode_ritlb0_encode_fns, 0, 0 },
07895 { "ritlb1", 217 ,
07896 0,
07897 Opcode_ritlb1_encode_fns, 0, 0 },
07898 { "witlb", 218 ,
07899 0,
07900 Opcode_witlb_encode_fns, 0, 0 },
07901 { "nsa", 219 ,
07902 0,
07903 Opcode_nsa_encode_fns, 0, 0 },
07904 { "nsau", 219 ,
07905 0,
07906 Opcode_nsau_encode_fns, 0, 0 }
07907 };
07908
07909
07910
07911
07912 static int
07913 Slot_inst_decode (const xtensa_insnbuf insn)
07914 {
07915 switch (Field_op0_Slot_inst_get (insn))
07916 {
07917 case 0:
07918 switch (Field_op1_Slot_inst_get (insn))
07919 {
07920 case 0:
07921 switch (Field_op2_Slot_inst_get (insn))
07922 {
07923 case 0:
07924 switch (Field_r_Slot_inst_get (insn))
07925 {
07926 case 0:
07927 switch (Field_m_Slot_inst_get (insn))
07928 {
07929 case 0:
07930 return 77;
07931 case 2:
07932 switch (Field_n_Slot_inst_get (insn))
07933 {
07934 case 0:
07935 return 96;
07936 case 1:
07937 return 14;
07938 case 2:
07939 return 79;
07940 }
07941 break;
07942 case 3:
07943 switch (Field_n_Slot_inst_get (insn))
07944 {
07945 case 0:
07946 return 75;
07947 case 1:
07948 return 10;
07949 case 2:
07950 return 9;
07951 case 3:
07952 return 8;
07953 }
07954 break;
07955 }
07956 break;
07957 case 1:
07958 return 12;
07959 case 2:
07960 if (Field_s_Slot_inst_get (insn) == 0)
07961 {
07962 switch (Field_t_Slot_inst_get (insn))
07963 {
07964 case 0:
07965 return 114;
07966 case 1:
07967 return 115;
07968 case 2:
07969 return 116;
07970 case 3:
07971 return 117;
07972 case 8:
07973 return 0;
07974 case 12:
07975 return 112;
07976 case 13:
07977 return 113;
07978 case 15:
07979 return 95;
07980 }
07981 }
07982 break;
07983 case 3:
07984 switch (Field_t_Slot_inst_get (insn))
07985 {
07986 case 0:
07987 switch (Field_s_Slot_inst_get (insn))
07988 {
07989 case 0:
07990 return 1;
07991 case 2:
07992 return 2;
07993 case 4:
07994 return 16;
07995 case 5:
07996 return 17;
07997 }
07998 break;
07999 case 1:
08000 return 188;
08001 }
08002 break;
08003 case 4:
08004 return 196;
08005 case 5:
08006 switch (Field_s_Slot_inst_get (insn))
08007 {
08008 case 0:
08009 if (Field_t_Slot_inst_get (insn) == 0)
08010 return 3;
08011 break;
08012 case 1:
08013 if (Field_t_Slot_inst_get (insn) == 0)
08014 return 4;
08015 break;
08016 }
08017 break;
08018 case 6:
08019 return 118;
08020 case 7:
08021 if (Field_t_Slot_inst_get (insn) == 0)
08022 return 189;
08023 break;
08024 }
08025 break;
08026 case 1:
08027 return 47;
08028 case 2:
08029 return 48;
08030 case 3:
08031 return 49;
08032 case 4:
08033 switch (Field_r_Slot_inst_get (insn))
08034 {
08035 case 0:
08036 if (Field_t_Slot_inst_get (insn) == 0)
08037 return 100;
08038 break;
08039 case 1:
08040 if (Field_t_Slot_inst_get (insn) == 0)
08041 return 101;
08042 break;
08043 case 2:
08044 if (Field_t_Slot_inst_get (insn) == 0)
08045 return 102;
08046 break;
08047 case 3:
08048 if (Field_t_Slot_inst_get (insn) == 0)
08049 return 103;
08050 break;
08051 case 4:
08052 if (Field_thi3_Slot_inst_get (insn) == 0)
08053 return 104;
08054 break;
08055 case 8:
08056 if (Field_s_Slot_inst_get (insn) == 0)
08057 return 13;
08058 break;
08059 case 14:
08060 return 274;
08061 case 15:
08062 return 275;
08063 }
08064 break;
08065 case 5:
08066 switch (Field_r_Slot_inst_get (insn))
08067 {
08068 case 3:
08069 return 271;
08070 case 4:
08071 return 269;
08072 case 5:
08073 return 270;
08074 case 6:
08075 return 273;
08076 case 7:
08077 return 272;
08078 case 11:
08079 return 266;
08080 case 12:
08081 return 264;
08082 case 13:
08083 return 265;
08084 case 14:
08085 return 268;
08086 case 15:
08087 return 267;
08088 }
08089 break;
08090 case 6:
08091 switch (Field_s_Slot_inst_get (insn))
08092 {
08093 case 0:
08094 return 93;
08095 case 1:
08096 return 94;
08097 }
08098 break;
08099 case 8:
08100 return 39;
08101 case 9:
08102 return 41;
08103 case 10:
08104 return 42;
08105 case 11:
08106 return 43;
08107 case 12:
08108 return 40;
08109 case 13:
08110 return 44;
08111 case 14:
08112 return 45;
08113 case 15:
08114 return 46;
08115 }
08116 break;
08117 case 1:
08118 switch (Field_op2_Slot_inst_get (insn))
08119 {
08120 case 0:
08121 case 1:
08122 return 109;
08123 case 2:
08124 case 3:
08125 return 110;
08126 case 4:
08127 return 111;
08128 case 6:
08129 switch (Field_sr_Slot_inst_get (insn))
08130 {
08131 case 0:
08132 return 127;
08133 case 1:
08134 return 121;
08135 case 2:
08136 return 124;
08137 case 3:
08138 return 130;
08139 case 5:
08140 return 133;
08141 case 72:
08142 return 22;
08143 case 73:
08144 return 25;
08145 case 96:
08146 return 218;
08147 case 104:
08148 return 230;
08149 case 128:
08150 return 212;
08151 case 129:
08152 return 215;
08153 case 144:
08154 return 200;
08155 case 145:
08156 return 206;
08157 case 160:
08158 return 203;
08159 case 161:
08160 return 209;
08161 case 177:
08162 return 141;
08163 case 178:
08164 return 147;
08165 case 179:
08166 return 153;
08167 case 180:
08168 return 159;
08169 case 192:
08170 return 177;
08171 case 194:
08172 return 165;
08173 case 195:
08174 return 168;
08175 case 196:
08176 return 171;
08177 case 209:
08178 return 144;
08179 case 210:
08180 return 150;
08181 case 211:
08182 return 156;
08183 case 212:
08184 return 162;
08185 case 228:
08186 return 195;
08187 case 230:
08188 return 138;
08189 case 232:
08190 return 180;
08191 case 233:
08192 return 221;
08193 case 234:
08194 return 235;
08195 case 236:
08196 return 224;
08197 case 237:
08198 return 227;
08199 case 238:
08200 return 174;
08201 case 240:
08202 return 238;
08203 case 241:
08204 return 241;
08205 case 242:
08206 return 244;
08207 case 244:
08208 return 183;
08209 case 245:
08210 return 186;
08211 }
08212 break;
08213 case 8:
08214 return 106;
08215 case 9:
08216 if (Field_s_Slot_inst_get (insn) == 0)
08217 return 107;
08218 break;
08219 case 10:
08220 if (Field_t_Slot_inst_get (insn) == 0)
08221 return 105;
08222 break;
08223 case 11:
08224 if (Field_s_Slot_inst_get (insn) == 0)
08225 return 108;
08226 break;
08227 case 15:
08228 switch (Field_r_Slot_inst_get (insn))
08229 {
08230 case 0:
08231 return 248;
08232 case 1:
08233 return 250;
08234 case 2:
08235 return 249;
08236 case 3:
08237 return 251;
08238 case 8:
08239 return 263;
08240 case 9:
08241 return 262;
08242 case 14:
08243 if (Field_t_Slot_inst_get (insn) == 0)
08244 return 231;
08245 if (Field_t_Slot_inst_get (insn) == 1)
08246 return 232;
08247 break;
08248 }
08249 break;
08250 }
08251 break;
08252 case 3:
08253 switch (Field_op2_Slot_inst_get (insn))
08254 {
08255 case 0:
08256 switch (Field_sr_Slot_inst_get (insn))
08257 {
08258 case 0:
08259 return 125;
08260 case 1:
08261 return 119;
08262 case 2:
08263 return 122;
08264 case 3:
08265 return 128;
08266 case 5:
08267 return 131;
08268 case 72:
08269 return 20;
08270 case 73:
08271 return 23;
08272 case 96:
08273 return 216;
08274 case 104:
08275 return 228;
08276 case 128:
08277 return 210;
08278 case 129:
08279 return 213;
08280 case 144:
08281 return 198;
08282 case 145:
08283 return 204;
08284 case 160:
08285 return 201;
08286 case 161:
08287 return 207;
08288 case 176:
08289 return 134;
08290 case 177:
08291 return 139;
08292 case 178:
08293 return 145;
08294 case 179:
08295 return 151;
08296 case 180:
08297 return 157;
08298 case 192:
08299 return 175;
08300 case 194:
08301 return 163;
08302 case 195:
08303 return 166;
08304 case 196:
08305 return 169;
08306 case 208:
08307 return 135;
08308 case 209:
08309 return 142;
08310 case 210:
08311 return 148;
08312 case 211:
08313 return 154;
08314 case 212:
08315 return 160;
08316 case 226:
08317 return 190;
08318 case 228:
08319 return 193;
08320 case 230:
08321 return 136;
08322 case 232:
08323 return 178;
08324 case 233:
08325 return 219;
08326 case 234:
08327 return 233;
08328 case 235:
08329 return 187;
08330 case 236:
08331 return 222;
08332 case 237:
08333 return 225;
08334 case 238:
08335 return 172;
08336 case 240:
08337 return 236;
08338 case 241:
08339 return 239;
08340 case 242:
08341 return 242;
08342 case 244:
08343 return 181;
08344 case 245:
08345 return 184;
08346 }
08347 break;
08348 case 1:
08349 switch (Field_sr_Slot_inst_get (insn))
08350 {
08351 case 0:
08352 return 126;
08353 case 1:
08354 return 120;
08355 case 2:
08356 return 123;
08357 case 3:
08358 return 129;
08359 case 5:
08360 return 132;
08361 case 72:
08362 return 21;
08363 case 73:
08364 return 24;
08365 case 96:
08366 return 217;
08367 case 104:
08368 return 229;
08369 case 128:
08370 return 211;
08371 case 129:
08372 return 214;
08373 case 144:
08374 return 199;
08375 case 145:
08376 return 205;
08377 case 160:
08378 return 202;
08379 case 161:
08380 return 208;
08381 case 177:
08382 return 140;
08383 case 178:
08384 return 146;
08385 case 179:
08386 return 152;
08387 case 180:
08388 return 158;
08389 case 192:
08390 return 176;
08391 case 194:
08392 return 164;
08393 case 195:
08394 return 167;
08395 case 196:
08396 return 170;
08397 case 209:
08398 return 143;
08399 case 210:
08400 return 149;
08401 case 211:
08402 return 155;
08403 case 212:
08404 return 161;
08405 case 226:
08406 return 191;
08407 case 227:
08408 return 192;
08409 case 228:
08410 return 194;
08411 case 230:
08412 return 137;
08413 case 232:
08414 return 179;
08415 case 233:
08416 return 220;
08417 case 234:
08418 return 234;
08419 case 236:
08420 return 223;
08421 case 237:
08422 return 226;
08423 case 238:
08424 return 173;
08425 case 240:
08426 return 237;
08427 case 241:
08428 return 240;
08429 case 242:
08430 return 243;
08431 case 244:
08432 return 182;
08433 case 245:
08434 return 185;
08435 }
08436 break;
08437 case 8:
08438 return 89;
08439 case 9:
08440 return 90;
08441 case 10:
08442 return 91;
08443 case 11:
08444 return 92;
08445 }
08446 break;
08447 case 4:
08448 case 5:
08449 return 76;
08450 case 9:
08451 switch (Field_op2_Slot_inst_get (insn))
08452 {
08453 case 0:
08454 return 18;
08455 case 4:
08456 return 19;
08457 }
08458 break;
08459 }
08460 break;
08461 case 1:
08462 return 83;
08463 case 2:
08464 switch (Field_r_Slot_inst_get (insn))
08465 {
08466 case 0:
08467 return 84;
08468 case 1:
08469 return 80;
08470 case 2:
08471 return 82;
08472 case 4:
08473 return 99;
08474 case 5:
08475 return 97;
08476 case 6:
08477 return 98;
08478 case 7:
08479 switch (Field_t_Slot_inst_get (insn))
08480 {
08481 case 0:
08482 return 258;
08483 case 1:
08484 return 259;
08485 case 2:
08486 return 260;
08487 case 3:
08488 return 261;
08489 case 4:
08490 return 252;
08491 case 5:
08492 return 253;
08493 case 6:
08494 return 256;
08495 case 7:
08496 return 257;
08497 case 8:
08498 switch (Field_op1_Slot_inst_get (insn))
08499 {
08500 case 4:
08501 return 254;
08502 case 5:
08503 return 255;
08504 }
08505 break;
08506 case 12:
08507 return 245;
08508 case 14:
08509 return 246;
08510 case 15:
08511 return 247;
08512 }
08513 break;
08514 case 9:
08515 return 81;
08516 case 10:
08517 return 88;
08518 case 12:
08519 return 37;
08520 case 13:
08521 return 38;
08522 }
08523 break;
08524 case 5:
08525 switch (Field_n_Slot_inst_get (insn))
08526 {
08527 case 0:
08528 return 74;
08529 case 1:
08530 return 7;
08531 case 2:
08532 return 6;
08533 case 3:
08534 return 5;
08535 }
08536 break;
08537 case 6:
08538 switch (Field_n_Slot_inst_get (insn))
08539 {
08540 case 0:
08541 return 78;
08542 case 1:
08543 switch (Field_m_Slot_inst_get (insn))
08544 {
08545 case 0:
08546 return 70;
08547 case 1:
08548 return 71;
08549 case 2:
08550 return 73;
08551 case 3:
08552 return 72;
08553 }
08554 break;
08555 case 2:
08556 switch (Field_m_Slot_inst_get (insn))
08557 {
08558 case 0:
08559 return 50;
08560 case 1:
08561 return 51;
08562 case 2:
08563 return 53;
08564 case 3:
08565 return 52;
08566 }
08567 break;
08568 case 3:
08569 switch (Field_m_Slot_inst_get (insn))
08570 {
08571 case 0:
08572 return 11;
08573 case 1:
08574 switch (Field_r_Slot_inst_get (insn))
08575 {
08576 case 8:
08577 return 85;
08578 case 9:
08579 return 86;
08580 case 10:
08581 return 87;
08582 }
08583 break;
08584 case 2:
08585 return 57;
08586 case 3:
08587 return 56;
08588 }
08589 break;
08590 }
08591 break;
08592 case 7:
08593 switch (Field_r_Slot_inst_get (insn))
08594 {
08595 case 0:
08596 return 65;
08597 case 1:
08598 return 58;
08599 case 2:
08600 return 61;
08601 case 3:
08602 return 63;
08603 case 4:
08604 return 66;
08605 case 5:
08606 return 68;
08607 case 6:
08608 case 7:
08609 return 54;
08610 case 8:
08611 return 64;
08612 case 9:
08613 return 59;
08614 case 10:
08615 return 60;
08616 case 11:
08617 return 62;
08618 case 12:
08619 return 67;
08620 case 13:
08621 return 69;
08622 case 14:
08623 case 15:
08624 return 55;
08625 }
08626 break;
08627 }
08628 return 0;
08629 }
08630
08631 static int
08632 Slot_inst16b_decode (const xtensa_insnbuf insn)
08633 {
08634 switch (Field_op0_Slot_inst16b_get (insn))
08635 {
08636 case 12:
08637 switch (Field_i_Slot_inst16b_get (insn))
08638 {
08639 case 0:
08640 return 33;
08641 case 1:
08642 switch (Field_z_Slot_inst16b_get (insn))
08643 {
08644 case 0:
08645 return 28;
08646 case 1:
08647 return 29;
08648 }
08649 break;
08650 }
08651 break;
08652 case 13:
08653 switch (Field_r_Slot_inst16b_get (insn))
08654 {
08655 case 0:
08656 return 32;
08657 case 15:
08658 switch (Field_t_Slot_inst16b_get (insn))
08659 {
08660 case 0:
08661 return 35;
08662 case 1:
08663 return 15;
08664 case 2:
08665 return 197;
08666 case 3:
08667 if (Field_s_Slot_inst16b_get (insn) == 0)
08668 return 34;
08669 break;
08670 case 6:
08671 return 30;
08672 }
08673 break;
08674 }
08675 break;
08676 }
08677 return 0;
08678 }
08679
08680 static int
08681 Slot_inst16a_decode (const xtensa_insnbuf insn)
08682 {
08683 switch (Field_op0_Slot_inst16a_get (insn))
08684 {
08685 case 8:
08686 return 31;
08687 case 9:
08688 return 36;
08689 case 10:
08690 return 26;
08691 case 11:
08692 return 27;
08693 }
08694 return 0;
08695 }
08696
08697
08698
08699
08700 static void
08701 Slot_x24_Format_inst_0_get (const xtensa_insnbuf insn,
08702 xtensa_insnbuf slotbuf)
08703 {
08704 slotbuf[0] = (insn[0] & 0xffffff);
08705 }
08706
08707 static void
08708 Slot_x24_Format_inst_0_set (xtensa_insnbuf insn,
08709 const xtensa_insnbuf slotbuf)
08710 {
08711 insn[0] = (insn[0] & ~0xffffff) | (slotbuf[0] & 0xffffff);
08712 }
08713
08714 static void
08715 Slot_x16a_Format_inst16a_0_get (const xtensa_insnbuf insn,
08716 xtensa_insnbuf slotbuf)
08717 {
08718 slotbuf[0] = ((insn[0] & 0xffff00) >> 8);
08719 }
08720
08721 static void
08722 Slot_x16a_Format_inst16a_0_set (xtensa_insnbuf insn,
08723 const xtensa_insnbuf slotbuf)
08724 {
08725 insn[0] = (insn[0] & ~0xffff00) | ((slotbuf[0] & 0xffff) << 8);
08726 }
08727
08728 static void
08729 Slot_x16b_Format_inst16b_0_get (const xtensa_insnbuf insn,
08730 xtensa_insnbuf slotbuf)
08731 {
08732 slotbuf[0] = ((insn[0] & 0xffff00) >> 8);
08733 }
08734
08735 static void
08736 Slot_x16b_Format_inst16b_0_set (xtensa_insnbuf insn,
08737 const xtensa_insnbuf slotbuf)
08738 {
08739 insn[0] = (insn[0] & ~0xffff00) | ((slotbuf[0] & 0xffff) << 8);
08740 }
08741
08742 static xtensa_get_field_fn
08743 Slot_inst_get_field_fns[] = {
08744 Field_t_Slot_inst_get,
08745 Field_bbi4_Slot_inst_get,
08746 Field_bbi_Slot_inst_get,
08747 Field_imm12_Slot_inst_get,
08748 Field_imm8_Slot_inst_get,
08749 Field_s_Slot_inst_get,
08750 Field_imm12b_Slot_inst_get,
08751 Field_imm16_Slot_inst_get,
08752 Field_m_Slot_inst_get,
08753 Field_n_Slot_inst_get,
08754 Field_offset_Slot_inst_get,
08755 Field_op0_Slot_inst_get,
08756 Field_op1_Slot_inst_get,
08757 Field_op2_Slot_inst_get,
08758 Field_r_Slot_inst_get,
08759 Field_sa4_Slot_inst_get,
08760 Field_sae4_Slot_inst_get,
08761 Field_sae_Slot_inst_get,
08762 Field_sal_Slot_inst_get,
08763 Field_sargt_Slot_inst_get,
08764 Field_sas4_Slot_inst_get,
08765 Field_sas_Slot_inst_get,
08766 Field_sr_Slot_inst_get,
08767 Field_st_Slot_inst_get,
08768 Field_thi3_Slot_inst_get,
08769 Field_imm4_Slot_inst_get,
08770 Field_mn_Slot_inst_get,
08771 0,
08772 0,
08773 0,
08774 0,
08775 0,
08776 0,
08777 0,
08778 0,
08779 Implicit_Field_ar0_get,
08780 Implicit_Field_ar4_get,
08781 Implicit_Field_ar8_get,
08782 Implicit_Field_ar12_get
08783 };
08784
08785 static xtensa_set_field_fn
08786 Slot_inst_set_field_fns[] = {
08787 Field_t_Slot_inst_set,
08788 Field_bbi4_Slot_inst_set,
08789 Field_bbi_Slot_inst_set,
08790 Field_imm12_Slot_inst_set,
08791 Field_imm8_Slot_inst_set,
08792 Field_s_Slot_inst_set,
08793 Field_imm12b_Slot_inst_set,
08794 Field_imm16_Slot_inst_set,
08795 Field_m_Slot_inst_set,
08796 Field_n_Slot_inst_set,
08797 Field_offset_Slot_inst_set,
08798 Field_op0_Slot_inst_set,
08799 Field_op1_Slot_inst_set,
08800 Field_op2_Slot_inst_set,
08801 Field_r_Slot_inst_set,
08802 Field_sa4_Slot_inst_set,
08803 Field_sae4_Slot_inst_set,
08804 Field_sae_Slot_inst_set,
08805 Field_sal_Slot_inst_set,
08806 Field_sargt_Slot_inst_set,
08807 Field_sas4_Slot_inst_set,
08808 Field_sas_Slot_inst_set,
08809 Field_sr_Slot_inst_set,
08810 Field_st_Slot_inst_set,
08811 Field_thi3_Slot_inst_set,
08812 Field_imm4_Slot_inst_set,
08813 Field_mn_Slot_inst_set,
08814 0,
08815 0,
08816 0,
08817 0,
08818 0,
08819 0,
08820 0,
08821 0,
08822 Implicit_Field_set,
08823 Implicit_Field_set,
08824 Implicit_Field_set,
08825 Implicit_Field_set
08826 };
08827
08828 static xtensa_get_field_fn
08829 Slot_inst16a_get_field_fns[] = {
08830 Field_t_Slot_inst16a_get,
08831 0,
08832 0,
08833 0,
08834 0,
08835 Field_s_Slot_inst16a_get,
08836 0,
08837 0,
08838 0,
08839 0,
08840 0,
08841 Field_op0_Slot_inst16a_get,
08842 0,
08843 0,
08844 Field_r_Slot_inst16a_get,
08845 0,
08846 0,
08847 0,
08848 0,
08849 0,
08850 0,
08851 0,
08852 Field_sr_Slot_inst16a_get,
08853 Field_st_Slot_inst16a_get,
08854 0,
08855 Field_imm4_Slot_inst16a_get,
08856 0,
08857 Field_i_Slot_inst16a_get,
08858 Field_imm6lo_Slot_inst16a_get,
08859 Field_imm6hi_Slot_inst16a_get,
08860 Field_imm7lo_Slot_inst16a_get,
08861 Field_imm7hi_Slot_inst16a_get,
08862 Field_z_Slot_inst16a_get,
08863 Field_imm6_Slot_inst16a_get,
08864 Field_imm7_Slot_inst16a_get,
08865 Implicit_Field_ar0_get,
08866 Implicit_Field_ar4_get,
08867 Implicit_Field_ar8_get,
08868 Implicit_Field_ar12_get
08869 };
08870
08871 static xtensa_set_field_fn
08872 Slot_inst16a_set_field_fns[] = {
08873 Field_t_Slot_inst16a_set,
08874 0,
08875 0,
08876 0,
08877 0,
08878 Field_s_Slot_inst16a_set,
08879 0,
08880 0,
08881 0,
08882 0,
08883 0,
08884 Field_op0_Slot_inst16a_set,
08885 0,
08886 0,
08887 Field_r_Slot_inst16a_set,
08888 0,
08889 0,
08890 0,
08891 0,
08892 0,
08893 0,
08894 0,
08895 Field_sr_Slot_inst16a_set,
08896 Field_st_Slot_inst16a_set,
08897 0,
08898 Field_imm4_Slot_inst16a_set,
08899 0,
08900 Field_i_Slot_inst16a_set,
08901 Field_imm6lo_Slot_inst16a_set,
08902 Field_imm6hi_Slot_inst16a_set,
08903 Field_imm7lo_Slot_inst16a_set,
08904 Field_imm7hi_Slot_inst16a_set,
08905 Field_z_Slot_inst16a_set,
08906 Field_imm6_Slot_inst16a_set,
08907 Field_imm7_Slot_inst16a_set,
08908 Implicit_Field_set,
08909 Implicit_Field_set,
08910 Implicit_Field_set,
08911 Implicit_Field_set
08912 };
08913
08914 static xtensa_get_field_fn
08915 Slot_inst16b_get_field_fns[] = {
08916 Field_t_Slot_inst16b_get,
08917 0,
08918 0,
08919 0,
08920 0,
08921 Field_s_Slot_inst16b_get,
08922 0,
08923 0,
08924 0,
08925 0,
08926 0,
08927 Field_op0_Slot_inst16b_get,
08928 0,
08929 0,
08930 Field_r_Slot_inst16b_get,
08931 0,
08932 0,
08933 0,
08934 0,
08935 0,
08936 0,
08937 0,
08938 Field_sr_Slot_inst16b_get,
08939 Field_st_Slot_inst16b_get,
08940 0,
08941 Field_imm4_Slot_inst16b_get,
08942 0,
08943 Field_i_Slot_inst16b_get,
08944 Field_imm6lo_Slot_inst16b_get,
08945 Field_imm6hi_Slot_inst16b_get,
08946 Field_imm7lo_Slot_inst16b_get,
08947 Field_imm7hi_Slot_inst16b_get,
08948 Field_z_Slot_inst16b_get,
08949 Field_imm6_Slot_inst16b_get,
08950 Field_imm7_Slot_inst16b_get,
08951 Implicit_Field_ar0_get,
08952 Implicit_Field_ar4_get,
08953 Implicit_Field_ar8_get,
08954 Implicit_Field_ar12_get
08955 };
08956
08957 static xtensa_set_field_fn
08958 Slot_inst16b_set_field_fns[] = {
08959 Field_t_Slot_inst16b_set,
08960 0,
08961 0,
08962 0,
08963 0,
08964 Field_s_Slot_inst16b_set,
08965 0,
08966 0,
08967 0,
08968 0,
08969 0,
08970 Field_op0_Slot_inst16b_set,
08971 0,
08972 0,
08973 Field_r_Slot_inst16b_set,
08974 0,
08975 0,
08976 0,
08977 0,
08978 0,
08979 0,
08980 0,
08981 Field_sr_Slot_inst16b_set,
08982 Field_st_Slot_inst16b_set,
08983 0,
08984 Field_imm4_Slot_inst16b_set,
08985 0,
08986 Field_i_Slot_inst16b_set,
08987 Field_imm6lo_Slot_inst16b_set,
08988 Field_imm6hi_Slot_inst16b_set,
08989 Field_imm7lo_Slot_inst16b_set,
08990 Field_imm7hi_Slot_inst16b_set,
08991 Field_z_Slot_inst16b_set,
08992 Field_imm6_Slot_inst16b_set,
08993 Field_imm7_Slot_inst16b_set,
08994 Implicit_Field_set,
08995 Implicit_Field_set,
08996 Implicit_Field_set,
08997 Implicit_Field_set
08998 };
08999
09000 static xtensa_slot_internal slots[] = {
09001 { "Inst", "x24", 0,
09002 Slot_x24_Format_inst_0_get, Slot_x24_Format_inst_0_set,
09003 Slot_inst_get_field_fns, Slot_inst_set_field_fns,
09004 Slot_inst_decode, "nop" },
09005 { "Inst16a", "x16a", 0,
09006 Slot_x16a_Format_inst16a_0_get, Slot_x16a_Format_inst16a_0_set,
09007 Slot_inst16a_get_field_fns, Slot_inst16a_set_field_fns,
09008 Slot_inst16a_decode, "" },
09009 { "Inst16b", "x16b", 0,
09010 Slot_x16b_Format_inst16b_0_get, Slot_x16b_Format_inst16b_0_set,
09011 Slot_inst16b_get_field_fns, Slot_inst16b_set_field_fns,
09012 Slot_inst16b_decode, "nop.n" }
09013 };
09014
09015
09016
09017
09018 static void
09019 Format_x24_encode (xtensa_insnbuf insn)
09020 {
09021 insn[0] = 0;
09022 }
09023
09024 static void
09025 Format_x16a_encode (xtensa_insnbuf insn)
09026 {
09027 insn[0] = 0x800000;
09028 }
09029
09030 static void
09031 Format_x16b_encode (xtensa_insnbuf insn)
09032 {
09033 insn[0] = 0xc00000;
09034 }
09035
09036 static int Format_x24_slots[] = { 0 };
09037
09038 static int Format_x16a_slots[] = { 1 };
09039
09040 static int Format_x16b_slots[] = { 2 };
09041
09042 static xtensa_format_internal formats[] = {
09043 { "x24", 3, Format_x24_encode, 1, Format_x24_slots },
09044 { "x16a", 2, Format_x16a_encode, 1, Format_x16a_slots },
09045 { "x16b", 2, Format_x16b_encode, 1, Format_x16b_slots }
09046 };
09047
09048
09049 static int
09050 format_decoder (const xtensa_insnbuf insn)
09051 {
09052 if ((insn[0] & 0x800000) == 0)
09053 return 0;
09054 if ((insn[0] & 0xc00000) == 0x800000)
09055 return 1;
09056 if ((insn[0] & 0xe00000) == 0xc00000)
09057 return 2;
09058 return -1;
09059 }
09060
09061 static int length_table[16] = {
09062 3,
09063 3,
09064 3,
09065 3,
09066 3,
09067 3,
09068 3,
09069 3,
09070 2,
09071 2,
09072 2,
09073 2,
09074 2,
09075 2,
09076 -1,
09077 -1
09078 };
09079
09080 static int
09081 length_decoder (const unsigned char *insn)
09082 {
09083 int op0 = (insn[0] >> 4) & 0xf;
09084 return length_table[op0];
09085 }
09086
09087
09088
09089
09090 xtensa_isa_internal xtensa_modules = {
09091 1 ,
09092 3 , 0,
09093 3, formats, format_decoder, length_decoder,
09094 3, slots,
09095 39 ,
09096 70, operands,
09097 220, iclasses,
09098 276, opcodes, 0,
09099 1, regfiles,
09100 NUM_STATES, states, 0,
09101 NUM_SYSREGS, sysregs, 0,
09102 { MAX_SPECIAL_REG, MAX_USER_REG }, { 0, 0 },
09103 0, interfaces, 0,
09104 0, funcUnits, 0
09105 };