📄 model.c
字号:
// OBSOLETE /* Simulator model support for fr30bf.// OBSOLETE // OBSOLETE THIS FILE IS MACHINE GENERATED WITH CGEN.// OBSOLETE // OBSOLETE Copyright 1996, 1997, 1998, 1999, 2000, 2001 Free Software Foundation, Inc.// OBSOLETE // OBSOLETE This file is part of the GNU simulators.// OBSOLETE // OBSOLETE This program is free software; you can redistribute it and/or modify// OBSOLETE it under the terms of the GNU General Public License as published by// OBSOLETE the Free Software Foundation; either version 2, or (at your option)// OBSOLETE any later version.// OBSOLETE // OBSOLETE This program is distributed in the hope that it will be useful,// OBSOLETE but WITHOUT ANY WARRANTY; without even the implied warranty of// OBSOLETE MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the// OBSOLETE GNU General Public License for more details.// OBSOLETE // OBSOLETE You should have received a copy of the GNU General Public License along// OBSOLETE with this program; if not, write to the Free Software Foundation, Inc.,// OBSOLETE 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.// OBSOLETE // OBSOLETE */// OBSOLETE // OBSOLETE #define WANT_CPU fr30bf// OBSOLETE #define WANT_CPU_FR30BF// OBSOLETE // OBSOLETE #include "sim-main.h"// OBSOLETE // OBSOLETE /* The profiling data is recorded here, but is accessed via the profiling// OBSOLETE mechanism. After all, this is information for profiling. */// OBSOLETE // OBSOLETE #if WITH_PROFILE_MODEL_P// OBSOLETE // OBSOLETE /* Model handlers for each insn. */// OBSOLETE // OBSOLETE static int// OBSOLETE model_fr30_1_add (SIM_CPU *current_cpu, void *sem_arg)// OBSOLETE {// OBSOLETE #define FLD(f) abuf->fields.sfmt_add.f// OBSOLETE const ARGBUF * UNUSED abuf = SEM_ARGBUF ((SEM_ARG) sem_arg);// OBSOLETE const IDESC * UNUSED idesc = abuf->idesc;// OBSOLETE int cycles = 0;// OBSOLETE {// OBSOLETE int referenced = 0;// OBSOLETE int UNUSED insn_referenced = abuf->written;// OBSOLETE INT in_Ri = -1;// OBSOLETE INT in_Rj = -1;// OBSOLETE INT out_Ri = -1;// OBSOLETE in_Ri = FLD (in_Ri);// OBSOLETE in_Rj = FLD (in_Rj);// OBSOLETE out_Ri = FLD (out_Ri);// OBSOLETE referenced |= 1 << 0;// OBSOLETE referenced |= 1 << 1;// OBSOLETE referenced |= 1 << 2;// OBSOLETE cycles += fr30bf_model_fr30_1_u_exec (current_cpu, idesc, 0, referenced, in_Ri, in_Rj, out_Ri);// OBSOLETE }// OBSOLETE return cycles;// OBSOLETE #undef FLD// OBSOLETE }// OBSOLETE // OBSOLETE static int// OBSOLETE model_fr30_1_addi (SIM_CPU *current_cpu, void *sem_arg)// OBSOLETE {// OBSOLETE #define FLD(f) abuf->fields.sfmt_addi.f// OBSOLETE const ARGBUF * UNUSED abuf = SEM_ARGBUF ((SEM_ARG) sem_arg);// OBSOLETE const IDESC * UNUSED idesc = abuf->idesc;// OBSOLETE int cycles = 0;// OBSOLETE {// OBSOLETE int referenced = 0;// OBSOLETE int UNUSED insn_referenced = abuf->written;// OBSOLETE INT in_Ri = -1;// OBSOLETE INT in_Rj = -1;// OBSOLETE INT out_Ri = -1;// OBSOLETE in_Ri = FLD (in_Ri);// OBSOLETE out_Ri = FLD (out_Ri);// OBSOLETE referenced |= 1 << 0;// OBSOLETE referenced |= 1 << 2;// OBSOLETE cycles += fr30bf_model_fr30_1_u_exec (current_cpu, idesc, 0, referenced, in_Ri, in_Rj, out_Ri);// OBSOLETE }// OBSOLETE return cycles;// OBSOLETE #undef FLD// OBSOLETE }// OBSOLETE // OBSOLETE static int// OBSOLETE model_fr30_1_add2 (SIM_CPU *current_cpu, void *sem_arg)// OBSOLETE {// OBSOLETE #define FLD(f) abuf->fields.sfmt_add2.f// OBSOLETE const ARGBUF * UNUSED abuf = SEM_ARGBUF ((SEM_ARG) sem_arg);// OBSOLETE const IDESC * UNUSED idesc = abuf->idesc;// OBSOLETE int cycles = 0;// OBSOLETE {// OBSOLETE int referenced = 0;// OBSOLETE int UNUSED insn_referenced = abuf->written;// OBSOLETE INT in_Ri = -1;// OBSOLETE INT in_Rj = -1;// OBSOLETE INT out_Ri = -1;// OBSOLETE in_Ri = FLD (in_Ri);// OBSOLETE out_Ri = FLD (out_Ri);// OBSOLETE referenced |= 1 << 0;// OBSOLETE referenced |= 1 << 2;// OBSOLETE cycles += fr30bf_model_fr30_1_u_exec (current_cpu, idesc, 0, referenced, in_Ri, in_Rj, out_Ri);// OBSOLETE }// OBSOLETE return cycles;// OBSOLETE #undef FLD// OBSOLETE }// OBSOLETE // OBSOLETE static int// OBSOLETE model_fr30_1_addc (SIM_CPU *current_cpu, void *sem_arg)// OBSOLETE {// OBSOLETE #define FLD(f) abuf->fields.sfmt_add.f// OBSOLETE const ARGBUF * UNUSED abuf = SEM_ARGBUF ((SEM_ARG) sem_arg);// OBSOLETE const IDESC * UNUSED idesc = abuf->idesc;// OBSOLETE int cycles = 0;// OBSOLETE {// OBSOLETE int referenced = 0;// OBSOLETE int UNUSED insn_referenced = abuf->written;// OBSOLETE INT in_Ri = -1;// OBSOLETE INT in_Rj = -1;// OBSOLETE INT out_Ri = -1;// OBSOLETE in_Ri = FLD (in_Ri);// OBSOLETE in_Rj = FLD (in_Rj);// OBSOLETE out_Ri = FLD (out_Ri);// OBSOLETE referenced |= 1 << 0;// OBSOLETE referenced |= 1 << 1;// OBSOLETE referenced |= 1 << 2;// OBSOLETE cycles += fr30bf_model_fr30_1_u_exec (current_cpu, idesc, 0, referenced, in_Ri, in_Rj, out_Ri);// OBSOLETE }// OBSOLETE return cycles;// OBSOLETE #undef FLD// OBSOLETE }// OBSOLETE // OBSOLETE static int// OBSOLETE model_fr30_1_addn (SIM_CPU *current_cpu, void *sem_arg)// OBSOLETE {// OBSOLETE #define FLD(f) abuf->fields.sfmt_add.f// OBSOLETE const ARGBUF * UNUSED abuf = SEM_ARGBUF ((SEM_ARG) sem_arg);// OBSOLETE const IDESC * UNUSED idesc = abuf->idesc;// OBSOLETE int cycles = 0;// OBSOLETE {// OBSOLETE int referenced = 0;// OBSOLETE int UNUSED insn_referenced = abuf->written;// OBSOLETE INT in_Ri = -1;// OBSOLETE INT in_Rj = -1;// OBSOLETE INT out_Ri = -1;// OBSOLETE in_Ri = FLD (in_Ri);// OBSOLETE in_Rj = FLD (in_Rj);// OBSOLETE out_Ri = FLD (out_Ri);// OBSOLETE referenced |= 1 << 0;// OBSOLETE referenced |= 1 << 1;// OBSOLETE referenced |= 1 << 2;// OBSOLETE cycles += fr30bf_model_fr30_1_u_exec (current_cpu, idesc, 0, referenced, in_Ri, in_Rj, out_Ri);// OBSOLETE }// OBSOLETE return cycles;// OBSOLETE #undef FLD// OBSOLETE }// OBSOLETE // OBSOLETE static int// OBSOLETE model_fr30_1_addni (SIM_CPU *current_cpu, void *sem_arg)// OBSOLETE {// OBSOLETE #define FLD(f) abuf->fields.sfmt_addi.f// OBSOLETE const ARGBUF * UNUSED abuf = SEM_ARGBUF ((SEM_ARG) sem_arg);// OBSOLETE const IDESC * UNUSED idesc = abuf->idesc;// OBSOLETE int cycles = 0;// OBSOLETE {// OBSOLETE int referenced = 0;// OBSOLETE int UNUSED insn_referenced = abuf->written;// OBSOLETE INT in_Ri = -1;// OBSOLETE INT in_Rj = -1;// OBSOLETE INT out_Ri = -1;// OBSOLETE in_Ri = FLD (in_Ri);// OBSOLETE out_Ri = FLD (out_Ri);// OBSOLETE referenced |= 1 << 0;// OBSOLETE referenced |= 1 << 2;// OBSOLETE cycles += fr30bf_model_fr30_1_u_exec (current_cpu, idesc, 0, referenced, in_Ri, in_Rj, out_Ri);// OBSOLETE }// OBSOLETE return cycles;// OBSOLETE #undef FLD// OBSOLETE }// OBSOLETE // OBSOLETE static int// OBSOLETE model_fr30_1_addn2 (SIM_CPU *current_cpu, void *sem_arg)// OBSOLETE {// OBSOLETE #define FLD(f) abuf->fields.sfmt_add2.f// OBSOLETE const ARGBUF * UNUSED abuf = SEM_ARGBUF ((SEM_ARG) sem_arg);// OBSOLETE const IDESC * UNUSED idesc = abuf->idesc;// OBSOLETE int cycles = 0;// OBSOLETE {// OBSOLETE int referenced = 0;// OBSOLETE int UNUSED insn_referenced = abuf->written;// OBSOLETE INT in_Ri = -1;// OBSOLETE INT in_Rj = -1;// OBSOLETE INT out_Ri = -1;// OBSOLETE in_Ri = FLD (in_Ri);// OBSOLETE out_Ri = FLD (out_Ri);// OBSOLETE referenced |= 1 << 0;// OBSOLETE referenced |= 1 << 2;// OBSOLETE cycles += fr30bf_model_fr30_1_u_exec (current_cpu, idesc, 0, referenced, in_Ri, in_Rj, out_Ri);// OBSOLETE }// OBSOLETE return cycles;// OBSOLETE #undef FLD// OBSOLETE }// OBSOLETE // OBSOLETE static int// OBSOLETE model_fr30_1_sub (SIM_CPU *current_cpu, void *sem_arg)// OBSOLETE {// OBSOLETE #define FLD(f) abuf->fields.sfmt_add.f// OBSOLETE const ARGBUF * UNUSED abuf = SEM_ARGBUF ((SEM_ARG) sem_arg);// OBSOLETE const IDESC * UNUSED idesc = abuf->idesc;// OBSOLETE int cycles = 0;// OBSOLETE {// OBSOLETE int referenced = 0;// OBSOLETE int UNUSED insn_referenced = abuf->written;// OBSOLETE INT in_Ri = -1;// OBSOLETE INT in_Rj = -1;// OBSOLETE INT out_Ri = -1;// OBSOLETE in_Ri = FLD (in_Ri);// OBSOLETE in_Rj = FLD (in_Rj);// OBSOLETE out_Ri = FLD (out_Ri);// OBSOLETE referenced |= 1 << 0;// OBSOLETE referenced |= 1 << 1;// OBSOLETE referenced |= 1 << 2;// OBSOLETE cycles += fr30bf_model_fr30_1_u_exec (current_cpu, idesc, 0, referenced, in_Ri, in_Rj, out_Ri);// OBSOLETE }// OBSOLETE return cycles;// OBSOLETE #undef FLD// OBSOLETE }// OBSOLETE // OBSOLETE static int// OBSOLETE model_fr30_1_subc (SIM_CPU *current_cpu, void *sem_arg)// OBSOLETE {// OBSOLETE #define FLD(f) abuf->fields.sfmt_add.f// OBSOLETE const ARGBUF * UNUSED abuf = SEM_ARGBUF ((SEM_ARG) sem_arg);// OBSOLETE const IDESC * UNUSED idesc = abuf->idesc;// OBSOLETE int cycles = 0;// OBSOLETE {// OBSOLETE int referenced = 0;// OBSOLETE int UNUSED insn_referenced = abuf->written;// OBSOLETE INT in_Ri = -1;// OBSOLETE INT in_Rj = -1;// OBSOLETE INT out_Ri = -1;// OBSOLETE in_Ri = FLD (in_Ri);// OBSOLETE in_Rj = FLD (in_Rj);// OBSOLETE out_Ri = FLD (out_Ri);// OBSOLETE referenced |= 1 << 0;// OBSOLETE referenced |= 1 << 1;// OBSOLETE referenced |= 1 << 2;// OBSOLETE cycles += fr30bf_model_fr30_1_u_exec (current_cpu, idesc, 0, referenced, in_Ri, in_Rj, out_Ri);// OBSOLETE }// OBSOLETE return cycles;// OBSOLETE #undef FLD// OBSOLETE }// OBSOLETE // OBSOLETE static int// OBSOLETE model_fr30_1_subn (SIM_CPU *current_cpu, void *sem_arg)// OBSOLETE {// OBSOLETE #define FLD(f) abuf->fields.sfmt_add.f// OBSOLETE const ARGBUF * UNUSED abuf = SEM_ARGBUF ((SEM_ARG) sem_arg);// OBSOLETE const IDESC * UNUSED idesc = abuf->idesc;// OBSOLETE int cycles = 0;// OBSOLETE {// OBSOLETE int referenced = 0;// OBSOLETE int UNUSED insn_referenced = abuf->written;// OBSOLETE INT in_Ri = -1;// OBSOLETE INT in_Rj = -1;// OBSOLETE INT out_Ri = -1;// OBSOLETE in_Ri = FLD (in_Ri);// OBSOLETE in_Rj = FLD (in_Rj);// OBSOLETE out_Ri = FLD (out_Ri);// OBSOLETE referenced |= 1 << 0;// OBSOLETE referenced |= 1 << 1;// OBSOLETE referenced |= 1 << 2;// OBSOLETE cycles += fr30bf_model_fr30_1_u_exec (current_cpu, idesc, 0, referenced, in_Ri, in_Rj, out_Ri);// OBSOLETE }// OBSOLETE return cycles;// OBSOLETE #undef FLD// OBSOLETE }// OBSOLETE // OBSOLETE static int// OBSOLETE model_fr30_1_cmp (SIM_CPU *current_cpu, void *sem_arg)// OBSOLETE {// OBSOLETE #define FLD(f) abuf->fields.sfmt_str13.f// OBSOLETE const ARGBUF * UNUSED abuf = SEM_ARGBUF ((SEM_ARG) sem_arg);// OBSOLETE const IDESC * UNUSED idesc = abuf->idesc;// OBSOLETE int cycles = 0;// OBSOLETE {// OBSOLETE int referenced = 0;// OBSOLETE int UNUSED insn_referenced = abuf->written;// OBSOLETE INT in_Ri = -1;// OBSOLETE INT in_Rj = -1;// OBSOLETE INT out_Ri = -1;// OBSOLETE in_Ri = FLD (in_Ri);// OBSOLETE in_Rj = FLD (in_Rj);// OBSOLETE referenced |= 1 << 0;// OBSOLETE referenced |= 1 << 1;// OBSOLETE cycles += fr30bf_model_fr30_1_u_exec (current_cpu, idesc, 0, referenced, in_Ri, in_Rj, out_Ri);// OBSOLETE }// OBSOLETE return cycles;// OBSOLETE #undef FLD// OBSOLETE }// OBSOLETE // OBSOLETE static int// OBSOLETE model_fr30_1_cmpi (SIM_CPU *current_cpu, void *sem_arg)// OBSOLETE {// OBSOLETE #define FLD(f) abuf->fields.sfmt_addi.f// OBSOLETE const ARGBUF * UNUSED abuf = SEM_ARGBUF ((SEM_ARG) sem_arg);// OBSOLETE const IDESC * UNUSED idesc = abuf->idesc;// OBSOLETE int cycles = 0;// OBSOLETE {// OBSOLETE int referenced = 0;// OBSOLETE int UNUSED insn_referenced = abuf->written;// OBSOLETE INT in_Ri = -1;// OBSOLETE INT in_Rj = -1;// OBSOLETE INT out_Ri = -1;// OBSOLETE in_Ri = FLD (in_Ri);// OBSOLETE referenced |= 1 << 0;// OBSOLETE cycles += fr30bf_model_fr30_1_u_exec (current_cpu, idesc, 0, referenced, in_Ri, in_Rj, out_Ri);// OBSOLETE }// OBSOLETE return cycles;// OBSOLETE #undef FLD// OBSOLETE }// OBSOLETE // OBSOLETE static int// OBSOLETE model_fr30_1_cmp2 (SIM_CPU *current_cpu, void *sem_arg)// OBSOLETE {// OBSOLETE #define FLD(f) abuf->fields.sfmt_add2.f// OBSOLETE const ARGBUF * UNUSED abuf = SEM_ARGBUF ((SEM_ARG) sem_arg);// OBSOLETE const IDESC * UNUSED idesc = abuf->idesc;// OBSOLETE int cycles = 0;// OBSOLETE {// OBSOLETE int referenced = 0;// OBSOLETE int UNUSED insn_referenced = abuf->written;
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -