- into the enum name.
-
- The order here must match the order in m32r_decode_vars in decode.c. */
-
- static void *labels[] = {
- && case_sem_INSN_ILLEGAL,
- && case_sem_INSN_ADD,
- && case_sem_INSN_ADD3,
- && case_sem_INSN_AND,
- && case_sem_INSN_AND3,
- && case_sem_INSN_OR,
- && case_sem_INSN_OR3,
- && case_sem_INSN_XOR,
- && case_sem_INSN_XOR3,
- && case_sem_INSN_ADDI,
- && case_sem_INSN_ADDV,
- && case_sem_INSN_ADDV3,
- && case_sem_INSN_ADDX,
- && case_sem_INSN_BC8,
- && case_sem_INSN_BC24,
- && case_sem_INSN_BEQ,
- && case_sem_INSN_BEQZ,
- && case_sem_INSN_BGEZ,
- && case_sem_INSN_BGTZ,
- && case_sem_INSN_BLEZ,
- && case_sem_INSN_BLTZ,
- && case_sem_INSN_BNEZ,
- && case_sem_INSN_BL8,
- && case_sem_INSN_BL24,
- && case_sem_INSN_BNC8,
- && case_sem_INSN_BNC24,
- && case_sem_INSN_BNE,
- && case_sem_INSN_BRA8,
- && case_sem_INSN_BRA24,
- && case_sem_INSN_CMP,
- && case_sem_INSN_CMPI,
- && case_sem_INSN_CMPU,
- && case_sem_INSN_CMPUI,
- && case_sem_INSN_DIV,
- && case_sem_INSN_DIVU,
- && case_sem_INSN_REM,
- && case_sem_INSN_REMU,
- && case_sem_INSN_JL,
- && case_sem_INSN_JMP,
- && case_sem_INSN_LD,
- && case_sem_INSN_LD_D,
- && case_sem_INSN_LDB,
- && case_sem_INSN_LDB_D,
- && case_sem_INSN_LDH,
- && case_sem_INSN_LDH_D,
- && case_sem_INSN_LDUB,
- && case_sem_INSN_LDUB_D,
- && case_sem_INSN_LDUH,
- && case_sem_INSN_LDUH_D,
- && case_sem_INSN_LD_PLUS,
- && case_sem_INSN_LD24,
- && case_sem_INSN_LDI8,
- && case_sem_INSN_LDI16,
- && case_sem_INSN_LOCK,
- && case_sem_INSN_MACHI,
- && case_sem_INSN_MACLO,
- && case_sem_INSN_MACWHI,
- && case_sem_INSN_MACWLO,
- && case_sem_INSN_MUL,
- && case_sem_INSN_MULHI,
- && case_sem_INSN_MULLO,
- && case_sem_INSN_MULWHI,
- && case_sem_INSN_MULWLO,
- && case_sem_INSN_MV,
- && case_sem_INSN_MVFACHI,
- && case_sem_INSN_MVFACLO,
- && case_sem_INSN_MVFACMI,
- && case_sem_INSN_MVFC,
- && case_sem_INSN_MVTACHI,
- && case_sem_INSN_MVTACLO,
- && case_sem_INSN_MVTC,
- && case_sem_INSN_NEG,
- && case_sem_INSN_NOP,
- && case_sem_INSN_NOT,
- && case_sem_INSN_RAC,
- && case_sem_INSN_RACH,
- && case_sem_INSN_RTE,
- && case_sem_INSN_SETH,
- && case_sem_INSN_SLL,
- && case_sem_INSN_SLL3,
- && case_sem_INSN_SLLI,
- && case_sem_INSN_SRA,
- && case_sem_INSN_SRA3,
- && case_sem_INSN_SRAI,
- && case_sem_INSN_SRL,
- && case_sem_INSN_SRL3,
- && case_sem_INSN_SRLI,
- && case_sem_INSN_ST,
- && case_sem_INSN_ST_D,
- && case_sem_INSN_STB,
- && case_sem_INSN_STB_D,
- && case_sem_INSN_STH,
- && case_sem_INSN_STH_D,
- && case_sem_INSN_ST_PLUS,
- && case_sem_INSN_ST_MINUS,
- && case_sem_INSN_SUB,
- && case_sem_INSN_SUBV,
- && case_sem_INSN_SUBX,
- && case_sem_INSN_TRAP,
- && case_sem_INSN_UNLOCK,
- 0
+ into the enum name. */
+
+ static struct {
+ int index;
+ void *label;
+ } labels[] = {
+ { M32RBF_INSN_X_INVALID, && case_sem_INSN_X_INVALID },
+ { M32RBF_INSN_X_AFTER, && case_sem_INSN_X_AFTER },
+ { M32RBF_INSN_X_BEFORE, && case_sem_INSN_X_BEFORE },
+ { M32RBF_INSN_X_CTI_CHAIN, && case_sem_INSN_X_CTI_CHAIN },
+ { M32RBF_INSN_X_CHAIN, && case_sem_INSN_X_CHAIN },
+ { M32RBF_INSN_X_BEGIN, && case_sem_INSN_X_BEGIN },
+ { M32RBF_INSN_ADD, && case_sem_INSN_ADD },
+ { M32RBF_INSN_ADD3, && case_sem_INSN_ADD3 },
+ { M32RBF_INSN_AND, && case_sem_INSN_AND },
+ { M32RBF_INSN_AND3, && case_sem_INSN_AND3 },
+ { M32RBF_INSN_OR, && case_sem_INSN_OR },
+ { M32RBF_INSN_OR3, && case_sem_INSN_OR3 },
+ { M32RBF_INSN_XOR, && case_sem_INSN_XOR },
+ { M32RBF_INSN_XOR3, && case_sem_INSN_XOR3 },
+ { M32RBF_INSN_ADDI, && case_sem_INSN_ADDI },
+ { M32RBF_INSN_ADDV, && case_sem_INSN_ADDV },
+ { M32RBF_INSN_ADDV3, && case_sem_INSN_ADDV3 },
+ { M32RBF_INSN_ADDX, && case_sem_INSN_ADDX },
+ { M32RBF_INSN_BC8, && case_sem_INSN_BC8 },
+ { M32RBF_INSN_BC24, && case_sem_INSN_BC24 },
+ { M32RBF_INSN_BEQ, && case_sem_INSN_BEQ },
+ { M32RBF_INSN_BEQZ, && case_sem_INSN_BEQZ },
+ { M32RBF_INSN_BGEZ, && case_sem_INSN_BGEZ },
+ { M32RBF_INSN_BGTZ, && case_sem_INSN_BGTZ },
+ { M32RBF_INSN_BLEZ, && case_sem_INSN_BLEZ },
+ { M32RBF_INSN_BLTZ, && case_sem_INSN_BLTZ },
+ { M32RBF_INSN_BNEZ, && case_sem_INSN_BNEZ },
+ { M32RBF_INSN_BL8, && case_sem_INSN_BL8 },
+ { M32RBF_INSN_BL24, && case_sem_INSN_BL24 },
+ { M32RBF_INSN_BNC8, && case_sem_INSN_BNC8 },
+ { M32RBF_INSN_BNC24, && case_sem_INSN_BNC24 },
+ { M32RBF_INSN_BNE, && case_sem_INSN_BNE },
+ { M32RBF_INSN_BRA8, && case_sem_INSN_BRA8 },
+ { M32RBF_INSN_BRA24, && case_sem_INSN_BRA24 },
+ { M32RBF_INSN_CMP, && case_sem_INSN_CMP },
+ { M32RBF_INSN_CMPI, && case_sem_INSN_CMPI },
+ { M32RBF_INSN_CMPU, && case_sem_INSN_CMPU },
+ { M32RBF_INSN_CMPUI, && case_sem_INSN_CMPUI },
+ { M32RBF_INSN_DIV, && case_sem_INSN_DIV },
+ { M32RBF_INSN_DIVU, && case_sem_INSN_DIVU },
+ { M32RBF_INSN_REM, && case_sem_INSN_REM },
+ { M32RBF_INSN_REMU, && case_sem_INSN_REMU },
+ { M32RBF_INSN_JL, && case_sem_INSN_JL },
+ { M32RBF_INSN_JMP, && case_sem_INSN_JMP },
+ { M32RBF_INSN_LD, && case_sem_INSN_LD },
+ { M32RBF_INSN_LD_D, && case_sem_INSN_LD_D },
+ { M32RBF_INSN_LDB, && case_sem_INSN_LDB },
+ { M32RBF_INSN_LDB_D, && case_sem_INSN_LDB_D },
+ { M32RBF_INSN_LDH, && case_sem_INSN_LDH },
+ { M32RBF_INSN_LDH_D, && case_sem_INSN_LDH_D },
+ { M32RBF_INSN_LDUB, && case_sem_INSN_LDUB },
+ { M32RBF_INSN_LDUB_D, && case_sem_INSN_LDUB_D },
+ { M32RBF_INSN_LDUH, && case_sem_INSN_LDUH },
+ { M32RBF_INSN_LDUH_D, && case_sem_INSN_LDUH_D },
+ { M32RBF_INSN_LD_PLUS, && case_sem_INSN_LD_PLUS },
+ { M32RBF_INSN_LD24, && case_sem_INSN_LD24 },
+ { M32RBF_INSN_LDI8, && case_sem_INSN_LDI8 },
+ { M32RBF_INSN_LDI16, && case_sem_INSN_LDI16 },
+ { M32RBF_INSN_LOCK, && case_sem_INSN_LOCK },
+ { M32RBF_INSN_MACHI, && case_sem_INSN_MACHI },
+ { M32RBF_INSN_MACLO, && case_sem_INSN_MACLO },
+ { M32RBF_INSN_MACWHI, && case_sem_INSN_MACWHI },
+ { M32RBF_INSN_MACWLO, && case_sem_INSN_MACWLO },
+ { M32RBF_INSN_MUL, && case_sem_INSN_MUL },
+ { M32RBF_INSN_MULHI, && case_sem_INSN_MULHI },
+ { M32RBF_INSN_MULLO, && case_sem_INSN_MULLO },
+ { M32RBF_INSN_MULWHI, && case_sem_INSN_MULWHI },
+ { M32RBF_INSN_MULWLO, && case_sem_INSN_MULWLO },
+ { M32RBF_INSN_MV, && case_sem_INSN_MV },
+ { M32RBF_INSN_MVFACHI, && case_sem_INSN_MVFACHI },
+ { M32RBF_INSN_MVFACLO, && case_sem_INSN_MVFACLO },
+ { M32RBF_INSN_MVFACMI, && case_sem_INSN_MVFACMI },
+ { M32RBF_INSN_MVFC, && case_sem_INSN_MVFC },
+ { M32RBF_INSN_MVTACHI, && case_sem_INSN_MVTACHI },
+ { M32RBF_INSN_MVTACLO, && case_sem_INSN_MVTACLO },
+ { M32RBF_INSN_MVTC, && case_sem_INSN_MVTC },
+ { M32RBF_INSN_NEG, && case_sem_INSN_NEG },
+ { M32RBF_INSN_NOP, && case_sem_INSN_NOP },
+ { M32RBF_INSN_NOT, && case_sem_INSN_NOT },
+ { M32RBF_INSN_RAC, && case_sem_INSN_RAC },
+ { M32RBF_INSN_RACH, && case_sem_INSN_RACH },
+ { M32RBF_INSN_RTE, && case_sem_INSN_RTE },
+ { M32RBF_INSN_SETH, && case_sem_INSN_SETH },
+ { M32RBF_INSN_SLL, && case_sem_INSN_SLL },
+ { M32RBF_INSN_SLL3, && case_sem_INSN_SLL3 },
+ { M32RBF_INSN_SLLI, && case_sem_INSN_SLLI },
+ { M32RBF_INSN_SRA, && case_sem_INSN_SRA },
+ { M32RBF_INSN_SRA3, && case_sem_INSN_SRA3 },
+ { M32RBF_INSN_SRAI, && case_sem_INSN_SRAI },
+ { M32RBF_INSN_SRL, && case_sem_INSN_SRL },
+ { M32RBF_INSN_SRL3, && case_sem_INSN_SRL3 },
+ { M32RBF_INSN_SRLI, && case_sem_INSN_SRLI },
+ { M32RBF_INSN_ST, && case_sem_INSN_ST },
+ { M32RBF_INSN_ST_D, && case_sem_INSN_ST_D },
+ { M32RBF_INSN_STB, && case_sem_INSN_STB },
+ { M32RBF_INSN_STB_D, && case_sem_INSN_STB_D },
+ { M32RBF_INSN_STH, && case_sem_INSN_STH },
+ { M32RBF_INSN_STH_D, && case_sem_INSN_STH_D },
+ { M32RBF_INSN_ST_PLUS, && case_sem_INSN_ST_PLUS },
+ { M32RBF_INSN_ST_MINUS, && case_sem_INSN_ST_MINUS },
+ { M32RBF_INSN_SUB, && case_sem_INSN_SUB },
+ { M32RBF_INSN_SUBV, && case_sem_INSN_SUBV },
+ { M32RBF_INSN_SUBX, && case_sem_INSN_SUBX },
+ { M32RBF_INSN_TRAP, && case_sem_INSN_TRAP },
+ { M32RBF_INSN_UNLOCK, && case_sem_INSN_UNLOCK },
+ { M32RBF_INSN_CLRPSW, && case_sem_INSN_CLRPSW },
+ { M32RBF_INSN_SETPSW, && case_sem_INSN_SETPSW },
+ { M32RBF_INSN_BSET, && case_sem_INSN_BSET },
+ { M32RBF_INSN_BCLR, && case_sem_INSN_BCLR },
+ { M32RBF_INSN_BTST, && case_sem_INSN_BTST },
+ { 0, 0 }