diff options
author | Doug Evans <dje@google.com> | 2002-12-20 02:26:35 +0000 |
---|---|---|
committer | Doug Evans <dje@google.com> | 2002-12-20 02:26:35 +0000 |
commit | 574654558a6f0c820faaaa22306ca822c3db0419 (patch) | |
tree | b4a6b7ac857c6726602b1ccc3417d89b04fec130 /sim/m32r/decodex.c | |
parent | 4714fbc0d384596819a3a995a6c4bbcb2a6e676f (diff) | |
download | fsf-binutils-gdb-574654558a6f0c820faaaa22306ca822c3db0419.zip fsf-binutils-gdb-574654558a6f0c820faaaa22306ca822c3db0419.tar.gz fsf-binutils-gdb-574654558a6f0c820faaaa22306ca822c3db0419.tar.bz2 |
* arch.c,arch.h,cpuall.h: Regenerate.
* cpu.c,cpu.h,decode.c,decode.h,model.c,sem-switch.c,sem.c: Regenerate.
* cpux.c,cpux.h,decodex.c,decodex.h,modelx.c,semx-switch.c: Regenerate.
Diffstat (limited to 'sim/m32r/decodex.c')
-rw-r--r-- | sim/m32r/decodex.c | 264 |
1 files changed, 135 insertions, 129 deletions
diff --git a/sim/m32r/decodex.c b/sim/m32r/decodex.c index 336ba3a..06317f0 100644 --- a/sim/m32r/decodex.c +++ b/sim/m32r/decodex.c @@ -2,7 +2,7 @@ THIS FILE IS MACHINE GENERATED WITH CGEN. -Copyright 1996, 1997, 1998, 1999, 2000, 2001 Free Software Foundation, Inc. +Copyright 1996, 1997, 1998, 1999, 2000, 2001, 2002 Free Software Foundation, Inc. This file is part of the GNU simulators. @@ -37,7 +37,7 @@ with this program; if not, write to the Free Software Foundation, Inc., teensy bit of cpu in the decoder. Moving it to malloc space is trivial but won't be done until necessary (we don't currently support the runtime addition of instructions nor an SMP machine with different cpus). */ -static IDESC m32rxf_insn_data[M32RXF_INSN_SNC + 1]; +static IDESC m32rxf_insn_data[M32RXF_INSN__MAX]; /* Commas between elements are contained in the macros. Some of these are conditionally compiled out. */ @@ -210,7 +210,7 @@ m32rxf_init_idesc_table (SIM_CPU *cpu) { IDESC *id,*tabend; const struct insn_sem *t,*tend; - int tabsize = sizeof (m32rxf_insn_data) / sizeof (IDESC); + int tabsize = M32RXF_INSN__MAX; IDESC *table = m32rxf_insn_data; memset (table, 0, tabsize * sizeof (IDESC)); @@ -258,80 +258,80 @@ m32rxf_decode (SIM_CPU *current_cpu, IADDR pc, unsigned int val = (((insn >> 8) & (15 << 4)) | ((insn >> 4) & (15 << 0))); switch (val) { - case 0 : itype = M32RXF_INSN_SUBV;goto extract_sfmt_addv; - case 1 : itype = M32RXF_INSN_SUBX;goto extract_sfmt_addx; - case 2 : itype = M32RXF_INSN_SUB;goto extract_sfmt_add; - case 3 : itype = M32RXF_INSN_NEG;goto extract_sfmt_mv; - case 4 : itype = M32RXF_INSN_CMP;goto extract_sfmt_cmp; - case 5 : itype = M32RXF_INSN_CMPU;goto extract_sfmt_cmp; - case 6 : itype = M32RXF_INSN_CMPEQ;goto extract_sfmt_cmp; + case 0 : itype = M32RXF_INSN_SUBV; goto extract_sfmt_addv; + case 1 : itype = M32RXF_INSN_SUBX; goto extract_sfmt_addx; + case 2 : itype = M32RXF_INSN_SUB; goto extract_sfmt_add; + case 3 : itype = M32RXF_INSN_NEG; goto extract_sfmt_mv; + case 4 : itype = M32RXF_INSN_CMP; goto extract_sfmt_cmp; + case 5 : itype = M32RXF_INSN_CMPU; goto extract_sfmt_cmp; + case 6 : itype = M32RXF_INSN_CMPEQ; goto extract_sfmt_cmp; case 7 : { unsigned int val = (((insn >> 8) & (3 << 0))); switch (val) { - case 0 : itype = M32RXF_INSN_CMPZ;goto extract_sfmt_cmpz; - case 3 : itype = M32RXF_INSN_PCMPBZ;goto extract_sfmt_cmpz; + case 0 : itype = M32RXF_INSN_CMPZ; goto extract_sfmt_cmpz; + case 3 : itype = M32RXF_INSN_PCMPBZ; goto extract_sfmt_cmpz; default : itype = M32RXF_INSN_X_INVALID; goto extract_sfmt_empty; } } - case 8 : itype = M32RXF_INSN_ADDV;goto extract_sfmt_addv; - case 9 : itype = M32RXF_INSN_ADDX;goto extract_sfmt_addx; - case 10 : itype = M32RXF_INSN_ADD;goto extract_sfmt_add; - case 11 : itype = M32RXF_INSN_NOT;goto extract_sfmt_mv; - case 12 : itype = M32RXF_INSN_AND;goto extract_sfmt_add; - case 13 : itype = M32RXF_INSN_XOR;goto extract_sfmt_add; - case 14 : itype = M32RXF_INSN_OR;goto extract_sfmt_add; - case 16 : itype = M32RXF_INSN_SRL;goto extract_sfmt_add; - case 18 : itype = M32RXF_INSN_SRA;goto extract_sfmt_add; - case 20 : itype = M32RXF_INSN_SLL;goto extract_sfmt_add; - case 22 : itype = M32RXF_INSN_MUL;goto extract_sfmt_add; - case 24 : itype = M32RXF_INSN_MV;goto extract_sfmt_mv; - case 25 : itype = M32RXF_INSN_MVFC;goto extract_sfmt_mvfc; - case 26 : itype = M32RXF_INSN_MVTC;goto extract_sfmt_mvtc; + case 8 : itype = M32RXF_INSN_ADDV; goto extract_sfmt_addv; + case 9 : itype = M32RXF_INSN_ADDX; goto extract_sfmt_addx; + case 10 : itype = M32RXF_INSN_ADD; goto extract_sfmt_add; + case 11 : itype = M32RXF_INSN_NOT; goto extract_sfmt_mv; + case 12 : itype = M32RXF_INSN_AND; goto extract_sfmt_add; + case 13 : itype = M32RXF_INSN_XOR; goto extract_sfmt_add; + case 14 : itype = M32RXF_INSN_OR; goto extract_sfmt_add; + case 16 : itype = M32RXF_INSN_SRL; goto extract_sfmt_add; + case 18 : itype = M32RXF_INSN_SRA; goto extract_sfmt_add; + case 20 : itype = M32RXF_INSN_SLL; goto extract_sfmt_add; + case 22 : itype = M32RXF_INSN_MUL; goto extract_sfmt_add; + case 24 : itype = M32RXF_INSN_MV; goto extract_sfmt_mv; + case 25 : itype = M32RXF_INSN_MVFC; goto extract_sfmt_mvfc; + case 26 : itype = M32RXF_INSN_MVTC; goto extract_sfmt_mvtc; case 28 : { unsigned int val = (((insn >> 8) & (3 << 0))); switch (val) { - case 0 : itype = M32RXF_INSN_JC;goto extract_sfmt_jc; - case 1 : itype = M32RXF_INSN_JNC;goto extract_sfmt_jc; - case 2 : itype = M32RXF_INSN_JL;goto extract_sfmt_jl; - case 3 : itype = M32RXF_INSN_JMP;goto extract_sfmt_jmp; + case 0 : itype = M32RXF_INSN_JC; goto extract_sfmt_jc; + case 1 : itype = M32RXF_INSN_JNC; goto extract_sfmt_jc; + case 2 : itype = M32RXF_INSN_JL; goto extract_sfmt_jl; + case 3 : itype = M32RXF_INSN_JMP; goto extract_sfmt_jmp; default : itype = M32RXF_INSN_X_INVALID; goto extract_sfmt_empty; } } - case 29 : itype = M32RXF_INSN_RTE;goto extract_sfmt_rte; - case 31 : itype = M32RXF_INSN_TRAP;goto extract_sfmt_trap; - case 32 : itype = M32RXF_INSN_STB;goto extract_sfmt_stb; - case 34 : itype = M32RXF_INSN_STH;goto extract_sfmt_sth; - case 36 : itype = M32RXF_INSN_ST;goto extract_sfmt_st; - case 37 : itype = M32RXF_INSN_UNLOCK;goto extract_sfmt_unlock; - case 38 : itype = M32RXF_INSN_ST_PLUS;goto extract_sfmt_st_plus; - case 39 : itype = M32RXF_INSN_ST_MINUS;goto extract_sfmt_st_plus; - case 40 : itype = M32RXF_INSN_LDB;goto extract_sfmt_ldb; - case 41 : itype = M32RXF_INSN_LDUB;goto extract_sfmt_ldb; - case 42 : itype = M32RXF_INSN_LDH;goto extract_sfmt_ldh; - case 43 : itype = M32RXF_INSN_LDUH;goto extract_sfmt_ldh; - case 44 : itype = M32RXF_INSN_LD;goto extract_sfmt_ld; - case 45 : itype = M32RXF_INSN_LOCK;goto extract_sfmt_lock; - case 46 : itype = M32RXF_INSN_LD_PLUS;goto extract_sfmt_ld_plus; + case 29 : itype = M32RXF_INSN_RTE; goto extract_sfmt_rte; + case 31 : itype = M32RXF_INSN_TRAP; goto extract_sfmt_trap; + case 32 : itype = M32RXF_INSN_STB; goto extract_sfmt_stb; + case 34 : itype = M32RXF_INSN_STH; goto extract_sfmt_sth; + case 36 : itype = M32RXF_INSN_ST; goto extract_sfmt_st; + case 37 : itype = M32RXF_INSN_UNLOCK; goto extract_sfmt_unlock; + case 38 : itype = M32RXF_INSN_ST_PLUS; goto extract_sfmt_st_plus; + case 39 : itype = M32RXF_INSN_ST_MINUS; goto extract_sfmt_st_plus; + case 40 : itype = M32RXF_INSN_LDB; goto extract_sfmt_ldb; + case 41 : itype = M32RXF_INSN_LDUB; goto extract_sfmt_ldb; + case 42 : itype = M32RXF_INSN_LDH; goto extract_sfmt_ldh; + case 43 : itype = M32RXF_INSN_LDUH; goto extract_sfmt_ldh; + case 44 : itype = M32RXF_INSN_LD; goto extract_sfmt_ld; + case 45 : itype = M32RXF_INSN_LOCK; goto extract_sfmt_lock; + case 46 : itype = M32RXF_INSN_LD_PLUS; goto extract_sfmt_ld_plus; case 48 : /* fall through */ - case 56 : itype = M32RXF_INSN_MULHI_A;goto extract_sfmt_mulhi_a; + case 56 : itype = M32RXF_INSN_MULHI_A; goto extract_sfmt_mulhi_a; case 49 : /* fall through */ - case 57 : itype = M32RXF_INSN_MULLO_A;goto extract_sfmt_mulhi_a; + case 57 : itype = M32RXF_INSN_MULLO_A; goto extract_sfmt_mulhi_a; case 50 : /* fall through */ - case 58 : itype = M32RXF_INSN_MULWHI_A;goto extract_sfmt_mulhi_a; + case 58 : itype = M32RXF_INSN_MULWHI_A; goto extract_sfmt_mulhi_a; case 51 : /* fall through */ - case 59 : itype = M32RXF_INSN_MULWLO_A;goto extract_sfmt_mulhi_a; + case 59 : itype = M32RXF_INSN_MULWLO_A; goto extract_sfmt_mulhi_a; case 52 : /* fall through */ - case 60 : itype = M32RXF_INSN_MACHI_A;goto extract_sfmt_machi_a; + case 60 : itype = M32RXF_INSN_MACHI_A; goto extract_sfmt_machi_a; case 53 : /* fall through */ - case 61 : itype = M32RXF_INSN_MACLO_A;goto extract_sfmt_machi_a; + case 61 : itype = M32RXF_INSN_MACLO_A; goto extract_sfmt_machi_a; case 54 : /* fall through */ - case 62 : itype = M32RXF_INSN_MACWHI_A;goto extract_sfmt_machi_a; + case 62 : itype = M32RXF_INSN_MACWHI_A; goto extract_sfmt_machi_a; case 55 : /* fall through */ - case 63 : itype = M32RXF_INSN_MACWLO_A;goto extract_sfmt_machi_a; + case 63 : itype = M32RXF_INSN_MACWLO_A; goto extract_sfmt_machi_a; case 64 : /* fall through */ case 65 : /* fall through */ case 66 : /* fall through */ @@ -347,38 +347,38 @@ m32rxf_decode (SIM_CPU *current_cpu, IADDR pc, case 76 : /* fall through */ case 77 : /* fall through */ case 78 : /* fall through */ - case 79 : itype = M32RXF_INSN_ADDI;goto extract_sfmt_addi; + case 79 : itype = M32RXF_INSN_ADDI; goto extract_sfmt_addi; case 80 : /* fall through */ - case 81 : itype = M32RXF_INSN_SRLI;goto extract_sfmt_slli; + case 81 : itype = M32RXF_INSN_SRLI; goto extract_sfmt_slli; case 82 : /* fall through */ - case 83 : itype = M32RXF_INSN_SRAI;goto extract_sfmt_slli; + case 83 : itype = M32RXF_INSN_SRAI; goto extract_sfmt_slli; case 84 : /* fall through */ - case 85 : itype = M32RXF_INSN_SLLI;goto extract_sfmt_slli; + case 85 : itype = M32RXF_INSN_SLLI; goto extract_sfmt_slli; case 87 : { unsigned int val = (((insn >> 0) & (1 << 0))); switch (val) { - case 0 : itype = M32RXF_INSN_MVTACHI_A;goto extract_sfmt_mvtachi_a; - case 1 : itype = M32RXF_INSN_MVTACLO_A;goto extract_sfmt_mvtachi_a; + case 0 : itype = M32RXF_INSN_MVTACHI_A; goto extract_sfmt_mvtachi_a; + case 1 : itype = M32RXF_INSN_MVTACLO_A; goto extract_sfmt_mvtachi_a; default : itype = M32RXF_INSN_X_INVALID; goto extract_sfmt_empty; } } - case 88 : itype = M32RXF_INSN_RACH_DSI;goto extract_sfmt_rac_dsi; - case 89 : itype = M32RXF_INSN_RAC_DSI;goto extract_sfmt_rac_dsi; - case 90 : itype = M32RXF_INSN_MULWU1;goto extract_sfmt_mulwu1; - case 91 : itype = M32RXF_INSN_MACWU1;goto extract_sfmt_macwu1; - case 92 : itype = M32RXF_INSN_MACLH1;goto extract_sfmt_macwu1; - case 93 : itype = M32RXF_INSN_MSBLO;goto extract_sfmt_msblo; - case 94 : itype = M32RXF_INSN_SADD;goto extract_sfmt_sadd; + case 88 : itype = M32RXF_INSN_RACH_DSI; goto extract_sfmt_rac_dsi; + case 89 : itype = M32RXF_INSN_RAC_DSI; goto extract_sfmt_rac_dsi; + case 90 : itype = M32RXF_INSN_MULWU1; goto extract_sfmt_mulwu1; + case 91 : itype = M32RXF_INSN_MACWU1; goto extract_sfmt_macwu1; + case 92 : itype = M32RXF_INSN_MACLH1; goto extract_sfmt_macwu1; + case 93 : itype = M32RXF_INSN_MSBLO; goto extract_sfmt_msblo; + case 94 : itype = M32RXF_INSN_SADD; goto extract_sfmt_sadd; case 95 : { unsigned int val = (((insn >> 0) & (3 << 0))); switch (val) { - case 0 : itype = M32RXF_INSN_MVFACHI_A;goto extract_sfmt_mvfachi_a; - case 1 : itype = M32RXF_INSN_MVFACLO_A;goto extract_sfmt_mvfachi_a; - case 2 : itype = M32RXF_INSN_MVFACMI_A;goto extract_sfmt_mvfachi_a; + case 0 : itype = M32RXF_INSN_MVFACHI_A; goto extract_sfmt_mvfachi_a; + case 1 : itype = M32RXF_INSN_MVFACLO_A; goto extract_sfmt_mvfachi_a; + case 2 : itype = M32RXF_INSN_MVFACMI_A; goto extract_sfmt_mvfachi_a; default : itype = M32RXF_INSN_X_INVALID; goto extract_sfmt_empty; } } @@ -397,21 +397,27 @@ m32rxf_decode (SIM_CPU *current_cpu, IADDR pc, case 108 : /* fall through */ case 109 : /* fall through */ case 110 : /* fall through */ - case 111 : itype = M32RXF_INSN_LDI8;goto extract_sfmt_ldi8; + case 111 : itype = M32RXF_INSN_LDI8; goto extract_sfmt_ldi8; case 112 : { - unsigned int val = (((insn >> 8) & (15 << 0))); + unsigned int val = (((insn >> 7) & (15 << 1)) | ((insn >> 0) & (1 << 0))); switch (val) { - case 0 : itype = M32RXF_INSN_NOP;goto extract_sfmt_nop; - case 4 : itype = M32RXF_INSN_SC;goto extract_sfmt_sc; - case 5 : itype = M32RXF_INSN_SNC;goto extract_sfmt_sc; - case 8 : itype = M32RXF_INSN_BCL8;goto extract_sfmt_bcl8; - case 9 : itype = M32RXF_INSN_BNCL8;goto extract_sfmt_bcl8; - case 12 : itype = M32RXF_INSN_BC8;goto extract_sfmt_bc8; - case 13 : itype = M32RXF_INSN_BNC8;goto extract_sfmt_bc8; - case 14 : itype = M32RXF_INSN_BL8;goto extract_sfmt_bl8; - case 15 : itype = M32RXF_INSN_BRA8;goto extract_sfmt_bra8; + case 0 : itype = M32RXF_INSN_NOP; goto extract_sfmt_nop; + case 9 : itype = M32RXF_INSN_SC; goto extract_sfmt_sc; + case 11 : itype = M32RXF_INSN_SNC; goto extract_sfmt_sc; + case 16 : /* fall through */ + case 17 : itype = M32RXF_INSN_BCL8; goto extract_sfmt_bcl8; + case 18 : /* fall through */ + case 19 : itype = M32RXF_INSN_BNCL8; goto extract_sfmt_bcl8; + case 24 : /* fall through */ + case 25 : itype = M32RXF_INSN_BC8; goto extract_sfmt_bc8; + case 26 : /* fall through */ + case 27 : itype = M32RXF_INSN_BNC8; goto extract_sfmt_bc8; + case 28 : /* fall through */ + case 29 : itype = M32RXF_INSN_BL8; goto extract_sfmt_bl8; + case 30 : /* fall through */ + case 31 : itype = M32RXF_INSN_BRA8; goto extract_sfmt_bra8; default : itype = M32RXF_INSN_X_INVALID; goto extract_sfmt_empty; } } @@ -434,67 +440,67 @@ m32rxf_decode (SIM_CPU *current_cpu, IADDR pc, unsigned int val = (((insn >> 8) & (7 << 0))); switch (val) { - case 0 : itype = M32RXF_INSN_BCL8;goto extract_sfmt_bcl8; - case 1 : itype = M32RXF_INSN_BNCL8;goto extract_sfmt_bcl8; - case 4 : itype = M32RXF_INSN_BC8;goto extract_sfmt_bc8; - case 5 : itype = M32RXF_INSN_BNC8;goto extract_sfmt_bc8; - case 6 : itype = M32RXF_INSN_BL8;goto extract_sfmt_bl8; - case 7 : itype = M32RXF_INSN_BRA8;goto extract_sfmt_bra8; + case 0 : itype = M32RXF_INSN_BCL8; goto extract_sfmt_bcl8; + case 1 : itype = M32RXF_INSN_BNCL8; goto extract_sfmt_bcl8; + case 4 : itype = M32RXF_INSN_BC8; goto extract_sfmt_bc8; + case 5 : itype = M32RXF_INSN_BNC8; goto extract_sfmt_bc8; + case 6 : itype = M32RXF_INSN_BL8; goto extract_sfmt_bl8; + case 7 : itype = M32RXF_INSN_BRA8; goto extract_sfmt_bra8; default : itype = M32RXF_INSN_X_INVALID; goto extract_sfmt_empty; } } - case 132 : itype = M32RXF_INSN_CMPI;goto extract_sfmt_cmpi; - case 133 : itype = M32RXF_INSN_CMPUI;goto extract_sfmt_cmpi; + case 132 : itype = M32RXF_INSN_CMPI; goto extract_sfmt_cmpi; + case 133 : itype = M32RXF_INSN_CMPUI; goto extract_sfmt_cmpi; case 134 : { unsigned int val = (((insn >> -8) & (3 << 0))); switch (val) { - case 0 : itype = M32RXF_INSN_SAT;goto extract_sfmt_sat; - case 2 : itype = M32RXF_INSN_SATH;goto extract_sfmt_satb; - case 3 : itype = M32RXF_INSN_SATB;goto extract_sfmt_satb; + case 0 : itype = M32RXF_INSN_SAT; goto extract_sfmt_sat; + case 2 : itype = M32RXF_INSN_SATH; goto extract_sfmt_satb; + case 3 : itype = M32RXF_INSN_SATB; goto extract_sfmt_satb; default : itype = M32RXF_INSN_X_INVALID; goto extract_sfmt_empty; } } - case 136 : itype = M32RXF_INSN_ADDV3;goto extract_sfmt_addv3; - case 138 : itype = M32RXF_INSN_ADD3;goto extract_sfmt_add3; - case 140 : itype = M32RXF_INSN_AND3;goto extract_sfmt_and3; - case 141 : itype = M32RXF_INSN_XOR3;goto extract_sfmt_and3; - case 142 : itype = M32RXF_INSN_OR3;goto extract_sfmt_or3; + case 136 : itype = M32RXF_INSN_ADDV3; goto extract_sfmt_addv3; + case 138 : itype = M32RXF_INSN_ADD3; goto extract_sfmt_add3; + case 140 : itype = M32RXF_INSN_AND3; goto extract_sfmt_and3; + case 141 : itype = M32RXF_INSN_XOR3; goto extract_sfmt_and3; + case 142 : itype = M32RXF_INSN_OR3; goto extract_sfmt_or3; case 144 : { unsigned int val = (((insn >> -12) & (1 << 0))); switch (val) { - case 0 : itype = M32RXF_INSN_DIV;goto extract_sfmt_div; - case 1 : itype = M32RXF_INSN_DIVH;goto extract_sfmt_div; + case 0 : itype = M32RXF_INSN_DIV; goto extract_sfmt_div; + case 1 : itype = M32RXF_INSN_DIVH; goto extract_sfmt_div; default : itype = M32RXF_INSN_X_INVALID; goto extract_sfmt_empty; } } - case 145 : itype = M32RXF_INSN_DIVU;goto extract_sfmt_div; - case 146 : itype = M32RXF_INSN_REM;goto extract_sfmt_div; - case 147 : itype = M32RXF_INSN_REMU;goto extract_sfmt_div; - case 152 : itype = M32RXF_INSN_SRL3;goto extract_sfmt_sll3; - case 154 : itype = M32RXF_INSN_SRA3;goto extract_sfmt_sll3; - case 156 : itype = M32RXF_INSN_SLL3;goto extract_sfmt_sll3; - case 159 : itype = M32RXF_INSN_LDI16;goto extract_sfmt_ldi16; - case 160 : itype = M32RXF_INSN_STB_D;goto extract_sfmt_stb_d; - case 162 : itype = M32RXF_INSN_STH_D;goto extract_sfmt_sth_d; - case 164 : itype = M32RXF_INSN_ST_D;goto extract_sfmt_st_d; - case 168 : itype = M32RXF_INSN_LDB_D;goto extract_sfmt_ldb_d; - case 169 : itype = M32RXF_INSN_LDUB_D;goto extract_sfmt_ldb_d; - case 170 : itype = M32RXF_INSN_LDH_D;goto extract_sfmt_ldh_d; - case 171 : itype = M32RXF_INSN_LDUH_D;goto extract_sfmt_ldh_d; - case 172 : itype = M32RXF_INSN_LD_D;goto extract_sfmt_ld_d; - case 176 : itype = M32RXF_INSN_BEQ;goto extract_sfmt_beq; - case 177 : itype = M32RXF_INSN_BNE;goto extract_sfmt_beq; - case 184 : itype = M32RXF_INSN_BEQZ;goto extract_sfmt_beqz; - case 185 : itype = M32RXF_INSN_BNEZ;goto extract_sfmt_beqz; - case 186 : itype = M32RXF_INSN_BLTZ;goto extract_sfmt_beqz; - case 187 : itype = M32RXF_INSN_BGEZ;goto extract_sfmt_beqz; - case 188 : itype = M32RXF_INSN_BLEZ;goto extract_sfmt_beqz; - case 189 : itype = M32RXF_INSN_BGTZ;goto extract_sfmt_beqz; - case 220 : itype = M32RXF_INSN_SETH;goto extract_sfmt_seth; + case 145 : itype = M32RXF_INSN_DIVU; goto extract_sfmt_div; + case 146 : itype = M32RXF_INSN_REM; goto extract_sfmt_div; + case 147 : itype = M32RXF_INSN_REMU; goto extract_sfmt_div; + case 152 : itype = M32RXF_INSN_SRL3; goto extract_sfmt_sll3; + case 154 : itype = M32RXF_INSN_SRA3; goto extract_sfmt_sll3; + case 156 : itype = M32RXF_INSN_SLL3; goto extract_sfmt_sll3; + case 159 : itype = M32RXF_INSN_LDI16; goto extract_sfmt_ldi16; + case 160 : itype = M32RXF_INSN_STB_D; goto extract_sfmt_stb_d; + case 162 : itype = M32RXF_INSN_STH_D; goto extract_sfmt_sth_d; + case 164 : itype = M32RXF_INSN_ST_D; goto extract_sfmt_st_d; + case 168 : itype = M32RXF_INSN_LDB_D; goto extract_sfmt_ldb_d; + case 169 : itype = M32RXF_INSN_LDUB_D; goto extract_sfmt_ldb_d; + case 170 : itype = M32RXF_INSN_LDH_D; goto extract_sfmt_ldh_d; + case 171 : itype = M32RXF_INSN_LDUH_D; goto extract_sfmt_ldh_d; + case 172 : itype = M32RXF_INSN_LD_D; goto extract_sfmt_ld_d; + case 176 : itype = M32RXF_INSN_BEQ; goto extract_sfmt_beq; + case 177 : itype = M32RXF_INSN_BNE; goto extract_sfmt_beq; + case 184 : itype = M32RXF_INSN_BEQZ; goto extract_sfmt_beqz; + case 185 : itype = M32RXF_INSN_BNEZ; goto extract_sfmt_beqz; + case 186 : itype = M32RXF_INSN_BLTZ; goto extract_sfmt_beqz; + case 187 : itype = M32RXF_INSN_BGEZ; goto extract_sfmt_beqz; + case 188 : itype = M32RXF_INSN_BLEZ; goto extract_sfmt_beqz; + case 189 : itype = M32RXF_INSN_BGTZ; goto extract_sfmt_beqz; + case 220 : itype = M32RXF_INSN_SETH; goto extract_sfmt_seth; case 224 : /* fall through */ case 225 : /* fall through */ case 226 : /* fall through */ @@ -510,7 +516,7 @@ m32rxf_decode (SIM_CPU *current_cpu, IADDR pc, case 236 : /* fall through */ case 237 : /* fall through */ case 238 : /* fall through */ - case 239 : itype = M32RXF_INSN_LD24;goto extract_sfmt_ld24; + case 239 : itype = M32RXF_INSN_LD24; goto extract_sfmt_ld24; case 240 : /* fall through */ case 241 : /* fall through */ case 242 : /* fall through */ @@ -531,12 +537,12 @@ m32rxf_decode (SIM_CPU *current_cpu, IADDR pc, unsigned int val = (((insn >> 8) & (7 << 0))); switch (val) { - case 0 : itype = M32RXF_INSN_BCL24;goto extract_sfmt_bcl24; - case 1 : itype = M32RXF_INSN_BNCL24;goto extract_sfmt_bcl24; - case 4 : itype = M32RXF_INSN_BC24;goto extract_sfmt_bc24; - case 5 : itype = M32RXF_INSN_BNC24;goto extract_sfmt_bc24; - case 6 : itype = M32RXF_INSN_BL24;goto extract_sfmt_bl24; - case 7 : itype = M32RXF_INSN_BRA24;goto extract_sfmt_bra24; + case 0 : itype = M32RXF_INSN_BCL24; goto extract_sfmt_bcl24; + case 1 : itype = M32RXF_INSN_BNCL24; goto extract_sfmt_bcl24; + case 4 : itype = M32RXF_INSN_BC24; goto extract_sfmt_bc24; + case 5 : itype = M32RXF_INSN_BNC24; goto extract_sfmt_bc24; + case 6 : itype = M32RXF_INSN_BL24; goto extract_sfmt_bl24; + case 7 : itype = M32RXF_INSN_BRA24; goto extract_sfmt_bra24; default : itype = M32RXF_INSN_X_INVALID; goto extract_sfmt_empty; } } |