X-Git-Url: http://drtracing.org/?a=blobdiff_plain;f=sim%2Fm32r%2Fdecode.h;h=c36e352a1654c8784da2f29eaed693b4fa0b9cec;hb=6bb11ab3b2e75cc4db2c2f63b0ba903c92313406;hp=3511e31eaa0dd6cc45b62e949d161b0423727aec;hpb=e0bd6e186c1523ae7c8e9719d4b3bf84c590d76b;p=deliverable%2Fbinutils-gdb.git diff --git a/sim/m32r/decode.h b/sim/m32r/decode.h index 3511e31eaa..c36e352a16 100644 --- a/sim/m32r/decode.h +++ b/sim/m32r/decode.h @@ -1,285 +1,101 @@ -/* Decode header for m32r. +/* Decode header for m32rbf. -This file is machine generated with CGEN. +THIS FILE IS MACHINE GENERATED WITH CGEN. -Copyright (C) 1996, 1997, 1998 Free Software Foundation, Inc. +Copyright 1996-2010, 2012 Free Software Foundation, Inc. -This file is part of the GNU Simulators. +This file is part of the GNU simulators. -This program is free software; you can redistribute it and/or modify -it under the terms of the GNU General Public License as published by -the Free Software Foundation; either version 2, or (at your option) -any later version. + This file is free software; you can redistribute it and/or modify + it under the terms of the GNU General Public License as published by + the Free Software Foundation; either version 3, or (at your option) + any later version. -This program is distributed in the hope that it will be useful, -but WITHOUT ANY WARRANTY; without even the implied warranty of -MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -GNU General Public License for more details. + It is distributed in the hope that it will be useful, but WITHOUT + ANY WARRANTY; without even the implied warranty of MERCHANTABILITY + or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public + License for more details. -You should have received a copy of the GNU General Public License along -with this program; if not, write to the Free Software Foundation, Inc., -59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. + You should have received a copy of the GNU General Public License along + with this program; if not, write to the Free Software Foundation, Inc., + 51 Franklin Street - Fifth Floor, Boston, MA 02110-1301, USA. */ -#ifndef M32R_DECODE_H -#define M32R_DECODE_H +#ifndef M32RBF_DECODE_H +#define M32RBF_DECODE_H -#define EX(fn) XCONCAT3 (m32r,_ex_,fn) -#define SEM(fn) XCONCAT3 (m32r,_sem_,fn) -#define SEMC(fn) XCONCAT3 (m32r,_semc_,fn) +extern const IDESC *m32rbf_decode (SIM_CPU *, IADDR, + CGEN_INSN_WORD, CGEN_INSN_WORD, + ARGBUF *); +extern void m32rbf_init_idesc_table (SIM_CPU *); +extern void m32rbf_sem_init_idesc_table (SIM_CPU *); +extern void m32rbf_semf_init_idesc_table (SIM_CPU *); -extern EXTRACT_FN EX (illegal); -extern SEMANTIC_FN SEM (illegal); -extern SEMANTIC_CACHE_FN SEMC (illegal); +/* Enum declaration for instructions in cpu family m32rbf. */ +typedef enum m32rbf_insn_type { + M32RBF_INSN_X_INVALID, M32RBF_INSN_X_AFTER, M32RBF_INSN_X_BEFORE, M32RBF_INSN_X_CTI_CHAIN + , M32RBF_INSN_X_CHAIN, M32RBF_INSN_X_BEGIN, M32RBF_INSN_ADD, M32RBF_INSN_ADD3 + , M32RBF_INSN_AND, M32RBF_INSN_AND3, M32RBF_INSN_OR, M32RBF_INSN_OR3 + , M32RBF_INSN_XOR, M32RBF_INSN_XOR3, M32RBF_INSN_ADDI, M32RBF_INSN_ADDV + , M32RBF_INSN_ADDV3, M32RBF_INSN_ADDX, M32RBF_INSN_BC8, M32RBF_INSN_BC24 + , M32RBF_INSN_BEQ, M32RBF_INSN_BEQZ, M32RBF_INSN_BGEZ, M32RBF_INSN_BGTZ + , M32RBF_INSN_BLEZ, M32RBF_INSN_BLTZ, M32RBF_INSN_BNEZ, M32RBF_INSN_BL8 + , M32RBF_INSN_BL24, M32RBF_INSN_BNC8, M32RBF_INSN_BNC24, M32RBF_INSN_BNE + , M32RBF_INSN_BRA8, M32RBF_INSN_BRA24, M32RBF_INSN_CMP, M32RBF_INSN_CMPI + , M32RBF_INSN_CMPU, M32RBF_INSN_CMPUI, M32RBF_INSN_DIV, M32RBF_INSN_DIVU + , M32RBF_INSN_REM, M32RBF_INSN_REMU, M32RBF_INSN_JL, M32RBF_INSN_JMP + , M32RBF_INSN_LD, M32RBF_INSN_LD_D, M32RBF_INSN_LDB, M32RBF_INSN_LDB_D + , M32RBF_INSN_LDH, M32RBF_INSN_LDH_D, M32RBF_INSN_LDUB, M32RBF_INSN_LDUB_D + , M32RBF_INSN_LDUH, M32RBF_INSN_LDUH_D, M32RBF_INSN_LD_PLUS, M32RBF_INSN_LD24 + , M32RBF_INSN_LDI8, M32RBF_INSN_LDI16, M32RBF_INSN_LOCK, M32RBF_INSN_MACHI + , M32RBF_INSN_MACLO, M32RBF_INSN_MACWHI, M32RBF_INSN_MACWLO, M32RBF_INSN_MUL + , M32RBF_INSN_MULHI, M32RBF_INSN_MULLO, M32RBF_INSN_MULWHI, M32RBF_INSN_MULWLO + , M32RBF_INSN_MV, M32RBF_INSN_MVFACHI, M32RBF_INSN_MVFACLO, M32RBF_INSN_MVFACMI + , M32RBF_INSN_MVFC, M32RBF_INSN_MVTACHI, M32RBF_INSN_MVTACLO, M32RBF_INSN_MVTC + , M32RBF_INSN_NEG, M32RBF_INSN_NOP, M32RBF_INSN_NOT, M32RBF_INSN_RAC + , M32RBF_INSN_RACH, M32RBF_INSN_RTE, M32RBF_INSN_SETH, M32RBF_INSN_SLL + , M32RBF_INSN_SLL3, M32RBF_INSN_SLLI, M32RBF_INSN_SRA, M32RBF_INSN_SRA3 + , M32RBF_INSN_SRAI, M32RBF_INSN_SRL, M32RBF_INSN_SRL3, M32RBF_INSN_SRLI + , M32RBF_INSN_ST, M32RBF_INSN_ST_D, M32RBF_INSN_STB, M32RBF_INSN_STB_D + , M32RBF_INSN_STH, M32RBF_INSN_STH_D, M32RBF_INSN_ST_PLUS, M32RBF_INSN_ST_MINUS + , M32RBF_INSN_SUB, M32RBF_INSN_SUBV, M32RBF_INSN_SUBX, M32RBF_INSN_TRAP + , M32RBF_INSN_UNLOCK, M32RBF_INSN_CLRPSW, M32RBF_INSN_SETPSW, M32RBF_INSN_BSET + , M32RBF_INSN_BCLR, M32RBF_INSN_BTST, M32RBF_INSN__MAX +} M32RBF_INSN_TYPE; -extern EXTRACT_FN EX (fmt_0_add); -extern EXTRACT_FN EX (fmt_1_add3); -extern EXTRACT_FN EX (fmt_2_and3); -extern EXTRACT_FN EX (fmt_3_or3); -extern EXTRACT_FN EX (fmt_4_addi); -extern EXTRACT_FN EX (fmt_5_addv3); -extern EXTRACT_FN EX (fmt_6_addx); -extern EXTRACT_FN EX (fmt_7_bc8); -extern EXTRACT_FN EX (fmt_8_bc24); -extern EXTRACT_FN EX (fmt_9_beq); -extern EXTRACT_FN EX (fmt_10_beqz); -extern EXTRACT_FN EX (fmt_11_bl8); -extern EXTRACT_FN EX (fmt_12_bl24); -extern EXTRACT_FN EX (fmt_13_bra8); -extern EXTRACT_FN EX (fmt_14_bra24); -extern EXTRACT_FN EX (fmt_15_cmp); -extern EXTRACT_FN EX (fmt_16_cmpi); -extern EXTRACT_FN EX (fmt_17_cmpui); -extern EXTRACT_FN EX (fmt_18_div); -extern EXTRACT_FN EX (fmt_19_jl); -extern EXTRACT_FN EX (fmt_20_jmp); -extern EXTRACT_FN EX (fmt_21_ld); -extern EXTRACT_FN EX (fmt_22_ld_d); -extern EXTRACT_FN EX (fmt_23_ldb); -extern EXTRACT_FN EX (fmt_24_ldb_d); -extern EXTRACT_FN EX (fmt_25_ldh); -extern EXTRACT_FN EX (fmt_26_ldh_d); -extern EXTRACT_FN EX (fmt_27_ld24); -extern EXTRACT_FN EX (fmt_28_ldi8); -extern EXTRACT_FN EX (fmt_29_ldi16); -extern EXTRACT_FN EX (fmt_30_machi); -extern EXTRACT_FN EX (fmt_31_mv); -extern EXTRACT_FN EX (fmt_32_mvfachi); -extern EXTRACT_FN EX (fmt_33_mvfc); -extern EXTRACT_FN EX (fmt_34_mvtachi); -extern EXTRACT_FN EX (fmt_35_mvtc); -extern EXTRACT_FN EX (fmt_36_nop); -extern EXTRACT_FN EX (fmt_37_rac); -extern EXTRACT_FN EX (fmt_38_rte); -extern EXTRACT_FN EX (fmt_39_seth); -extern EXTRACT_FN EX (fmt_40_slli); -extern EXTRACT_FN EX (fmt_41_st_d); -extern EXTRACT_FN EX (fmt_42_trap); +/* Enum declaration for semantic formats in cpu family m32rbf. */ +typedef enum m32rbf_sfmt_type { + M32RBF_SFMT_EMPTY, M32RBF_SFMT_ADD, M32RBF_SFMT_ADD3, M32RBF_SFMT_AND3 + , M32RBF_SFMT_OR3, M32RBF_SFMT_ADDI, M32RBF_SFMT_ADDV, M32RBF_SFMT_ADDV3 + , M32RBF_SFMT_ADDX, M32RBF_SFMT_BC8, M32RBF_SFMT_BC24, M32RBF_SFMT_BEQ + , M32RBF_SFMT_BEQZ, M32RBF_SFMT_BL8, M32RBF_SFMT_BL24, M32RBF_SFMT_BRA8 + , M32RBF_SFMT_BRA24, M32RBF_SFMT_CMP, M32RBF_SFMT_CMPI, M32RBF_SFMT_DIV + , M32RBF_SFMT_JL, M32RBF_SFMT_JMP, M32RBF_SFMT_LD, M32RBF_SFMT_LD_D + , M32RBF_SFMT_LDB, M32RBF_SFMT_LDB_D, M32RBF_SFMT_LDH, M32RBF_SFMT_LDH_D + , M32RBF_SFMT_LD_PLUS, M32RBF_SFMT_LD24, M32RBF_SFMT_LDI8, M32RBF_SFMT_LDI16 + , M32RBF_SFMT_LOCK, M32RBF_SFMT_MACHI, M32RBF_SFMT_MULHI, M32RBF_SFMT_MV + , M32RBF_SFMT_MVFACHI, M32RBF_SFMT_MVFC, M32RBF_SFMT_MVTACHI, M32RBF_SFMT_MVTC + , M32RBF_SFMT_NOP, M32RBF_SFMT_RAC, M32RBF_SFMT_RTE, M32RBF_SFMT_SETH + , M32RBF_SFMT_SLL3, M32RBF_SFMT_SLLI, M32RBF_SFMT_ST, M32RBF_SFMT_ST_D + , M32RBF_SFMT_STB, M32RBF_SFMT_STB_D, M32RBF_SFMT_STH, M32RBF_SFMT_STH_D + , M32RBF_SFMT_ST_PLUS, M32RBF_SFMT_TRAP, M32RBF_SFMT_UNLOCK, M32RBF_SFMT_CLRPSW + , M32RBF_SFMT_SETPSW, M32RBF_SFMT_BSET, M32RBF_SFMT_BTST +} M32RBF_SFMT_TYPE; -extern SEMANTIC_FN SEM (add); -extern SEMANTIC_CACHE_FN SEMC (add); -extern SEMANTIC_FN SEM (add3); -extern SEMANTIC_CACHE_FN SEMC (add3); -extern SEMANTIC_FN SEM (and); -extern SEMANTIC_CACHE_FN SEMC (and); -extern SEMANTIC_FN SEM (and3); -extern SEMANTIC_CACHE_FN SEMC (and3); -extern SEMANTIC_FN SEM (or); -extern SEMANTIC_CACHE_FN SEMC (or); -extern SEMANTIC_FN SEM (or3); -extern SEMANTIC_CACHE_FN SEMC (or3); -extern SEMANTIC_FN SEM (xor); -extern SEMANTIC_CACHE_FN SEMC (xor); -extern SEMANTIC_FN SEM (xor3); -extern SEMANTIC_CACHE_FN SEMC (xor3); -extern SEMANTIC_FN SEM (addi); -extern SEMANTIC_CACHE_FN SEMC (addi); -extern SEMANTIC_FN SEM (addv); -extern SEMANTIC_CACHE_FN SEMC (addv); -extern SEMANTIC_FN SEM (addv3); -extern SEMANTIC_CACHE_FN SEMC (addv3); -extern SEMANTIC_FN SEM (addx); -extern SEMANTIC_CACHE_FN SEMC (addx); -extern SEMANTIC_FN SEM (bc8); -extern SEMANTIC_CACHE_FN SEMC (bc8); -extern SEMANTIC_FN SEM (bc24); -extern SEMANTIC_CACHE_FN SEMC (bc24); -extern SEMANTIC_FN SEM (beq); -extern SEMANTIC_CACHE_FN SEMC (beq); -extern SEMANTIC_FN SEM (beqz); -extern SEMANTIC_CACHE_FN SEMC (beqz); -extern SEMANTIC_FN SEM (bgez); -extern SEMANTIC_CACHE_FN SEMC (bgez); -extern SEMANTIC_FN SEM (bgtz); -extern SEMANTIC_CACHE_FN SEMC (bgtz); -extern SEMANTIC_FN SEM (blez); -extern SEMANTIC_CACHE_FN SEMC (blez); -extern SEMANTIC_FN SEM (bltz); -extern SEMANTIC_CACHE_FN SEMC (bltz); -extern SEMANTIC_FN SEM (bnez); -extern SEMANTIC_CACHE_FN SEMC (bnez); -extern SEMANTIC_FN SEM (bl8); -extern SEMANTIC_CACHE_FN SEMC (bl8); -extern SEMANTIC_FN SEM (bl24); -extern SEMANTIC_CACHE_FN SEMC (bl24); -extern SEMANTIC_FN SEM (bnc8); -extern SEMANTIC_CACHE_FN SEMC (bnc8); -extern SEMANTIC_FN SEM (bnc24); -extern SEMANTIC_CACHE_FN SEMC (bnc24); -extern SEMANTIC_FN SEM (bne); -extern SEMANTIC_CACHE_FN SEMC (bne); -extern SEMANTIC_FN SEM (bra8); -extern SEMANTIC_CACHE_FN SEMC (bra8); -extern SEMANTIC_FN SEM (bra24); -extern SEMANTIC_CACHE_FN SEMC (bra24); -extern SEMANTIC_FN SEM (cmp); -extern SEMANTIC_CACHE_FN SEMC (cmp); -extern SEMANTIC_FN SEM (cmpi); -extern SEMANTIC_CACHE_FN SEMC (cmpi); -extern SEMANTIC_FN SEM (cmpu); -extern SEMANTIC_CACHE_FN SEMC (cmpu); -extern SEMANTIC_FN SEM (cmpui); -extern SEMANTIC_CACHE_FN SEMC (cmpui); -extern SEMANTIC_FN SEM (div); -extern SEMANTIC_CACHE_FN SEMC (div); -extern SEMANTIC_FN SEM (divu); -extern SEMANTIC_CACHE_FN SEMC (divu); -extern SEMANTIC_FN SEM (rem); -extern SEMANTIC_CACHE_FN SEMC (rem); -extern SEMANTIC_FN SEM (remu); -extern SEMANTIC_CACHE_FN SEMC (remu); -extern SEMANTIC_FN SEM (divh); -extern SEMANTIC_CACHE_FN SEMC (divh); -extern SEMANTIC_FN SEM (jl); -extern SEMANTIC_CACHE_FN SEMC (jl); -extern SEMANTIC_FN SEM (jmp); -extern SEMANTIC_CACHE_FN SEMC (jmp); -extern SEMANTIC_FN SEM (ld); -extern SEMANTIC_CACHE_FN SEMC (ld); -extern SEMANTIC_FN SEM (ld_d); -extern SEMANTIC_CACHE_FN SEMC (ld_d); -extern SEMANTIC_FN SEM (ldb); -extern SEMANTIC_CACHE_FN SEMC (ldb); -extern SEMANTIC_FN SEM (ldb_d); -extern SEMANTIC_CACHE_FN SEMC (ldb_d); -extern SEMANTIC_FN SEM (ldh); -extern SEMANTIC_CACHE_FN SEMC (ldh); -extern SEMANTIC_FN SEM (ldh_d); -extern SEMANTIC_CACHE_FN SEMC (ldh_d); -extern SEMANTIC_FN SEM (ldub); -extern SEMANTIC_CACHE_FN SEMC (ldub); -extern SEMANTIC_FN SEM (ldub_d); -extern SEMANTIC_CACHE_FN SEMC (ldub_d); -extern SEMANTIC_FN SEM (lduh); -extern SEMANTIC_CACHE_FN SEMC (lduh); -extern SEMANTIC_FN SEM (lduh_d); -extern SEMANTIC_CACHE_FN SEMC (lduh_d); -extern SEMANTIC_FN SEM (ld_plus); -extern SEMANTIC_CACHE_FN SEMC (ld_plus); -extern SEMANTIC_FN SEM (ld24); -extern SEMANTIC_CACHE_FN SEMC (ld24); -extern SEMANTIC_FN SEM (ldi8); -extern SEMANTIC_CACHE_FN SEMC (ldi8); -extern SEMANTIC_FN SEM (ldi16); -extern SEMANTIC_CACHE_FN SEMC (ldi16); -extern SEMANTIC_FN SEM (lock); -extern SEMANTIC_CACHE_FN SEMC (lock); -extern SEMANTIC_FN SEM (machi); -extern SEMANTIC_CACHE_FN SEMC (machi); -extern SEMANTIC_FN SEM (maclo); -extern SEMANTIC_CACHE_FN SEMC (maclo); -extern SEMANTIC_FN SEM (macwhi); -extern SEMANTIC_CACHE_FN SEMC (macwhi); -extern SEMANTIC_FN SEM (macwlo); -extern SEMANTIC_CACHE_FN SEMC (macwlo); -extern SEMANTIC_FN SEM (mul); -extern SEMANTIC_CACHE_FN SEMC (mul); -extern SEMANTIC_FN SEM (mulhi); -extern SEMANTIC_CACHE_FN SEMC (mulhi); -extern SEMANTIC_FN SEM (mullo); -extern SEMANTIC_CACHE_FN SEMC (mullo); -extern SEMANTIC_FN SEM (mulwhi); -extern SEMANTIC_CACHE_FN SEMC (mulwhi); -extern SEMANTIC_FN SEM (mulwlo); -extern SEMANTIC_CACHE_FN SEMC (mulwlo); -extern SEMANTIC_FN SEM (mv); -extern SEMANTIC_CACHE_FN SEMC (mv); -extern SEMANTIC_FN SEM (mvfachi); -extern SEMANTIC_CACHE_FN SEMC (mvfachi); -extern SEMANTIC_FN SEM (mvfaclo); -extern SEMANTIC_CACHE_FN SEMC (mvfaclo); -extern SEMANTIC_FN SEM (mvfacmi); -extern SEMANTIC_CACHE_FN SEMC (mvfacmi); -extern SEMANTIC_FN SEM (mvfc); -extern SEMANTIC_CACHE_FN SEMC (mvfc); -extern SEMANTIC_FN SEM (mvtachi); -extern SEMANTIC_CACHE_FN SEMC (mvtachi); -extern SEMANTIC_FN SEM (mvtaclo); -extern SEMANTIC_CACHE_FN SEMC (mvtaclo); -extern SEMANTIC_FN SEM (mvtc); -extern SEMANTIC_CACHE_FN SEMC (mvtc); -extern SEMANTIC_FN SEM (neg); -extern SEMANTIC_CACHE_FN SEMC (neg); -extern SEMANTIC_FN SEM (nop); -extern SEMANTIC_CACHE_FN SEMC (nop); -extern SEMANTIC_FN SEM (not); -extern SEMANTIC_CACHE_FN SEMC (not); -extern SEMANTIC_FN SEM (rac); -extern SEMANTIC_CACHE_FN SEMC (rac); -extern SEMANTIC_FN SEM (rach); -extern SEMANTIC_CACHE_FN SEMC (rach); -extern SEMANTIC_FN SEM (rte); -extern SEMANTIC_CACHE_FN SEMC (rte); -extern SEMANTIC_FN SEM (seth); -extern SEMANTIC_CACHE_FN SEMC (seth); -extern SEMANTIC_FN SEM (sll); -extern SEMANTIC_CACHE_FN SEMC (sll); -extern SEMANTIC_FN SEM (sll3); -extern SEMANTIC_CACHE_FN SEMC (sll3); -extern SEMANTIC_FN SEM (slli); -extern SEMANTIC_CACHE_FN SEMC (slli); -extern SEMANTIC_FN SEM (sra); -extern SEMANTIC_CACHE_FN SEMC (sra); -extern SEMANTIC_FN SEM (sra3); -extern SEMANTIC_CACHE_FN SEMC (sra3); -extern SEMANTIC_FN SEM (srai); -extern SEMANTIC_CACHE_FN SEMC (srai); -extern SEMANTIC_FN SEM (srl); -extern SEMANTIC_CACHE_FN SEMC (srl); -extern SEMANTIC_FN SEM (srl3); -extern SEMANTIC_CACHE_FN SEMC (srl3); -extern SEMANTIC_FN SEM (srli); -extern SEMANTIC_CACHE_FN SEMC (srli); -extern SEMANTIC_FN SEM (st); -extern SEMANTIC_CACHE_FN SEMC (st); -extern SEMANTIC_FN SEM (st_d); -extern SEMANTIC_CACHE_FN SEMC (st_d); -extern SEMANTIC_FN SEM (stb); -extern SEMANTIC_CACHE_FN SEMC (stb); -extern SEMANTIC_FN SEM (stb_d); -extern SEMANTIC_CACHE_FN SEMC (stb_d); -extern SEMANTIC_FN SEM (sth); -extern SEMANTIC_CACHE_FN SEMC (sth); -extern SEMANTIC_FN SEM (sth_d); -extern SEMANTIC_CACHE_FN SEMC (sth_d); -extern SEMANTIC_FN SEM (st_plus); -extern SEMANTIC_CACHE_FN SEMC (st_plus); -extern SEMANTIC_FN SEM (st_minus); -extern SEMANTIC_CACHE_FN SEMC (st_minus); -extern SEMANTIC_FN SEM (sub); -extern SEMANTIC_CACHE_FN SEMC (sub); -extern SEMANTIC_FN SEM (subv); -extern SEMANTIC_CACHE_FN SEMC (subv); -extern SEMANTIC_FN SEM (subx); -extern SEMANTIC_CACHE_FN SEMC (subx); -extern SEMANTIC_FN SEM (trap); -extern SEMANTIC_CACHE_FN SEMC (trap); -extern SEMANTIC_FN SEM (unlock); -extern SEMANTIC_CACHE_FN SEMC (unlock); +/* Function unit handlers (user written). */ -#undef EX -#undef SEM -#undef SEMC +extern int m32rbf_model_m32r_d_u_store (SIM_CPU *, const IDESC *, int /*unit_num*/, int /*referenced*/, INT /*src1*/, INT /*src2*/); +extern int m32rbf_model_m32r_d_u_load (SIM_CPU *, const IDESC *, int /*unit_num*/, int /*referenced*/, INT /*sr*/, INT /*dr*/); +extern int m32rbf_model_m32r_d_u_cti (SIM_CPU *, const IDESC *, int /*unit_num*/, int /*referenced*/, INT /*sr*/); +extern int m32rbf_model_m32r_d_u_mac (SIM_CPU *, const IDESC *, int /*unit_num*/, int /*referenced*/, INT /*src1*/, INT /*src2*/); +extern int m32rbf_model_m32r_d_u_cmp (SIM_CPU *, const IDESC *, int /*unit_num*/, int /*referenced*/, INT /*src1*/, INT /*src2*/); +extern int m32rbf_model_m32r_d_u_exec (SIM_CPU *, const IDESC *, int /*unit_num*/, int /*referenced*/, INT /*sr*/, INT /*dr*/, INT /*dr*/); +extern int m32rbf_model_test_u_exec (SIM_CPU *, const IDESC *, int /*unit_num*/, int /*referenced*/); -#endif /* M32R_DECODE_H */ +/* Profiling before/after handlers (user written) */ + +extern void m32rbf_model_insn_before (SIM_CPU *, int /*first_p*/); +extern void m32rbf_model_insn_after (SIM_CPU *, int /*last_p*/, int /*cycles*/); + +#endif /* M32RBF_DECODE_H */