blob: 207bbeaf35da665a811aef1b83504b9e31811594 [file] [log] [blame]
/* Simulator model support for crisv10f.
THIS FILE IS MACHINE GENERATED WITH CGEN.
Copyright 1996-2021 Free Software Foundation, Inc.
This file is part of the GNU simulators.
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.
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, see <http://www.gnu.org/licenses/>.
*/
#define WANT_CPU crisv10f
#define WANT_CPU_CRISV10F
#include "sim-main.h"
/* The profiling data is recorded here, but is accessed via the profiling
mechanism. After all, this is information for profiling. */
#if WITH_PROFILE_MODEL_P
/* Model handlers for each insn. */
static int
model_crisv10_nop (SIM_CPU *current_cpu, void *sem_arg)
{
#define FLD(f) abuf->fields.sfmt_empty.f
const ARGBUF * UNUSED abuf = SEM_ARGBUF ((SEM_ARG) sem_arg);
const IDESC * UNUSED idesc = abuf->idesc;
int cycles = 0;
{
int referenced = 0;
int UNUSED insn_referenced = abuf->written;
cycles += crisv10f_model_crisv10_u_exec (current_cpu, idesc, 0, referenced);
}
return cycles;
#undef FLD
}
static int
model_crisv10_move_b_r (SIM_CPU *current_cpu, void *sem_arg)
{
#define FLD(f) abuf->fields.sfmt_add_b_r.f
const ARGBUF * UNUSED abuf = SEM_ARGBUF ((SEM_ARG) sem_arg);
const IDESC * UNUSED idesc = abuf->idesc;
int cycles = 0;
{
int referenced = 0;
int UNUSED insn_referenced = abuf->written;
cycles += crisv10f_model_crisv10_u_exec (current_cpu, idesc, 0, referenced);
}
return cycles;
#undef FLD
}
static int
model_crisv10_move_w_r (SIM_CPU *current_cpu, void *sem_arg)
{
#define FLD(f) abuf->fields.sfmt_add_b_r.f
const ARGBUF * UNUSED abuf = SEM_ARGBUF ((SEM_ARG) sem_arg);
const IDESC * UNUSED idesc = abuf->idesc;
int cycles = 0;
{
int referenced = 0;
int UNUSED insn_referenced = abuf->written;
cycles += crisv10f_model_crisv10_u_exec (current_cpu, idesc, 0, referenced);
}
return cycles;
#undef FLD
}
static int
model_crisv10_move_d_r (SIM_CPU *current_cpu, void *sem_arg)
{
#define FLD(f) abuf->fields.sfmt_add_b_r.f
const ARGBUF * UNUSED abuf = SEM_ARGBUF ((SEM_ARG) sem_arg);
const IDESC * UNUSED idesc = abuf->idesc;
int cycles = 0;
{
int referenced = 0;
int UNUSED insn_referenced = abuf->written;
cycles += crisv10f_model_crisv10_u_exec (current_cpu, idesc, 0, referenced);
}
return cycles;
#undef FLD
}
static int
model_crisv10_movepcr (SIM_CPU *current_cpu, void *sem_arg)
{
#define FLD(f) abuf->fields.sfmt_moveq.f
const ARGBUF * UNUSED abuf = SEM_ARGBUF ((SEM_ARG) sem_arg);
const IDESC * UNUSED idesc = abuf->idesc;
int cycles = 0;
{
int referenced = 0;
int UNUSED insn_referenced = abuf->written;
cycles += crisv10f_model_crisv10_u_exec (current_cpu, idesc, 0, referenced);
}
return cycles;
#undef FLD
}
static int
model_crisv10_moveq (SIM_CPU *current_cpu, void *sem_arg)
{
#define FLD(f) abuf->fields.sfmt_moveq.f
const ARGBUF * UNUSED abuf = SEM_ARGBUF ((SEM_ARG) sem_arg);
const IDESC * UNUSED idesc = abuf->idesc;
int cycles = 0;
{
int referenced = 0;
int UNUSED insn_referenced = abuf->written;
cycles += crisv10f_model_crisv10_u_exec (current_cpu, idesc, 0, referenced);
}
return cycles;
#undef FLD
}
static int
model_crisv10_movs_b_r (SIM_CPU *current_cpu, void *sem_arg)
{
#define FLD(f) abuf->fields.sfmt_muls_b.f
const ARGBUF * UNUSED abuf = SEM_ARGBUF ((SEM_ARG) sem_arg);
const IDESC * UNUSED idesc = abuf->idesc;
int cycles = 0;
{
int referenced = 0;
int UNUSED insn_referenced = abuf->written;
cycles += crisv10f_model_crisv10_u_exec (current_cpu, idesc, 0, referenced);
}
return cycles;
#undef FLD
}
static int
model_crisv10_movs_w_r (SIM_CPU *current_cpu, void *sem_arg)
{
#define FLD(f) abuf->fields.sfmt_muls_b.f
const ARGBUF * UNUSED abuf = SEM_ARGBUF ((SEM_ARG) sem_arg);
const IDESC * UNUSED idesc = abuf->idesc;
int cycles = 0;
{
int referenced = 0;
int UNUSED insn_referenced = abuf->written;
cycles += crisv10f_model_crisv10_u_exec (current_cpu, idesc, 0, referenced);
}
return cycles;
#undef FLD
}
static int
model_crisv10_movu_b_r (SIM_CPU *current_cpu, void *sem_arg)
{
#define FLD(f) abuf->fields.sfmt_muls_b.f
const ARGBUF * UNUSED abuf = SEM_ARGBUF ((SEM_ARG) sem_arg);
const IDESC * UNUSED idesc = abuf->idesc;
int cycles = 0;
{
int referenced = 0;
int UNUSED insn_referenced = abuf->written;
cycles += crisv10f_model_crisv10_u_exec (current_cpu, idesc, 0, referenced);
}
return cycles;
#undef FLD
}
static int
model_crisv10_movu_w_r (SIM_CPU *current_cpu, void *sem_arg)
{
#define FLD(f) abuf->fields.sfmt_muls_b.f
const ARGBUF * UNUSED abuf = SEM_ARGBUF ((SEM_ARG) sem_arg);
const IDESC * UNUSED idesc = abuf->idesc;
int cycles = 0;
{
int referenced = 0;
int UNUSED insn_referenced = abuf->written;
cycles += crisv10f_model_crisv10_u_exec (current_cpu, idesc, 0, referenced);
}
return cycles;
#undef FLD
}
static int
model_crisv10_movecbr (SIM_CPU *current_cpu, void *sem_arg)
{
#define FLD(f) abuf->fields.sfmt_addcbr.f
const ARGBUF * UNUSED abuf = SEM_ARGBUF ((SEM_ARG) sem_arg);
const IDESC * UNUSED idesc = abuf->idesc;
int cycles = 0;
{
int referenced = 0;
int UNUSED insn_referenced = abuf->written;
cycles += crisv10f_model_crisv10_u_const16 (current_cpu, idesc, 0, referenced);
}
{
int referenced = 0;
int UNUSED insn_referenced = abuf->written;
cycles += crisv10f_model_crisv10_u_exec (current_cpu, idesc, 1, referenced);
}
return cycles;
#undef FLD
}
static int
model_crisv10_movecwr (SIM_CPU *current_cpu, void *sem_arg)
{
#define FLD(f) abuf->fields.sfmt_addcwr.f
const ARGBUF * UNUSED abuf = SEM_ARGBUF ((SEM_ARG) sem_arg);
const IDESC * UNUSED idesc = abuf->idesc;
int cycles = 0;
{
int referenced = 0;
int UNUSED insn_referenced = abuf->written;
cycles += crisv10f_model_crisv10_u_const16 (current_cpu, idesc, 0, referenced);
}
{
int referenced = 0;
int UNUSED insn_referenced = abuf->written;
cycles += crisv10f_model_crisv10_u_exec (current_cpu, idesc, 1, referenced);
}
return cycles;
#undef FLD
}
static int
model_crisv10_movecdr (SIM_CPU *current_cpu, void *sem_arg)
{
#define FLD(f) abuf->fields.sfmt_bound_cd.f
const ARGBUF * UNUSED abuf = SEM_ARGBUF ((SEM_ARG) sem_arg);
const IDESC * UNUSED idesc = abuf->idesc;
int cycles = 0;
{
int referenced = 0;
int UNUSED insn_referenced = abuf->written;
cycles += crisv10f_model_crisv10_u_const32 (current_cpu, idesc, 0, referenced);
}
{
int referenced = 0;
int UNUSED insn_referenced = abuf->written;
cycles += crisv10f_model_crisv10_u_exec (current_cpu, idesc, 1, referenced);
}
return cycles;
#undef FLD
}
static int
model_crisv10_movscbr (SIM_CPU *current_cpu, void *sem_arg)
{
#define FLD(f) abuf->fields.sfmt_bound_cb.f
const ARGBUF * UNUSED abuf = SEM_ARGBUF ((SEM_ARG) sem_arg);
const IDESC * UNUSED idesc = abuf->idesc;
int cycles = 0;
{
int referenced = 0;
int UNUSED insn_referenced = abuf->written;
cycles += crisv10f_model_crisv10_u_const16 (current_cpu, idesc, 0, referenced);
}
{
int referenced = 0;
int UNUSED insn_referenced = abuf->written;
cycles += crisv10f_model_crisv10_u_exec (current_cpu, idesc, 1, referenced);
}
return cycles;
#undef FLD
}
static int
model_crisv10_movscwr (SIM_CPU *current_cpu, void *sem_arg)
{
#define FLD(f) abuf->fields.sfmt_bound_cw.f
const ARGBUF * UNUSED abuf = SEM_ARGBUF ((SEM_ARG) sem_arg);
const IDESC * UNUSED idesc = abuf->idesc;
int cycles = 0;
{
int referenced = 0;
int UNUSED insn_referenced = abuf->written;
cycles += crisv10f_model_crisv10_u_const16 (current_cpu, idesc, 0, referenced);
}
{
int referenced = 0;
int UNUSED insn_referenced = abuf->written;
cycles += crisv10f_model_crisv10_u_exec (current_cpu, idesc, 1, referenced);
}
return cycles;
#undef FLD
}
static int
model_crisv10_movucbr (SIM_CPU *current_cpu, void *sem_arg)
{
#define FLD(f) abuf->fields.sfmt_bound_cb.f
const ARGBUF * UNUSED abuf = SEM_ARGBUF ((SEM_ARG) sem_arg);
const IDESC * UNUSED idesc = abuf->idesc;
int cycles = 0;
{
int referenced = 0;
int UNUSED insn_referenced = abuf->written;
cycles += crisv10f_model_crisv10_u_const16 (current_cpu, idesc, 0, referenced);
}
{
int referenced = 0;
int UNUSED insn_referenced = abuf->written;
cycles += crisv10f_model_crisv10_u_exec (current_cpu, idesc, 1, referenced);
}
return cycles;
#undef FLD
}
static int
model_crisv10_movucwr (SIM_CPU *current_cpu, void *sem_arg)
{
#define FLD(f) abuf->fields.sfmt_bound_cw.f
const ARGBUF * UNUSED abuf = SEM_ARGBUF ((SEM_ARG) sem_arg);
const IDESC * UNUSED idesc = abuf->idesc;
int cycles = 0;
{
int referenced = 0;
int UNUSED insn_referenced = abuf->written;
cycles += crisv10f_model_crisv10_u_const16 (current_cpu, idesc, 0, referenced);
}
{
int referenced = 0;
int UNUSED insn_referenced = abuf->written;
cycles += crisv10f_model_crisv10_u_exec (current_cpu, idesc, 1, referenced);
}
return cycles;
#undef FLD
}
static int
model_crisv10_addq (SIM_CPU *current_cpu, void *sem_arg)
{
#define FLD(f) abuf->fields.sfmt_addq.f
const ARGBUF * UNUSED abuf = SEM_ARGBUF ((SEM_ARG) sem_arg);
const IDESC * UNUSED idesc = abuf->idesc;
int cycles = 0;
{
int referenced = 0;
int UNUSED insn_referenced = abuf->written;
cycles += crisv10f_model_crisv10_u_exec (current_cpu, idesc, 0, referenced);
}
return cycles;
#undef FLD
}
static int
model_crisv10_subq (SIM_CPU *current_cpu, void *sem_arg)
{
#define FLD(f) abuf->fields.sfmt_addq.f
const ARGBUF * UNUSED abuf = SEM_ARGBUF ((SEM_ARG) sem_arg);
const IDESC * UNUSED idesc = abuf->idesc;
int cycles = 0;
{
int referenced = 0;
int UNUSED insn_referenced = abuf->written;
cycles += crisv10f_model_crisv10_u_exec (current_cpu, idesc, 0, referenced);
}
return cycles;
#undef FLD
}
static int
model_crisv10_cmp_r_b_r (SIM_CPU *current_cpu, void *sem_arg)
{
#define FLD(f) abuf->fields.sfmt_add_b_r.f
const ARGBUF * UNUSED abuf = SEM_ARGBUF ((SEM_ARG) sem_arg);
const IDESC * UNUSED idesc = abuf->idesc;
int cycles = 0;
{
int referenced = 0;
int UNUSED insn_referenced = abuf->written;
cycles += crisv10f_model_crisv10_u_exec (current_cpu, idesc, 0, referenced);
}
return cycles;
#undef FLD
}
static int
model_crisv10_cmp_r_w_r (SIM_CPU *current_cpu, void *sem_arg)
{
#define FLD(f) abuf->fields.sfmt_add_b_r.f
const ARGBUF * UNUSED abuf = SEM_ARGBUF ((SEM_ARG) sem_arg);
const IDESC * UNUSED idesc = abuf->idesc;
int cycles = 0;
{
int referenced = 0;
int UNUSED insn_referenced = abuf->written;
cycles += crisv10f_model_crisv10_u_exec (current_cpu, idesc, 0, referenced);
}
return cycles;
#undef FLD
}
static int
model_crisv10_cmp_r_d_r (SIM_CPU *current_cpu, void *sem_arg)
{
#define FLD(f) abuf->fields.sfmt_add_b_r.f
const ARGBUF * UNUSED abuf = SEM_ARGBUF ((SEM_ARG) sem_arg);
const IDESC * UNUSED idesc = abuf->idesc;
int cycles = 0;
{
int referenced = 0;
int UNUSED insn_referenced = abuf->written;
cycles += crisv10f_model_crisv10_u_exec (current_cpu, idesc, 0, referenced);
}
return cycles;
#undef FLD
}
static int
model_crisv10_cmp_m_b_m (SIM_CPU *current_cpu, void *sem_arg)
{
#define FLD(f) abuf->fields.sfmt_bound_m_b_m.f
const ARGBUF * UNUSED abuf = SEM_ARGBUF ((SEM_ARG) sem_arg);
const IDESC * UNUSED idesc = abuf->idesc;
int cycles = 0;
{
int referenced = 0;
int UNUSED insn_referenced = abuf->written;
cycles += crisv10f_model_crisv10_u_mem (current_cpu, idesc, 0, referenced);
}
{
int referenced = 0;
int UNUSED insn_referenced = abuf->written;
cycles += crisv10f_model_crisv10_u_exec (current_cpu, idesc, 1, referenced);
}
return cycles;
#undef FLD
}
static int
model_crisv10_cmp_m_w_m (SIM_CPU *current_cpu, void *sem_arg)
{
#define FLD(f) abuf->fields.sfmt_bound_m_b_m.f
const ARGBUF * UNUSED abuf = SEM_ARGBUF ((SEM_ARG) sem_arg);
const IDESC * UNUSED idesc = abuf->idesc;
int cycles = 0;
{
int referenced = 0;
int UNUSED insn_referenced = abuf->written;
cycles += crisv10f_model_crisv10_u_mem (current_cpu, idesc, 0, referenced);
}
{
int referenced = 0;
int UNUSED insn_referenced = abuf->written;
cycles += crisv10f_model_crisv10_u_exec (current_cpu, idesc, 1, referenced);
}
return cycles;
#undef FLD
}
static int
model_crisv10_cmp_m_d_m (SIM_CPU *current_cpu, void *sem_arg)
{
#define FLD(f) abuf->fields.sfmt_bound_m_b_m.f
const ARGBUF * UNUSED abuf = SEM_ARGBUF ((SEM_ARG) sem_arg);
const IDESC * UNUSED idesc = abuf->idesc;
int cycles = 0;
{
int referenced = 0;
int UNUSED insn_referenced = abuf->written;
cycles += crisv10f_model_crisv10_u_mem (current_cpu, idesc, 0, referenced);
}
{
int referenced = 0;
int UNUSED insn_referenced = abuf->written;
cycles += crisv10f_model_crisv10_u_exec (current_cpu, idesc, 1, referenced);
}
return cycles;
#undef FLD
}
static int
model_crisv10_cmpcbr (SIM_CPU *current_cpu, void *sem_arg)
{
#define FLD(f) abuf->fields.sfmt_bound_cb.f
const ARGBUF * UNUSED abuf = SEM_ARGBUF ((SEM_ARG) sem_arg);
const IDESC * UNUSED idesc = abuf->idesc;
int cycles = 0;
{
int referenced = 0;
int UNUSED insn_referenced = abuf->written;
cycles += crisv10f_model_crisv10_u_const16 (current_cpu, idesc, 0, referenced);
}
{
int referenced = 0;
int UNUSED insn_referenced = abuf->written;
cycles += crisv10f_model_crisv10_u_exec (current_cpu, idesc, 1, referenced);
}
return cycles;
#undef FLD
}
static int
model_crisv10_cmpcwr (SIM_CPU *current_cpu, void *sem_arg)
{
#define FLD(f) abuf->fields.sfmt_bound_cw.f
const ARGBUF * UNUSED abuf = SEM_ARGBUF ((SEM_ARG) sem_arg);
const IDESC * UNUSED idesc = abuf->idesc;
int cycles = 0;
{
int referenced = 0;
int UNUSED insn_referenced = abuf->written;
cycles += crisv10f_model_crisv10_u_const16 (current_cpu, idesc, 0, referenced);
}
{
int referenced = 0;
int UNUSED insn_referenced = abuf->written;
cycles += crisv10f_model_crisv10_u_exec (current_cpu, idesc, 1, referenced);
}
return cycles;
#undef FLD
}
static int
model_crisv10_cmpcdr (SIM_CPU *current_cpu, void *sem_arg)
{
#define FLD(f) abuf->fields.sfmt_bound_cd.f
const ARGBUF * UNUSED abuf = SEM_ARGBUF ((SEM_ARG) sem_arg);
const IDESC * UNUSED idesc = abuf->idesc;
int cycles = 0;
{
int referenced = 0;
int UNUSED insn_referenced = abuf->written;
cycles += crisv10f_model_crisv10_u_const32 (current_cpu, idesc, 0, referenced);
}
{
int referenced = 0;
int UNUSED insn_referenced = abuf->written;
cycles += crisv10f_model_crisv10_u_exec (current_cpu, idesc, 1, referenced);
}
return cycles;
#undef FLD
}
static int
model_crisv10_cmpq (SIM_CPU *current_cpu, void *sem_arg)
{
#define FLD(f) abuf->fields.sfmt_andq.f
const ARGBUF * UNUSED abuf = SEM_ARGBUF ((SEM_ARG) sem_arg);
const IDESC * UNUSED idesc = abuf->idesc;
int cycles = 0;
{
int referenced = 0;
int UNUSED insn_referenced = abuf->written;
cycles += crisv10f_model_crisv10_u_exec (current_cpu, idesc, 0, referenced);
}
return cycles;
#undef FLD
}
static int
model_crisv10_cmps_m_b_m (SIM_CPU *current_cpu, void *sem_arg)
{
#define FLD(f) abuf->fields.sfmt_bound_m_b_m.f
const ARGBUF * UNUSED abuf = SEM_ARGBUF ((SEM_ARG) sem_arg);
const IDESC * UNUSED idesc = abuf->idesc;
int cycles = 0;
{
int referenced = 0;
int UNUSED insn_referenced = abuf->written;
cycles += crisv10f_model_crisv10_u_mem (current_cpu, idesc, 0, referenced);
}
{
int referenced = 0;
int UNUSED insn_referenced = abuf->written;
cycles += crisv10f_model_crisv10_u_exec (current_cpu, idesc, 1, referenced);
}
return cycles;
#undef FLD
}
static int
model_crisv10_cmps_m_w_m (SIM_CPU *current_cpu, void *sem_arg)
{
#define FLD(f) abuf->fields.sfmt_bound_m_b_m.f
const ARGBUF * UNUSED abuf = SEM_ARGBUF ((SEM_ARG) sem_arg);
const IDESC * UNUSED idesc = abuf->idesc;
int cycles = 0;
{
int referenced = 0;
int UNUSED insn_referenced = abuf->written;
cycles += crisv10f_model_crisv10_u_mem (current_cpu, idesc, 0, referenced);
}
{
int referenced = 0;
int UNUSED insn_referenced = abuf->written;
cycles += crisv10f_model_crisv10_u_exec (current_cpu, idesc, 1, referenced);
}
return cycles;
#undef FLD
}
static int
model_crisv10_cmpscbr (SIM_CPU *current_cpu, void *sem_arg)
{
#define FLD(f) abuf->fields.sfmt_bound_cb.f
const ARGBUF * UNUSED abuf = SEM_ARGBUF ((SEM_ARG) sem_arg);
const IDESC * UNUSED idesc = abuf->idesc;
int cycles = 0;
{
int referenced = 0;
int UNUSED insn_referenced = abuf->written;
cycles += crisv10f_model_crisv10_u_const16 (current_cpu, idesc, 0, referenced);
}
{
int referenced = 0;
int UNUSED insn_referenced = abuf->written;
cycles += crisv10f_model_crisv10_u_exec (current_cpu, idesc, 1, referenced);
}
return cycles;
#undef FLD
}
static int
model_crisv10_cmpscwr (SIM_CPU *current_cpu, void *sem_arg)
{
#define FLD(f) abuf->fields.sfmt_bound_cw.f
const ARGBUF * UNUSED abuf = SEM_ARGBUF ((SEM_ARG) sem_arg);
const IDESC * UNUSED idesc = abuf->idesc;
int cycles = 0;
{
int referenced = 0;
int UNUSED insn_referenced = abuf->written;
cycles += crisv10f_model_crisv10_u_const16 (current_cpu, idesc, 0, referenced);
}
{
int referenced = 0;
int UNUSED insn_referenced = abuf->written;
cycles += crisv10f_model_crisv10_u_exec (current_cpu, idesc, 1, referenced);
}
return cycles;
#undef FLD
}
static int
model_crisv10_cmpu_m_b_m (SIM_CPU *current_cpu, void *sem_arg)
{
#define FLD(f) abuf->fields.sfmt_bound_m_b_m.f
const ARGBUF * UNUSED abuf = SEM_ARGBUF ((SEM_ARG) sem_arg);
const IDESC * UNUSED idesc = abuf->idesc;
int cycles = 0;
{
int referenced = 0;
int UNUSED insn_referenced = abuf->written;
cycles += crisv10f_model_crisv10_u_mem (current_cpu, idesc, 0, referenced);
}
{
int referenced = 0;
int UNUSED insn_referenced = abuf->written;
cycles += crisv10f_model_crisv10_u_exec (current_cpu, idesc, 1, referenced);
}
return cycles;
#undef FLD
}
static int
model_crisv10_cmpu_m_w_m (SIM_CPU *current_cpu, void *sem_arg)
{
#define FLD(f) abuf->fields.sfmt_bound_m_b_m.f
const ARGBUF * UNUSED abuf = SEM_ARGBUF ((SEM_ARG) sem_arg);
const IDESC * UNUSED idesc = abuf->idesc;
int cycles = 0;
{
int referenced = 0;
int UNUSED insn_referenced = abuf->written;
cycles += crisv10f_model_crisv10_u_mem (current_cpu, idesc, 0, referenced);
}
{
int referenced = 0;
int UNUSED insn_referenced = abuf->written;
cycles += crisv10f_model_crisv10_u_exec (current_cpu, idesc, 1, referenced);
}
return cycles;
#undef FLD
}
static int
model_crisv10_cmpucbr (SIM_CPU *current_cpu, void *sem_arg)
{
#define FLD(f) abuf->fields.sfmt_bound_cb.f
const ARGBUF * UNUSED abuf = SEM_ARGBUF ((SEM_ARG) sem_arg);
const IDESC * UNUSED idesc = abuf->idesc;
int cycles = 0;
{
int referenced = 0;
int UNUSED insn_referenced = abuf->written;
cycles += crisv10f_model_crisv10_u_const16 (current_cpu, idesc, 0, referenced);
}
{
int referenced = 0;
int UNUSED insn_referenced = abuf->written;
cycles += crisv10f_model_crisv10_u_exec (current_cpu, idesc, 1, referenced);
}
return cycles;
#undef FLD
}
static int
model_crisv10_cmpucwr (SIM_CPU *current_cpu, void *sem_arg)
{
#define FLD(f) abuf->fields.sfmt_bound_cw.f
const ARGBUF * UNUSED abuf = SEM_ARGBUF ((SEM_ARG) sem_arg);
const IDESC * UNUSED idesc = abuf->idesc;
int cycles = 0;
{
int referenced = 0;
int UNUSED insn_referenced = abuf->written;
cycles += crisv10f_model_crisv10_u_const16 (current_cpu, idesc, 0, referenced);
}
{
int referenced = 0;
int UNUSED insn_referenced = abuf->written;
cycles += crisv10f_model_crisv10_u_exec (current_cpu, idesc, 1, referenced);
}
return cycles;
#undef FLD
}
static int
model_crisv10_move_m_b_m (SIM_CPU *current_cpu, void *sem_arg)
{
#define FLD(f) abuf->fields.sfmt_add_m_b_m.f
const ARGBUF * UNUSED abuf = SEM_ARGBUF ((SEM_ARG) sem_arg);
const IDESC * UNUSED idesc = abuf->idesc;
int cycles = 0;
{
int referenced = 0;
int UNUSED insn_referenced = abuf->written;
cycles += crisv10f_model_crisv10_u_mem (current_cpu, idesc, 0, referenced);
}
{
int referenced = 0;
int UNUSED insn_referenced = abuf->written;
cycles += crisv10f_model_crisv10_u_exec (current_cpu, idesc, 1, referenced);
}
return cycles;
#undef FLD
}
static int
model_crisv10_move_m_w_m (SIM_CPU *current_cpu, void *sem_arg)
{
#define FLD(f) abuf->fields.sfmt_add_m_b_m.f
const ARGBUF * UNUSED abuf = SEM_ARGBUF ((SEM_ARG) sem_arg);
const IDESC * UNUSED idesc = abuf->idesc;
int cycles = 0;
{
int referenced = 0;
int UNUSED insn_referenced = abuf->written;
cycles += crisv10f_model_crisv10_u_mem (current_cpu, idesc, 0, referenced);
}
{
int referenced = 0;
int UNUSED insn_referenced = abuf->written;
cycles += crisv10f_model_crisv10_u_exec (current_cpu, idesc, 1, referenced);
}
return cycles;
#undef FLD
}
static int
model_crisv10_move_m_d_m (SIM_CPU *current_cpu, void *sem_arg)
{
#define FLD(f) abuf->fields.sfmt_add_m_b_m.f
const ARGBUF * UNUSED abuf = SEM_ARGBUF ((SEM_ARG) sem_arg);
const IDESC * UNUSED idesc = abuf->idesc;
int cycles = 0;
{
int referenced = 0;
int UNUSED insn_referenced = abuf->written;
cycles += crisv10f_model_crisv10_u_mem (current_cpu, idesc, 0, referenced);
}
{
int referenced = 0;
int UNUSED insn_referenced = abuf->written;
cycles += crisv10f_model_crisv10_u_exec (current_cpu, idesc, 1, referenced);
}
return cycles;
#undef FLD
}
static int
model_crisv10_movs_m_b_m (SIM_CPU *current_cpu, void *sem_arg)
{
#define FLD(f) abuf->fields.sfmt_bound_m_b_m.f
const ARGBUF * UNUSED abuf = SEM_ARGBUF ((SEM_ARG) sem_arg);
const IDESC * UNUSED idesc = abuf->idesc;
int cycles = 0;
{
int referenced = 0;
int UNUSED insn_referenced = abuf->written;
cycles += crisv10f_model_crisv10_u_mem (current_cpu, idesc, 0, referenced);
}
{
int referenced = 0;
int UNUSED insn_referenced = abuf->written;
cycles += crisv10f_model_crisv10_u_exec (current_cpu, idesc, 1, referenced);
}
return cycles;
#undef FLD
}
static int
model_crisv10_movs_m_w_m (SIM_CPU *current_cpu, void *sem_arg)
{
#define FLD(f) abuf->fields.sfmt_bound_m_b_m.f
const ARGBUF * UNUSED abuf = SEM_ARGBUF ((SEM_ARG) sem_arg);
const IDESC * UNUSED idesc = abuf->idesc;
int cycles = 0;
{
int referenced = 0;
int UNUSED insn_referenced = abuf->written;
cycles += crisv10f_model_crisv10_u_mem (current_cpu, idesc, 0, referenced);
}
{
int referenced = 0;
int UNUSED insn_referenced = abuf->written;
cycles += crisv10f_model_crisv10_u_exec (current_cpu, idesc, 1, referenced);
}
return cycles;
#undef FLD
}
static int
model_crisv10_movu_m_b_m (SIM_CPU *current_cpu, void *sem_arg)
{
#define FLD(f) abuf->fields.sfmt_bound_m_b_m.f
const ARGBUF * UNUSED abuf = SEM_ARGBUF ((SEM_ARG) sem_arg);
const IDESC * UNUSED idesc = abuf->idesc;
int cycles = 0;
{
int referenced = 0;
int UNUSED insn_referenced = abuf->written;
cycles += crisv10f_model_crisv10_u_mem (current_cpu, idesc, 0, referenced);
}
{
int referenced = 0;
int UNUSED insn_referenced = abuf->written;
cycles += crisv10f_model_crisv10_u_exec (current_cpu, idesc, 1, referenced);
}
return cycles;
#undef FLD
}
static int
model_crisv10_movu_m_w_m (SIM_CPU *current_cpu, void *sem_arg)
{
#define FLD(f) abuf->fields.sfmt_bound_m_b_m.f
const ARGBUF * UNUSED abuf = SEM_ARGBUF ((SEM_ARG) sem_arg);
const IDESC * UNUSED idesc = abuf->idesc;
int cycles = 0;
{
int referenced = 0;
int UNUSED insn_referenced = abuf->written;
cycles += crisv10f_model_crisv10_u_mem (current_cpu, idesc, 0, referenced);
}
{
int referenced = 0;
int UNUSED insn_referenced = abuf->written;
cycles += crisv10f_model_crisv10_u_exec (current_cpu, idesc, 1, referenced);
}
return cycles;
#undef FLD
}
static int
model_crisv10_move_r_sprv10 (SIM_CPU *current_cpu, void *sem_arg)
{
#define FLD(f) abuf->fields.sfmt_move_m_sprv10.f
const ARGBUF * UNUSED abuf = SEM_ARGBUF ((SEM_ARG) sem_arg);
const IDESC * UNUSED idesc = abuf->idesc;
int cycles = 0;
{
int referenced = 0;
int UNUSED insn_referenced = abuf->written;
cycles += crisv10f_model_crisv10_u_exec (current_cpu, idesc, 0, referenced);
}
return cycles;
#undef FLD
}
static int
model_crisv10_move_spr_rv10 (SIM_CPU *current_cpu, void *sem_arg)
{
#define FLD(f) abuf->fields.sfmt_move_spr_rv10.f
const ARGBUF * UNUSED abuf = SEM_ARGBUF ((SEM_ARG) sem_arg);
const IDESC * UNUSED idesc = abuf->idesc;
int cycles = 0;
{
int referenced = 0;
int UNUSED insn_referenced = abuf->written;
cycles += crisv10f_model_crisv10_u_exec (current_cpu, idesc, 0, referenced);
}
return cycles;
#undef FLD
}
static int
model_crisv10_ret_type (SIM_CPU *current_cpu, void *sem_arg)
{
#define FLD(f) abuf->fields.sfmt_move_spr_rv10.f
const ARGBUF * UNUSED abuf = SEM_ARGBUF ((SEM_ARG) sem_arg);
const IDESC * UNUSED idesc = abuf->idesc;
int cycles = 0;
{
int referenced = 0;
int UNUSED insn_referenced = abuf->written;
cycles += crisv10f_model_crisv10_u_exec (current_cpu, idesc, 0, referenced);
}
return cycles;
#undef FLD
}
static int
model_crisv10_move_m_sprv10 (SIM_CPU *current_cpu, void *sem_arg)
{
#define FLD(f) abuf->fields.sfmt_move_m_sprv10.f
const ARGBUF * UNUSED abuf = SEM_ARGBUF ((SEM_ARG) sem_arg);
const IDESC * UNUSED idesc = abuf->idesc;
int cycles = 0;
{
int referenced = 0;
int UNUSED insn_referenced = abuf->written;
cycles += crisv10f_model_crisv10_u_mem (current_cpu, idesc, 0, referenced);
}
{
int referenced = 0;
int UNUSED insn_referenced = abuf->written;
cycles += crisv10f_model_crisv10_u_exec (current_cpu, idesc, 1, referenced);
}
return cycles;
#undef FLD
}
static int
model_crisv10_move_c_sprv10_p5 (SIM_CPU *current_cpu, void *sem_arg)
{
#define FLD(f) abuf->fields.sfmt_move_c_sprv10_p5.f
const ARGBUF * UNUSED abuf = SEM_ARGBUF ((SEM_ARG) sem_arg);
const IDESC * UNUSED idesc = abuf->idesc;
int cycles = 0;
{
int referenced = 0;
int UNUSED insn_referenced = abuf->written;
cycles += crisv10f_model_crisv10_u_const16 (current_cpu, idesc, 0, referenced);
}
{
int referenced = 0;
int UNUSED insn_referenced = abuf->written;
cycles += crisv10f_model_crisv10_u_exec (current_cpu, idesc, 1, referenced);
}
return cycles;
#undef FLD
}
static int
model_crisv10_move_c_sprv10_p9 (SIM_CPU *current_cpu, void *sem_arg)
{
#define FLD(f) abuf->fields.sfmt_move_c_sprv10_p9.f
const ARGBUF * UNUSED abuf = SEM_ARGBUF ((SEM_ARG) sem_arg);
const IDESC * UNUSED idesc = abuf->idesc;
int cycles = 0;
{
int referenced = 0;
int UNUSED insn_referenced = abuf->written;
cycles += crisv10f_model_crisv10_u_const32 (current_cpu, idesc, 0, referenced);
}
{
int referenced = 0;
int UNUSED insn_referenced = abuf->written;
cycles += crisv10f_model_crisv10_u_exec (current_cpu, idesc, 1, referenced);
}
return cycles;
#undef FLD
}
static int
model_crisv10_move_c_sprv10_p10 (SIM_CPU *current_cpu, void *sem_arg)
{
#define FLD(f) abuf->fields.sfmt_move_c_sprv10_p9.f
const ARGBUF * UNUSED abuf = SEM_ARGBUF ((SEM_ARG) sem_arg);
const IDESC * UNUSED idesc = abuf->idesc;
int cycles = 0;
{
int referenced = 0;
int UNUSED insn_referenced = abuf->written;
cycles += crisv10f_model_crisv10_u_const32 (current_cpu, idesc, 0, referenced);
}
{
int referenced = 0;
int UNUSED insn_referenced = abuf->written;
cycles += crisv10f_model_crisv10_u_exec (current_cpu, idesc, 1, referenced);
}
return cycles;
#undef FLD
}
static int
model_crisv10_move_c_sprv10_p11 (SIM_CPU *current_cpu, void *sem_arg)
{
#define FLD(f) abuf->fields.sfmt_move_c_sprv10_p9.f
const ARGBUF * UNUSED abuf = SEM_ARGBUF ((SEM_ARG) sem_arg);
const IDESC * UNUSED idesc = abuf->idesc;
int cycles = 0;
{
int referenced = 0;
int UNUSED insn_referenced = abuf->written;
cycles += crisv10f_model_crisv10_u_const32 (current_cpu, idesc, 0, referenced);
}
{
int referenced = 0;
int UNUSED insn_referenced = abuf->written;
cycles += crisv10f_model_crisv10_u_exec (current_cpu, idesc, 1, referenced);
}
return cycles;
#undef FLD
}
static int
model_crisv10_move_c_sprv10_p12 (SIM_CPU *current_cpu, void *sem_arg)
{
#define FLD(f) abuf->fields.sfmt_move_c_sprv10_p9.f
const ARGBUF * UNUSED abuf = SEM_ARGBUF ((SEM_ARG) sem_arg);
const IDESC * UNUSED idesc = abuf->idesc;
int cycles = 0;
{
int referenced = 0;
int UNUSED insn_referenced = abuf->written;
cycles += crisv10f_model_crisv10_u_const32 (current_cpu, idesc, 0, referenced);
}
{
int referenced = 0;
int UNUSED insn_referenced = abuf->written;
cycles += crisv10f_model_crisv10_u_exec (current_cpu, idesc, 1, referenced);
}
return cycles;
#undef FLD
}
static int
model_crisv10_move_c_sprv10_p13 (SIM_CPU *current_cpu, void *sem_arg)
{
#define FLD(f) abuf->fields.sfmt_move_c_sprv10_p9.f
const ARGBUF * UNUSED abuf = SEM_ARGBUF ((SEM_ARG) sem_arg);
const IDESC * UNUSED idesc = abuf->idesc;
int cycles = 0;
{
int referenced = 0;
int UNUSED insn_referenced = abuf->written;
cycles += crisv10f_model_crisv10_u_const32 (current_cpu, idesc, 0, referenced);
}
{
int referenced = 0;
int UNUSED insn_referenced = abuf->written;
cycles += crisv10f_model_crisv10_u_exec (current_cpu, idesc, 1, referenced);
}
return cycles;
#undef FLD
}
static int
model_crisv10_move_c_sprv10_p7 (SIM_CPU *current_cpu, void *sem_arg)
{
#define FLD(f) abuf->fields.sfmt_move_c_sprv10_p9.f
const ARGBUF * UNUSED abuf = SEM_ARGBUF ((SEM_ARG) sem_arg);
const IDESC * UNUSED idesc = abuf->idesc;
int cycles = 0;
{
int referenced = 0;
int UNUSED insn_referenced = abuf->written;
cycles += crisv10f_model_crisv10_u_const32 (current_cpu, idesc, 0, referenced);
}
{
int referenced = 0;
int UNUSED insn_referenced = abuf->written;
cycles += crisv10f_model_crisv10_u_exec (current_cpu, idesc, 1, referenced);
}
return cycles;
#undef FLD
}
static int
model_crisv10_move_c_sprv10_p14 (SIM_CPU *current_cpu, void *sem_arg)
{
#define FLD(f) abuf->fields.sfmt_move_c_sprv10_p9.f
const ARGBUF * UNUSED abuf = SEM_ARGBUF ((SEM_ARG) sem_arg);
const IDESC * UNUSED idesc = abuf->idesc;
int cycles = 0;
{
int referenced = 0;
int UNUSED insn_referenced = abuf->written;
cycles += crisv10f_model_crisv10_u_const32 (current_cpu, idesc, 0, referenced);
}
{
int referenced = 0;
int UNUSED insn_referenced = abuf->written;
cycles += crisv10f_model_crisv10_u_exec (current_cpu, idesc, 1, referenced);
}
return cycles;
#undef FLD
}
static int
model_crisv10_move_c_sprv10_p15 (SIM_CPU *current_cpu, void *sem_arg)
{
#define FLD(f) abuf->fields.sfmt_move_c_sprv10_p9.f
const ARGBUF * UNUSED abuf = SEM_ARGBUF ((SEM_ARG) sem_arg);
const IDESC * UNUSED idesc = abuf->idesc;
int cycles = 0;
{
int referenced = 0;
int UNUSED insn_referenced = abuf->written;
cycles += crisv10f_model_crisv10_u_const32 (current_cpu, idesc, 0, referenced);
}
{
int referenced = 0;
int UNUSED insn_referenced = abuf->written;
cycles += crisv10f_model_crisv10_u_exec (current_cpu, idesc, 1, referenced);
}
return cycles;
#undef FLD
}
static int
model_crisv10_move_spr_mv10 (SIM_CPU *current_cpu, void *sem_arg)
{
#define FLD(f) abuf->fields.sfmt_move_spr_mv10.f
const ARGBUF * UNUSED abuf = SEM_ARGBUF ((SEM_ARG) sem_arg);
const IDESC * UNUSED idesc = abuf->idesc;
int cycles = 0;
{
int referenced = 0;
int UNUSED insn_referenced = abuf->written;
cycles += crisv10f_model_crisv10_u_mem (current_cpu, idesc, 0, referenced);
}
{
int referenced = 0;
int UNUSED insn_referenced = abuf->written;
cycles += crisv10f_model_crisv10_u_exec (current_cpu, idesc, 1, referenced);
}
return cycles;
#undef FLD
}
static int
model_crisv10_sbfs (SIM_CPU *current_cpu, void *sem_arg)
{
#define FLD(f) abuf->fields.sfmt_empty.f
const ARGBUF * UNUSED abuf = SEM_ARGBUF ((SEM_ARG) sem_arg);
const IDESC * UNUSED idesc = abuf->idesc;
int cycles = 0;
{
int referenced = 0;
int UNUSED insn_referenced = abuf->written;
cycles += crisv10f_model_crisv10_u_exec (current_cpu, idesc, 0, referenced);
}
return cycles;
#undef FLD
}
static int
model_crisv10_movem_r_m (SIM_CPU *current_cpu, void *sem_arg)
{
#define FLD(f) abuf->fields.sfmt_movem_r_m.f
const ARGBUF * UNUSED abuf = SEM_ARGBUF ((SEM_ARG) sem_arg);
const IDESC * UNUSED idesc = abuf->idesc;
int cycles = 0;
{
int referenced = 0;
int UNUSED insn_referenced = abuf->written;
INT in_Rd = -1;
in_Rd = FLD (in_Rd);
referenced |= 1 << 0;
cycles += crisv10f_model_crisv10_u_movem (current_cpu, idesc, 0, referenced, in_Rd);
}
{
int referenced = 0;
int UNUSED insn_referenced = abuf->written;
cycles += crisv10f_model_crisv10_u_exec (current_cpu, idesc, 1, referenced);
}
return cycles;
#undef FLD
}
static int
model_crisv10_movem_m_r (SIM_CPU *current_cpu, void *sem_arg)
{
#define FLD(f) abuf->fields.sfmt_movem_m_r.f
const ARGBUF * UNUSED abuf = SEM_ARGBUF ((SEM_ARG) sem_arg);
const IDESC * UNUSED idesc = abuf->idesc;
int cycles = 0;
{
int referenced = 0;
int UNUSED insn_referenced = abuf->written;
INT in_Rd = -1;
in_Rd = FLD (in_Rd);
referenced |= 1 << 0;
cycles += crisv10f_model_crisv10_u_movem (current_cpu, idesc, 0, referenced, in_Rd);
}
{
int referenced = 0;
int UNUSED insn_referenced = abuf->written;
cycles += crisv10f_model_crisv10_u_exec (current_cpu, idesc, 1, referenced);
}
return cycles;
#undef FLD
}
static int
model_crisv10_movem_m_pc (SIM_CPU *current_cpu, void *sem_arg)
{
#define FLD(f) abuf->fields.sfmt_movem_m_r.f
const ARGBUF * UNUSED abuf = SEM_ARGBUF ((SEM_ARG) sem_arg);
const IDESC * UNUSED idesc = abuf->idesc;
int cycles = 0;
{
int referenced = 0;
int UNUSED insn_referenced = abuf->written;
cycles += crisv10f_model_crisv10_u_mem (current_cpu, idesc, 0, referenced);
}
{
int referenced = 0;
int UNUSED insn_referenced = abuf->written;
cycles += crisv10f_model_crisv10_u_exec (current_cpu, idesc, 1, referenced);
}
return cycles;
#undef FLD
}
static int
model_crisv10_add_b_r (SIM_CPU *current_cpu, void *sem_arg)
{
#define FLD(f) abuf->fields.sfmt_add_b_r.f
const ARGBUF * UNUSED abuf = SEM_ARGBUF ((SEM_ARG) sem_arg);
const IDESC * UNUSED idesc = abuf->idesc;
int cycles = 0;
{
int referenced = 0;
int UNUSED insn_referenced = abuf->written;
cycles += crisv10f_model_crisv10_u_exec (current_cpu, idesc, 0, referenced);
}
return cycles;
#undef FLD
}
static int
model_crisv10_add_w_r (SIM_CPU *current_cpu, void *sem_arg)
{
#define FLD(f) abuf->fields.sfmt_add_b_r.f
const ARGBUF * UNUSED abuf = SEM_ARGBUF ((SEM_ARG) sem_arg);
const IDESC * UNUSED idesc = abuf->idesc;
int cycles = 0;
{
int referenced = 0;
int UNUSED insn_referenced = abuf->written;
cycles += crisv10f_model_crisv10_u_exec (current_cpu, idesc, 0, referenced);
}
return cycles;
#undef FLD
}
static int
model_crisv10_add_d_r (SIM_CPU *current_cpu, void *sem_arg)
{
#define FLD(f) abuf->fields.sfmt_add_b_r.f
const ARGBUF * UNUSED abuf = SEM_ARGBUF ((SEM_ARG) sem_arg);
const IDESC * UNUSED idesc = abuf->idesc;
int cycles = 0;
{
int referenced = 0;
int UNUSED insn_referenced = abuf->written;
cycles += crisv10f_model_crisv10_u_exec (current_cpu, idesc, 0, referenced);
}
return cycles;
#undef FLD
}
static int
model_crisv10_add_m_b_m (SIM_CPU *current_cpu, void *sem_arg)
{
#define FLD(f) abuf->fields.sfmt_add_m_b_m.f
const ARGBUF * UNUSED abuf = SEM_ARGBUF ((SEM_ARG) sem_arg);
const IDESC * UNUSED idesc = abuf->idesc;
int cycles = 0;
{
int referenced = 0;
int UNUSED insn_referenced = abuf->written;
cycles += crisv10f_model_crisv10_u_mem (current_cpu, idesc, 0, referenced);
}
{
int referenced = 0;
int UNUSED insn_referenced = abuf->written;
cycles += crisv10f_model_crisv10_u_exec (current_cpu, idesc, 1, referenced);
}
return cycles;
#undef FLD
}
static int
model_crisv10_add_m_w_m (SIM_CPU *current_cpu, void *sem_arg)
{
#define FLD(f) abuf->fields.sfmt_add_m_b_m.f
const ARGBUF * UNUSED abuf = SEM_ARGBUF ((SEM_ARG) sem_arg);
const IDESC * UNUSED idesc = abuf->idesc;
int cycles = 0;
{
int referenced = 0;
int UNUSED insn_referenced = abuf->written;
cycles += crisv10f_model_crisv10_u_mem (current_cpu, idesc, 0, referenced);
}
{
int referenced = 0;
int UNUSED insn_referenced = abuf->written;
cycles += crisv10f_model_crisv10_u_exec (current_cpu, idesc, 1, referenced);
}
return cycles;
#undef FLD
}
static int
model_crisv10_add_m_d_m (SIM_CPU *current_cpu, void *sem_arg)
{
#define FLD(f) abuf->fields.sfmt_add_m_b_m.f
const ARGBUF * UNUSED abuf = SEM_ARGBUF ((SEM_ARG) sem_arg);
const IDESC * UNUSED idesc = abuf->idesc;
int cycles = 0;
{
int referenced = 0;
int UNUSED insn_referenced = abuf->written;
cycles += crisv10f_model_crisv10_u_mem (current_cpu, idesc, 0, referenced);
}
{
int referenced = 0;
int UNUSED insn_referenced = abuf->written;
cycles += crisv10f_model_crisv10_u_exec (current_cpu, idesc, 1, referenced);
}
return cycles;
#undef FLD
}
static int
model_crisv10_addcbr (SIM_CPU *current_cpu, void *sem_arg)
{
#define FLD(f) abuf->fields.sfmt_addcbr.f
const ARGBUF * UNUSED abuf = SEM_ARGBUF ((SEM_ARG) sem_arg);
const IDESC * UNUSED idesc = abuf->idesc;
int cycles = 0;
{
int referenced = 0;
int UNUSED insn_referenced = abuf->written;
cycles += crisv10f_model_crisv10_u_const16 (current_cpu, idesc, 0, referenced);
}
{
int referenced = 0;
int UNUSED insn_referenced = abuf->written;
cycles += crisv10f_model_crisv10_u_exec (current_cpu, idesc, 1, referenced);
}
return cycles;
#undef FLD
}
static int
model_crisv10_addcwr (SIM_CPU *current_cpu, void *sem_arg)
{
#define FLD(f) abuf->fields.sfmt_addcwr.f
const ARGBUF * UNUSED abuf = SEM_ARGBUF ((SEM_ARG) sem_arg);
const IDESC * UNUSED idesc = abuf->idesc;
int cycles = 0;
{
int referenced = 0;
int UNUSED insn_referenced = abuf->written;
cycles += crisv10f_model_crisv10_u_const16 (current_cpu, idesc, 0, referenced);
}
{
int referenced = 0;
int UNUSED insn_referenced = abuf->written;
cycles += crisv10f_model_crisv10_u_exec (current_cpu, idesc, 1, referenced);
}
return cycles;
#undef FLD
}
static int
model_crisv10_addcdr (SIM_CPU *current_cpu, void *sem_arg)
{
#define FLD(f) abuf->fields.sfmt_addcdr.f
const ARGBUF * UNUSED abuf = SEM_ARGBUF ((SEM_ARG) sem_arg);
const IDESC * UNUSED idesc = abuf->idesc;
int cycles = 0;
{
int referenced = 0;
int UNUSED insn_referenced = abuf->written;
cycles += crisv10f_model_crisv10_u_const32 (current_cpu, idesc, 0, referenced);
}
{
int referenced = 0;
int UNUSED insn_referenced = abuf->written;
cycles += crisv10f_model_crisv10_u_exec (current_cpu, idesc, 1, referenced);
}
return cycles;
#undef FLD
}
static int
model_crisv10_addcpc (SIM_CPU *current_cpu, void *sem_arg)
{
#define FLD(f) abuf->fields.sfmt_move_c_sprv10_p9.f
const ARGBUF * UNUSED abuf = SEM_ARGBUF ((SEM_ARG) sem_arg);
const IDESC * UNUSED idesc = abuf->idesc;
int cycles = 0;
{
int referenced = 0;
int UNUSED insn_referenced = abuf->written;
cycles += crisv10f_model_crisv10_u_const32 (current_cpu, idesc, 0, referenced);
}
{
int referenced = 0;
int UNUSED insn_referenced = abuf->written;
cycles += crisv10f_model_crisv10_u_stall (current_cpu, idesc, 1, referenced);
}
{
int referenced = 0;
int UNUSED insn_referenced = abuf->written;
cycles += crisv10f_model_crisv10_u_exec (current_cpu, idesc, 2, referenced);
}
return cycles;
#undef FLD
}
static int
model_crisv10_adds_b_r (SIM_CPU *current_cpu, void *sem_arg)
{
#define FLD(f) abuf->fields.sfmt_add_b_r.f
const ARGBUF * UNUSED abuf = SEM_ARGBUF ((SEM_ARG) sem_arg);
const IDESC * UNUSED idesc = abuf->idesc;
int cycles = 0;
{
int referenced = 0;
int UNUSED insn_referenced = abuf->written;
cycles += crisv10f_model_crisv10_u_exec (current_cpu, idesc, 0, referenced);
}
return cycles;
#undef FLD
}
static int
model_crisv10_adds_w_r (SIM_CPU *current_cpu, void *sem_arg)
{
#define FLD(f) abuf->fields.sfmt_add_b_r.f
const ARGBUF * UNUSED abuf = SEM_ARGBUF ((SEM_ARG) sem_arg);
const IDESC * UNUSED idesc = abuf->idesc;
int cycles = 0;
{
int referenced = 0;
int UNUSED insn_referenced = abuf->written;
cycles += crisv10f_model_crisv10_u_exec (current_cpu, idesc, 0, referenced);
}
return cycles;
#undef FLD
}
static int
model_crisv10_adds_m_b_m (SIM_CPU *current_cpu, void *sem_arg)
{
#define FLD(f) abuf->fields.sfmt_add_m_b_m.f
const ARGBUF * UNUSED abuf = SEM_ARGBUF ((SEM_ARG) sem_arg);
const IDESC * UNUSED idesc = abuf->idesc;
int cycles = 0;
{
int referenced = 0;
int UNUSED insn_referenced = abuf->written;
cycles += crisv10f_model_crisv10_u_mem (current_cpu, idesc, 0, referenced);
}
{
int referenced = 0;
int UNUSED insn_referenced = abuf->written;
cycles += crisv10f_model_crisv10_u_exec (current_cpu, idesc, 1, referenced);
}
return cycles;
#undef FLD
}
static int
model_crisv10_adds_m_w_m (SIM_CPU *current_cpu, void *sem_arg)
{
#define FLD(f) abuf->fields.sfmt_add_m_b_m.f
const ARGBUF * UNUSED abuf = SEM_ARGBUF ((SEM_ARG) sem_arg);
const IDESC * UNUSED idesc = abuf->idesc;
int cycles = 0;
{
int referenced = 0;
int UNUSED insn_referenced = abuf->written;
cycles += crisv10f_model_crisv10_u_mem (current_cpu, idesc, 0, referenced);
}
{
int referenced = 0;
int UNUSED insn_referenced = abuf->written;
cycles += crisv10f_model_crisv10_u_exec (current_cpu, idesc, 1, referenced);
}
return cycles;
#undef FLD
}
static int
model_crisv10_addscbr (SIM_CPU *current_cpu, void *sem_arg)
{
#define FLD(f) abuf->fields.sfmt_addcbr.f
const ARGBUF * UNUSED abuf = SEM_ARGBUF ((SEM_ARG) sem_arg);
const IDESC * UNUSED idesc = abuf->idesc;
int cycles = 0;
{
int referenced = 0;
int UNUSED insn_referenced = abuf->written;
cycles += crisv10f_model_crisv10_u_const16 (current_cpu, idesc, 0, referenced);
}
{
int referenced = 0;
int UNUSED insn_referenced = abuf->written;
cycles += crisv10f_model_crisv10_u_exec (current_cpu, idesc, 1, referenced);
}
return cycles;
#undef FLD
}
static int
model_crisv10_addscwr (SIM_CPU *current_cpu, void *sem_arg)
{
#define FLD(f) abuf->fields.sfmt_addcwr.f
const ARGBUF * UNUSED abuf = SEM_ARGBUF ((SEM_ARG) sem_arg);
const IDESC * UNUSED idesc = abuf->idesc;
int cycles = 0;
{
int referenced = 0;
int UNUSED insn_referenced = abuf->written;
cycles += crisv10f_model_crisv10_u_const16 (current_cpu, idesc, 0, referenced);
}
{
int referenced = 0;
int UNUSED insn_referenced = abuf->written;
cycles += crisv10f_model_crisv10_u_exec (current_cpu, idesc, 1, referenced);
}
return cycles;
#undef FLD
}
static int
model_crisv10_addspcpc (SIM_CPU *current_cpu, void *sem_arg)
{
#define FLD(f) abuf->fields.sfmt_empty.f
const ARGBUF * UNUSED abuf = SEM_ARGBUF ((SEM_ARG) sem_arg);
const IDESC * UNUSED idesc = abuf->idesc;
int cycles = 0;
{
int referenced = 0;
int UNUSED insn_referenced = abuf->written;
cycles += crisv10f_model_crisv10_u_mem (current_cpu, idesc, 0, referenced);
}
{
int referenced = 0;
int UNUSED insn_referenced = abuf->written;
cycles += crisv10f_model_crisv10_u_stall (current_cpu, idesc, 1, referenced);
}
{
int referenced = 0;
int UNUSED insn_referenced = abuf->written;
cycles += crisv10f_model_crisv10_u_exec (current_cpu, idesc, 2, referenced);
}
return cycles;
#undef FLD
}
static int
model_crisv10_addu_b_r (SIM_CPU *current_cpu, void *sem_arg)
{
#define FLD(f) abuf->fields.sfmt_add_b_r.f
const ARGBUF * UNUSED abuf = SEM_ARGBUF ((SEM_ARG) sem_arg);
const IDESC * UNUSED idesc = abuf->idesc;
int cycles = 0;
{
int referenced = 0;
int UNUSED insn_referenced = abuf->written;
cycles += crisv10f_model_crisv10_u_exec (current_cpu, idesc, 0, referenced);
}
return cycles;
#undef FLD
}
static int
model_crisv10_addu_w_r (SIM_CPU *current_cpu, void *sem_arg)
{
#define FLD(f) abuf->fields.sfmt_add_b_r.f
const ARGBUF * UNUSED abuf = SEM_ARGBUF ((SEM_ARG) sem_arg);
const IDESC * UNUSED idesc = abuf->idesc;
int cycles = 0;
{
int referenced = 0;
int UNUSED insn_referenced = abuf->written;
cycles += crisv10f_model_crisv10_u_exec (current_cpu, idesc, 0, referenced);
}
return cycles;
#undef FLD
}
static int
model_crisv10_addu_m_b_m (SIM_CPU *current_cpu, void *sem_arg)
{
#define FLD(f) abuf->fields.sfmt_add_m_b_m.f
const ARGBUF * UNUSED abuf = SEM_ARGBUF ((SEM_ARG) sem_arg);
const IDESC * UNUSED idesc = abuf->idesc;
int cycles = 0;
{
int referenced = 0;
int UNUSED insn_referenced = abuf->written;
cycles += crisv10f_model_crisv10_u_mem (current_cpu, idesc, 0, referenced);
}
{
int referenced = 0;
int UNUSED insn_referenced = abuf->written;
cycles += crisv10f_model_crisv10_u_exec (current_cpu, idesc, 1, referenced);
}
return cycles;
#undef FLD
}
static int
model_crisv10_addu_m_w_m (SIM_CPU *current_cpu, void *sem_arg)
{
#define FLD(f) abuf->fields.sfmt_add_m_b_m.f
const ARGBUF * UNUSED abuf = SEM_ARGBUF ((SEM_ARG) sem_arg);
const IDESC * UNUSED idesc = abuf->idesc;
int cycles = 0;
{
int referenced = 0;
int UNUSED insn_referenced = abuf->written;
cycles += crisv10f_model_crisv10_u_mem (current_cpu, idesc, 0, referenced);
}
{
int referenced = 0;
int UNUSED insn_referenced = abuf->written;
cycles += crisv10f_model_crisv10_u_exec (current_cpu, idesc, 1, referenced);
}
return cycles;
#undef FLD
}
static int
model_crisv10_adducbr (SIM_CPU *current_cpu, void *sem_arg)
{
#define FLD(f) abuf->fields.sfmt_addcbr.f
const ARGBUF * UNUSED abuf = SEM_ARGBUF ((SEM_ARG) sem_arg);
const IDESC * UNUSED idesc = abuf->idesc;
int cycles = 0;
{
int referenced = 0;
int UNUSED insn_referenced = abuf->written;
cycles += crisv10f_model_crisv10_u_const16 (current_cpu, idesc, 0, referenced);
}
{
int referenced = 0;
int UNUSED insn_referenced = abuf->written;
cycles += crisv10f_model_crisv10_u_exec (current_cpu, idesc, 1, referenced);
}
return cycles;
#undef FLD
}
static int
model_crisv10_adducwr (SIM_CPU *current_cpu, void *sem_arg)
{
#define FLD(f) abuf->fields.sfmt_addcwr.f
const ARGBUF * UNUSED abuf = SEM_ARGBUF ((SEM_ARG) sem_arg);
const IDESC * UNUSED idesc = abuf->idesc;
int cycles = 0;
{
int referenced = 0;
int UNUSED insn_referenced = abuf->written;
cycles += crisv10f_model_crisv10_u_const16 (current_cpu, idesc, 0, referenced);
}
{
int referenced = 0;
int UNUSED insn_referenced = abuf->written;
cycles += crisv10f_model_crisv10_u_exec (current_cpu, idesc, 1, referenced);
}
return cycles;
#undef FLD
}
static int
model_crisv10_sub_b_r (SIM_CPU *current_cpu, void *sem_arg)
{
#define FLD(f) abuf->fields.sfmt_add_b_r.f
const ARGBUF * UNUSED abuf = SEM_ARGBUF ((SEM_ARG) sem_arg);
const IDESC * UNUSED idesc = abuf->idesc;
int cycles = 0;
{
int referenced = 0;
int UNUSED insn_referenced = abuf->written;
cycles += crisv10f_model_crisv10_u_exec (current_cpu, idesc, 0, referenced);
}
return cycles;
#undef FLD
}
static int
model_crisv10_sub_w_r (SIM_CPU *current_cpu, void *sem_arg)
{
#define FLD(f) abuf->fields.sfmt_add_b_r.f
const ARGBUF * UNUSED abuf = SEM_ARGBUF ((SEM_ARG) sem_arg);
const IDESC * UNUSED idesc = abuf->idesc;
int cycles = 0;
{
int referenced = 0;
int UNUSED insn_referenced = abuf->written;
cycles += crisv10f_model_crisv10_u_exec (current_cpu, idesc, 0, referenced);
}
return cycles;
#undef FLD
}
static int
model_crisv10_sub_d_r (SIM_CPU *current_cpu, void *sem_arg)
{
#define FLD(f) abuf->fields.sfmt_add_b_r.f
const ARGBUF * UNUSED abuf = SEM_ARGBUF ((SEM_ARG) sem_arg);
const IDESC * UNUSED idesc = abuf->idesc;
int cycles = 0;
{
int referenced = 0;
int UNUSED insn_referenced = abuf->written;
cycles += crisv10f_model_crisv10_u_exec (current_cpu, idesc, 0, referenced);
}
return cycles;
#undef FLD
}
static int
model_crisv10_sub_m_b_m (SIM_CPU *current_cpu, void *sem_arg)
{
#define FLD(f) abuf->fields.sfmt_add_m_b_m.f
const ARGBUF * UNUSED abuf = SEM_ARGBUF ((SEM_ARG) sem_arg);
const IDESC * UNUSED idesc = abuf->idesc;
int cycles = 0;
{
int referenced = 0;
int UNUSED insn_referenced = abuf->written;
cycles += crisv10f_model_crisv10_u_mem (current_cpu, idesc, 0, referenced);
}
{
int referenced = 0;
int UNUSED insn_referenced = abuf->written;
cycles += crisv10f_model_crisv10_u_exec (current_cpu, idesc, 1, referenced);
}
return cycles;
#undef FLD
}
static int
model_crisv10_sub_m_w_m (SIM_CPU *current_cpu, void *sem_arg)
{
#define FLD(f) abuf->fields.sfmt_add_m_b_m.f
const ARGBUF * UNUSED abuf = SEM_ARGBUF ((SEM_ARG) sem_arg);
const IDESC * UNUSED idesc = abuf->idesc;
int cycles = 0;
{
int referenced = 0;
int UNUSED insn_referenced = abuf->written;
cycles += crisv10f_model_crisv10_u_mem (current_cpu, idesc, 0, referenced);
}
{
int referenced = 0;
int UNUSED insn_referenced = abuf->written;
cycles += crisv10f_model_crisv10_u_exec (current_cpu, idesc, 1, referenced);
}
return cycles;
#undef FLD
}
static int
model_crisv10_sub_m_d_m (SIM_CPU *current_cpu, void *sem_arg)
{
#define FLD(f) abuf->fields.sfmt_add_m_b_m.f
const ARGBUF * UNUSED abuf = SEM_ARGBUF ((SEM_ARG) sem_arg);
const IDESC * UNUSED idesc = abuf->idesc;
int cycles = 0;
{
int referenced = 0;
int UNUSED insn_referenced = abuf->written;
cycles += crisv10f_model_crisv10_u_mem (current_cpu, idesc, 0, referenced);
}
{
int referenced = 0;
int UNUSED insn_referenced = abuf->written;
cycles += crisv10f_model_crisv10_u_exec (current_cpu, idesc, 1, referenced);
}
return cycles;
#undef FLD
}
static int
model_crisv10_subcbr (SIM_CPU *current_cpu, void *sem_arg)
{
#define FLD(f) abuf->fields.sfmt_addcbr.f
const ARGBUF * UNUSED abuf = SEM_ARGBUF ((SEM_ARG) sem_arg);
const IDESC * UNUSED idesc = abuf->idesc;
int cycles = 0;
{
int referenced = 0;
int UNUSED insn_referenced = abuf->written;
cycles += crisv10f_model_crisv10_u_const16 (current_cpu, idesc, 0, referenced);
}
{
int referenced = 0;
int UNUSED insn_referenced = abuf->written;
cycles += crisv10f_model_crisv10_u_exec (current_cpu, idesc, 1, referenced);
}
return cycles;
#undef FLD
}
static int
model_crisv10_subcwr (SIM_CPU *current_cpu, void *sem_arg)
{
#define FLD(f) abuf->fields.sfmt_addcwr.f
const ARGBUF * UNUSED abuf = SEM_ARGBUF ((SEM_ARG) sem_arg);
const IDESC * UNUSED idesc = abuf->idesc;
int cycles = 0;
{
int referenced = 0;
int UNUSED insn_referenced = abuf->written;
cycles += crisv10f_model_crisv10_u_const16 (current_cpu, idesc, 0, referenced);
}
{
int referenced = 0;
int UNUSED insn_referenced = abuf->written;
cycles += crisv10f_model_crisv10_u_exec (current_cpu, idesc, 1, referenced);
}
return cycles;
#undef FLD
}
static int
model_crisv10_subcdr (SIM_CPU *current_cpu, void *sem_arg)
{
#define FLD(f) abuf->fields.sfmt_addcdr.f
const ARGBUF * UNUSED abuf = SEM_ARGBUF ((SEM_ARG) sem_arg);
const IDESC * UNUSED idesc = abuf->idesc;
int cycles = 0;
{
int referenced = 0;
int UNUSED insn_referenced = abuf->written;
cycles += crisv10f_model_crisv10_u_const32 (current_cpu, idesc, 0, referenced);
}
{
int referenced = 0;
int UNUSED insn_referenced = abuf->written;
cycles += crisv10f_model_crisv10_u_exec (current_cpu, idesc, 1, referenced);
}
return cycles;
#undef FLD
}
static int
model_crisv10_subs_b_r (SIM_CPU *current_cpu, void *sem_arg)
{
#define FLD(f) abuf->fields.sfmt_add_b_r.f
const ARGBUF * UNUSED abuf = SEM_ARGBUF ((SEM_ARG) sem_arg);
const IDESC * UNUSED idesc = abuf->idesc;
int cycles = 0;
{
int referenced = 0;
int UNUSED insn_referenced = abuf->written;
cycles += crisv10f_model_crisv10_u_exec (current_cpu, idesc, 0, referenced);
}
return cycles;
#undef FLD
}
static int
model_crisv10_subs_w_r (SIM_CPU *current_cpu, void *sem_arg)
{
#define FLD(f) abuf->fields.sfmt_add_b_r.f
const ARGBUF * UNUSED abuf = SEM_ARGBUF ((SEM_ARG) sem_arg);
const IDESC * UNUSED idesc = abuf->idesc;
int cycles = 0;
{
int referenced = 0;
int UNUSED insn_referenced = abuf->written;
cycles += crisv10f_model_crisv10_u_exec (current_cpu, idesc, 0, referenced);
}
return cycles;
#undef FLD
}
static int
model_crisv10_subs_m_b_m (SIM_CPU *current_cpu, void *sem_arg)
{
#define FLD(f) abuf->fields.sfmt_add_m_b_m.f
const ARGBUF * UNUSED abuf = SEM_ARGBUF ((SEM_ARG) sem_arg);
const IDESC * UNUSED idesc = abuf->idesc;
int cycles = 0;
{
int referenced = 0;
int UNUSED insn_referenced = abuf->written;
cycles += crisv10f_model_crisv10_u_mem (current_cpu, idesc, 0, referenced);
}
{
int referenced = 0;
int UNUSED insn_referenced = abuf->written;
cycles += crisv10f_model_crisv10_u_exec (current_cpu, idesc, 1, referenced);
}
return cycles;
#undef FLD
}
static int
model_crisv10_subs_m_w_m (SIM_CPU *current_cpu, void *sem_arg)
{
#define FLD(f) abuf->fields.sfmt_add_m_b_m.f
const ARGBUF * UNUSED abuf = SEM_ARGBUF ((SEM_ARG) sem_arg);
const IDESC * UNUSED idesc = abuf->idesc;
int cycles = 0;
{
int referenced = 0;
int UNUSED insn_referenced = abuf->written;
cycles += crisv10f_model_crisv10_u_mem (current_cpu, idesc, 0, referenced);
}
{
int referenced = 0;
int UNUSED insn_referenced = abuf->written;
cycles += crisv10f_model_crisv10_u_exec (current_cpu, idesc, 1, referenced);
}
return cycles;
#undef FLD
}
static int
model_crisv10_subscbr (SIM_CPU *current_cpu, void *sem_arg)
{
#define FLD(f) abuf->fields.sfmt_addcbr.f
const ARGBUF * UNUSED abuf = SEM_ARGBUF ((SEM_ARG) sem_arg);
const IDESC * UNUSED idesc = abuf->idesc;
int cycles = 0;
{
int referenced = 0;
int UNUSED insn_referenced = abuf->written;
cycles += crisv10f_model_crisv10_u_const16 (current_cpu, idesc, 0, referenced);
}
{
int referenced = 0;
int UNUSED insn_referenced = abuf->written;
cycles += crisv10f_model_crisv10_u_exec (current_cpu, idesc, 1, referenced);
}
return cycles;
#undef FLD
}
static int
model_crisv10_subscwr (SIM_CPU *current_cpu, void *sem_arg)
{
#define FLD(f) abuf->fields.sfmt_addcwr.f
const ARGBUF * UNUSED abuf = SEM_ARGBUF ((SEM_ARG) sem_arg);
const IDESC * UNUSED idesc = abuf->idesc;
int cycles = 0;
{
int referenced = 0;
int UNUSED insn_referenced = abuf->written;
cycles += crisv10f_model_crisv10_u_const16 (current_cpu, idesc, 0, referenced);
}
{
int referenced = 0;
int UNUSED insn_referenced = abuf->written;
cycles += crisv10f_model_crisv10_u_exec (current_cpu, idesc, 1, referenced);
}
return cycles;
#undef FLD
}
static int
model_crisv10_subu_b_r (SIM_CPU *current_cpu, void *sem_arg)
{
#define FLD(f) abuf->fields.sfmt_add_b_r.f
const ARGBUF * UNUSED abuf = SEM_ARGBUF ((SEM_ARG) sem_arg);
const IDESC * UNUSED idesc = abuf->idesc;
int cycles = 0;
{
int referenced = 0;
int UNUSED insn_referenced = abuf->written;
cycles += crisv10f_model_crisv10_u_exec (current_cpu, idesc, 0, referenced);
}
return cycles;
#undef FLD
}
static int
model_crisv10_subu_w_r (SIM_CPU *current_cpu, void *sem_arg)
{
#define FLD(f) abuf->fields.sfmt_add_b_r.f
const ARGBUF * UNUSED abuf = SEM_ARGBUF ((SEM_ARG) sem_arg);
const IDESC * UNUSED idesc = abuf->idesc;
int cycles = 0;
{
int referenced = 0;
int UNUSED insn_referenced = abuf->written;
cycles += crisv10f_model_crisv10_u_exec (current_cpu, idesc, 0, referenced);
}
return cycles;
#undef FLD
}
static int
model_crisv10_subu_m_b_m (SIM_CPU *current_cpu, void *sem_arg)
{
#define FLD(f) abuf->fields.sfmt_add_m_b_m.f
const ARGBUF * UNUSED abuf = SEM_ARGBUF ((SEM_ARG) sem_arg);
const IDESC * UNUSED idesc = abuf->idesc;
int cycles = 0;
{
int referenced = 0;
int UNUSED insn_referenced = abuf->written;
cycles += crisv10f_model_crisv10_u_mem (current_cpu, idesc, 0, referenced);
}
{
int referenced = 0;
int UNUSED insn_referenced = abuf->written;
cycles += crisv10f_model_crisv10_u_exec (current_cpu, idesc, 1, referenced);
}
return cycles;
#undef FLD
}
static int
model_crisv10_subu_m_w_m (SIM_CPU *current_cpu, void *sem_arg)
{
#define FLD(f) abuf->fields.sfmt_add_m_b_m.f
const ARGBUF * UNUSED abuf = SEM_ARGBUF ((SEM_ARG) sem_arg);
const IDESC * UNUSED idesc = abuf->idesc;
int cycles = 0;
{
int referenced = 0;
int UNUSED insn_referenced = abuf->written;
cycles += crisv10f_model_crisv10_u_mem (current_cpu, idesc, 0, referenced);
}
{
int referenced = 0;
int UNUSED insn_referenced = abuf->written;
cycles += crisv10f_model_crisv10_u_exec (current_cpu, idesc, 1, referenced);
}
return cycles;
#undef FLD
}
static int
model_crisv10_subucbr (SIM_CPU *current_cpu, void *sem_arg)
{
#define FLD(f) abuf->fields.sfmt_addcbr.f
const ARGBUF * UNUSED abuf = SEM_ARGBUF ((SEM_ARG) sem_arg);
const IDESC * UNUSED idesc = abuf->idesc;
int cycles = 0;
{
int referenced = 0;
int UNUSED insn_referenced = abuf->written;
cycles += crisv10f_model_crisv10_u_const16 (current_cpu, idesc, 0, referenced);
}
{
int referenced = 0;
int UNUSED insn_referenced = abuf->written;
cycles += crisv10f_model_crisv10_u_exec (current_cpu, idesc, 1, referenced);
}
return cycles;
#undef FLD
}
static int
model_crisv10_subucwr (SIM_CPU *current_cpu, void *sem_arg)
{
#define FLD(f) abuf->fields.sfmt_addcwr.f
const ARGBUF * UNUSED abuf = SEM_ARGBUF ((SEM_ARG) sem_arg);
const IDESC * UNUSED idesc = abuf->idesc;
int cycles = 0;
{
int referenced = 0;
int UNUSED insn_referenced = abuf->written;
cycles += crisv10f_model_crisv10_u_const16 (current_cpu, idesc, 0, referenced);
}
{
int referenced = 0;
int UNUSED insn_referenced = abuf->written;
cycles += crisv10f_model_crisv10_u_exec (current_cpu, idesc, 1, referenced);
}
return cycles;
#undef FLD
}
static int
model_crisv10_addi_b_r (SIM_CPU *current_cpu, void *sem_arg)
{
#define FLD(f) abuf->fields.sfmt_bound_m_b_m.f
const ARGBUF * UNUSED abuf = SEM_ARGBUF ((SEM_ARG) sem_arg);
const IDESC * UNUSED idesc = abuf->idesc;
int cycles = 0;
{
int referenced = 0;
int UNUSED insn_referenced = abuf->written;
cycles += crisv10f_model_crisv10_u_exec (current_cpu, idesc, 0, referenced);
}
return cycles;
#undef FLD
}
static int
model_crisv10_addi_w_r (SIM_CPU *current_cpu, void *sem_arg)
{
#define FLD(f) abuf->fields.sfmt_bound_m_b_m.f
const ARGBUF * UNUSED abuf = SEM_ARGBUF ((SEM_ARG) sem_arg);
const IDESC * UNUSED idesc = abuf->idesc;
int cycles = 0;
{
int referenced = 0;
int UNUSED insn_referenced = abuf->written;
cycles += crisv10f_model_crisv10_u_exec (current_cpu, idesc, 0, referenced);
}
return cycles;
#undef FLD
}
static int
model_crisv10_addi_d_r (SIM_CPU *current_cpu, void *sem_arg)
{
#define FLD(f) abuf->fields.sfmt_bound_m_b_m.f
const ARGBUF * UNUSED abuf = SEM_ARGBUF ((SEM_ARG) sem_arg);
const IDESC * UNUSED idesc = abuf->idesc;
int cycles = 0;
{
int referenced = 0;
int UNUSED insn_referenced = abuf->written;
cycles += crisv10f_model_crisv10_u_exec (current_cpu, idesc, 0, referenced);
}
return cycles;
#undef FLD
}
static int
model_crisv10_neg_b_r (SIM_CPU *current_cpu, void *sem_arg)
{
#define FLD(f) abuf->fields.sfmt_add_b_r.f
const ARGBUF * UNUSED abuf = SEM_ARGBUF ((SEM_ARG) sem_arg);
const IDESC * UNUSED idesc = abuf->idesc;
int cycles = 0;
{
int referenced = 0;
int UNUSED insn_referenced = abuf->written;
cycles += crisv10f_model_crisv10_u_exec (current_cpu, idesc, 0, referenced);
}
return cycles;
#undef FLD
}
static int
model_crisv10_neg_w_r (SIM_CPU *current_cpu, void *sem_arg)
{
#define FLD(f) abuf->fields.sfmt_add_b_r.f
const ARGBUF * UNUSED abuf = SEM_ARGBUF ((SEM_ARG) sem_arg);
const IDESC * UNUSED idesc = abuf->idesc;
int cycles = 0;
{
int referenced = 0;
int UNUSED insn_referenced = abuf->written;
cycles += crisv10f_model_crisv10_u_exec (current_cpu, idesc, 0, referenced);
}
return cycles;
#undef FLD
}
static int
model_crisv10_neg_d_r (SIM_CPU *current_cpu, void *sem_arg)
{
#define FLD(f) abuf->fields.sfmt_add_b_r.f
const ARGBUF * UNUSED abuf = SEM_ARGBUF ((SEM_ARG) sem_arg);
const IDESC * UNUSED idesc = abuf->idesc;
int cycles = 0;
{
int referenced = 0;
int UNUSED insn_referenced = abuf->written;
cycles += crisv10f_model_crisv10_u_exec (current_cpu, idesc, 0, referenced);
}
return cycles;
#undef FLD
}
static int
model_crisv10_test_m_b_m (SIM_CPU *current_cpu, void *sem_arg)
{
#define FLD(f) abuf->fields.sfmt_move_spr_mv10.f
const ARGBUF * UNUSED abuf = SEM_ARGBUF ((SEM_ARG) sem_arg);
const IDESC * UNUSED idesc = abuf->idesc;
int cycles = 0;
{
int referenced = 0;
int UNUSED insn_referenced = abuf->written;
cycles += crisv10f_model_crisv10_u_mem (current_cpu, idesc, 0, referenced);
}
{
int referenced = 0;
int UNUSED insn_referenced = abuf->written;
cycles += crisv10f_model_crisv10_u_exec (current_cpu, idesc, 1, referenced);
}
return cycles;
#undef FLD
}
static int
model_crisv10_test_m_w_m (SIM_CPU *current_cpu, void *sem_arg)
{
#define FLD(f) abuf->fields.sfmt_move_spr_mv10.f
const ARGBUF * UNUSED abuf = SEM_ARGBUF ((SEM_ARG) sem_arg);
const IDESC * UNUSED idesc = abuf->idesc;
int cycles = 0;
{
int referenced = 0;
int UNUSED insn_referenced = abuf->written;
cycles += crisv10f_model_crisv10_u_mem (current_cpu, idesc, 0, referenced);
}
{
int referenced = 0;
int UNUSED insn_referenced = abuf->written;
cycles += crisv10f_model_crisv10_u_exec (current_cpu, idesc, 1, referenced);
}
return cycles;
#undef FLD
}
static int
model_crisv10_test_m_d_m (SIM_CPU *current_cpu, void *sem_arg)
{
#define FLD(f) abuf->fields.sfmt_move_spr_mv10.f
const ARGBUF * UNUSED abuf = SEM_ARGBUF ((SEM_ARG) sem_arg);
const IDESC * UNUSED idesc = abuf->idesc;
int cycles = 0;
{
int referenced = 0;
int UNUSED insn_referenced = abuf->written;
cycles += crisv10f_model_crisv10_u_mem (current_cpu, idesc, 0, referenced);
}
{
int referenced = 0;
int UNUSED insn_referenced = abuf->written;
cycles += crisv10f_model_crisv10_u_exec (current_cpu, idesc, 1, referenced);
}
return cycles;
#undef FLD
}
static int
model_crisv10_move_r_m_b_m (SIM_CPU *current_cpu, void *sem_arg)
{
#define FLD(f) abuf->fields.sfmt_bound_m_b_m.f
const ARGBUF * UNUSED abuf = SEM_ARGBUF ((SEM_ARG) sem_arg);
const IDESC * UNUSED idesc = abuf->idesc;
int cycles = 0;
{
int referenced = 0;
int UNUSED insn_referenced = abuf->written;
cycles += crisv10f_model_crisv10_u_mem (current_cpu, idesc, 0, referenced);
}
{
int referenced = 0;
int UNUSED insn_referenced = abuf->written;
cycles += crisv10f_model_crisv10_u_exec (current_cpu, idesc, 1, referenced);
}
return cycles;
#undef FLD
}
static int
model_crisv10_move_r_m_w_m (SIM_CPU *current_cpu, void *sem_arg)
{
#define FLD(f) abuf->fields.sfmt_bound_m_b_m.f
const ARGBUF * UNUSED abuf = SEM_ARGBUF ((SEM_ARG) sem_arg);
const IDESC * UNUSED idesc = abuf->idesc;
int cycles = 0;
{
int referenced = 0;
int UNUSED insn_referenced = abuf->written;
cycles += crisv10f_model_crisv10_u_mem (current_cpu, idesc, 0, referenced);
}
{
int referenced = 0;
int UNUSED insn_referenced = abuf->written;
cycles += crisv10f_model_crisv10_u_exec (current_cpu, idesc, 1, referenced);
}
return cycles;
#undef FLD
}
static int
model_crisv10_move_r_m_d_m (SIM_CPU *current_cpu, void *sem_arg)
{
#define FLD(f) abuf->fields.sfmt_bound_m_b_m.f
const ARGBUF * UNUSED abuf = SEM_ARGBUF ((SEM_ARG) sem_arg);
const IDESC * UNUSED idesc = abuf->idesc;
int cycles = 0;
{
int referenced = 0;
int UNUSED insn_referenced = abuf->written;
cycles += crisv10f_model_crisv10_u_mem (current_cpu, idesc, 0, referenced);
}
{
int referenced = 0;
int UNUSED insn_referenced = abuf->written;
cycles += crisv10f_model_crisv10_u_exec (current_cpu, idesc, 1, referenced);
}
return cycles;
#undef FLD
}
static int
model_crisv10_muls_b (SIM_CPU *current_cpu, void *sem_arg)
{
#define FLD(f) abuf->fields.sfmt_muls_b.f
const ARGBUF * UNUSED abuf = SEM_ARGBUF ((SEM_ARG) sem_arg);
const IDESC * UNUSED idesc = abuf->idesc;
int cycles = 0;
{
int referenced = 0;
int UNUSED insn_referenced = abuf->written;
cycles += crisv10f_model_crisv10_u_multiply (current_cpu, idesc, 0, referenced);
}
{
int referenced = 0;
int UNUSED insn_referenced = abuf->written;
cycles += crisv10f_model_crisv10_u_exec (current_cpu, idesc, 1, referenced);
}
return cycles;
#undef FLD
}
static int
model_crisv10_muls_w (SIM_CPU *current_cpu, void *sem_arg)
{
#define FLD(f) abuf->fields.sfmt_muls_b.f
const ARGBUF * UNUSED abuf = SEM_ARGBUF ((SEM_ARG) sem_arg);
const IDESC * UNUSED idesc = abuf->idesc;
int cycles = 0;
{
int referenced = 0;
int UNUSED insn_referenced = abuf->written;
cycles += crisv10f_model_crisv10_u_multiply (current_cpu, idesc, 0, referenced);
}
{
int referenced = 0;
int UNUSED insn_referenced = abuf->written;
cycles += crisv10f_model_crisv10_u_exec (current_cpu, idesc, 1, referenced);
}
return cycles;
#undef FLD
}
static int
model_crisv10_muls_d (SIM_CPU *current_cpu, void *sem_arg)
{
#define FLD(f) abuf->fields.sfmt_muls_b.f
const ARGBUF * UNUSED abuf = SEM_ARGBUF ((SEM_ARG) sem_arg);
const IDESC * UNUSED idesc = abuf->idesc;
int cycles = 0;
{
int referenced = 0;
int UNUSED insn_referenced = abuf->written;
cycles += crisv10f_model_crisv10_u_multiply (current_cpu, idesc, 0, referenced);
}
{
int referenced = 0;
int UNUSED insn_referenced = abuf->written;
cycles += crisv10f_model_crisv10_u_exec (current_cpu, idesc, 1, referenced);
}
return cycles;
#undef FLD
}
static int
model_crisv10_mulu_b (SIM_CPU *current_cpu, void *sem_arg)
{
#define FLD(f) abuf->fields.sfmt_muls_b.f
const ARGBUF * UNUSED abuf = SEM_ARGBUF ((SEM_ARG) sem_arg);
const IDESC * UNUSED idesc = abuf->idesc;
int cycles = 0;
{
int referenced = 0;
int UNUSED insn_referenced = abuf->written;
cycles += crisv10f_model_crisv10_u_multiply (current_cpu, idesc, 0, referenced);
}
{
int referenced = 0;
int UNUSED insn_referenced = abuf->written;
cycles += crisv10f_model_crisv10_u_exec (current_cpu, idesc, 1, referenced);
}
return cycles;
#undef FLD
}
static int
model_crisv10_mulu_w (SIM_CPU *current_cpu, void *sem_arg)
{
#define FLD(f) abuf->fields.sfmt_muls_b.f
const ARGBUF * UNUSED abuf = SEM_ARGBUF ((SEM_ARG) sem_arg);
const IDESC * UNUSED idesc = abuf->idesc;
int cycles = 0;
{
int referenced = 0;
int UNUSED insn_referenced = abuf->written;
cycles += crisv10f_model_crisv10_u_multiply (current_cpu, idesc, 0, referenced);
}
{
int referenced = 0;
int UNUSED insn_referenced = abuf->written;
cycles += crisv10f_model_crisv10_u_exec (current_cpu, idesc, 1, referenced);
}
return cycles;
#undef FLD
}
static int
model_crisv10_mulu_d (SIM_CPU *current_cpu, void *sem_arg)
{
#define FLD(f) abuf->fields.sfmt_muls_b.f
const ARGBUF * UNUSED abuf = SEM_ARGBUF ((SEM_ARG) sem_arg);
const IDESC * UNUSED idesc = abuf->idesc;
int cycles = 0;
{
int referenced = 0;
int UNUSED insn_referenced = abuf->written;
cycles += crisv10f_model_crisv10_u_multiply (current_cpu, idesc, 0, referenced);
}
{
int referenced = 0;
int UNUSED insn_referenced = abuf->written;
cycles += crisv10f_model_crisv10_u_exec (current_cpu, idesc, 1, referenced);
}
return cycles;
#undef FLD
}
static int
model_crisv10_mstep (SIM_CPU *current_cpu, void *sem_arg)
{
#define FLD(f) abuf->fields.sfmt_muls_b.f
const ARGBUF * UNUSED abuf = SEM_ARGBUF ((SEM_ARG) sem_arg);
const IDESC * UNUSED idesc = abuf->idesc;
int cycles = 0;
{
int referenced = 0;
int UNUSED insn_referenced = abuf->written;
cycles += crisv10f_model_crisv10_u_exec (current_cpu, idesc, 0, referenced);
}
return cycles;
#undef FLD
}
static int
model_crisv10_dstep (SIM_CPU *current_cpu, void *sem_arg)
{
#define FLD(f) abuf->fields.sfmt_muls_b.f
const ARGBUF * UNUSED abuf = SEM_ARGBUF ((SEM_ARG) sem_arg);
const IDESC * UNUSED idesc = abuf->idesc;
int cycles = 0;
{
int referenced = 0;
int UNUSED insn_referenced = abuf->written;
cycles += crisv10f_model_crisv10_u_exec (current_cpu, idesc, 0, referenced);
}
return cycles;
#undef FLD
}
static int
model_crisv10_abs (SIM_CPU *current_cpu, void *sem_arg)
{
#define FLD(f) abuf->fields.sfmt_muls_b.f
const ARGBUF * UNUSED abuf = SEM_ARGBUF ((SEM_ARG) sem_arg);
const IDESC * UNUSED idesc = abuf->idesc;
int cycles = 0;
{
int referenced = 0;
int UNUSED insn_referenced = abuf->written;
cycles += crisv10f_model_crisv10_u_exec (current_cpu, idesc, 0, referenced);
}
return cycles;
#undef FLD
}
static int
model_crisv10_and_b_r (SIM_CPU *current_cpu, void *sem_arg)
{
#define FLD(f) abuf->fields.sfmt_add_b_r.f
const ARGBUF * UNUSED abuf = SEM_ARGBUF ((SEM_ARG) sem_arg);
const IDESC * UNUSED idesc = abuf->idesc;
int cycles = 0;
{
int referenced = 0;
int UNUSED insn_referenced = abuf->written;
cycles += crisv10f_model_crisv10_u_exec (current_cpu, idesc, 0, referenced);
}
return cycles;
#undef FLD
}
static int
model_crisv10_and_w_r (SIM_CPU *current_cpu, void *sem_arg)
{
#define FLD(f) abuf->fields.sfmt_add_b_r.f
const ARGBUF * UNUSED abuf = SEM_ARGBUF ((SEM_ARG) sem_arg);
const IDESC * UNUSED idesc = abuf->idesc;
int cycles = 0;
{
int referenced = 0;
int UNUSED insn_referenced = abuf->written;
cycles += crisv10f_model_crisv10_u_exec (current_cpu, idesc, 0, referenced);
}
return cycles;
#undef FLD
}
static int
model_crisv10_and_d_r (SIM_CPU *current_cpu, void *sem_arg)
{
#define FLD(f) abuf->fields.sfmt_add_b_r.f
const ARGBUF * UNUSED abuf = SEM_ARGBUF ((SEM_ARG) sem_arg);
const IDESC * UNUSED idesc = abuf->idesc;
int cycles = 0;
{
int referenced = 0;
int UNUSED insn_referenced = abuf->written;
cycles += crisv10f_model_crisv10_u_exec (current_cpu, idesc, 0, referenced);
}
return cycles;
#undef FLD
}
static int
model_crisv10_and_m_b_m (SIM_CPU *current_cpu, void *sem_arg)
{
#define FLD(f) abuf->fields.sfmt_add_m_b_m.f
const ARGBUF * UNUSED abuf = SEM_ARGBUF ((SEM_ARG) sem_arg);
const IDESC * UNUSED idesc = abuf->idesc;
int cycles = 0;
{
int referenced = 0;
int UNUSED insn_referenced = abuf->written;
cycles += crisv10f_model_crisv10_u_mem (current_cpu, idesc, 0, referenced);
}
{
int referenced = 0;
int UNUSED insn_referenced = abuf->written;
cycles += crisv10f_model_crisv10_u_exec (current_cpu, idesc, 1, referenced);
}
return cycles;
#undef FLD
}
static int
model_crisv10_and_m_w_m (SIM_CPU *current_cpu, void *sem_arg)
{
#define FLD(f) abuf->fields.sfmt_add_m_b_m.f
const ARGBUF * UNUSED abuf = SEM_ARGBUF ((SEM_ARG) sem_arg);
const IDESC * UNUSED idesc = abuf->idesc;
int cycles = 0;
{
int referenced = 0;
int UNUSED insn_referenced = abuf->written;
cycles += crisv10f_model_crisv10_u_mem (current_cpu, idesc, 0, referenced);
}
{
int referenced = 0;
int UNUSED insn_referenced = abuf->written;
cycles += crisv10f_model_crisv10_u_exec (current_cpu, idesc, 1, referenced);
}
return cycles;
#undef FLD
}
static int
model_crisv10_and_m_d_m (SIM_CPU *current_cpu, void *sem_arg)
{
#define FLD(f) abuf->fields.sfmt_add_m_b_m.f
const ARGBUF * UNUSED abuf = SEM_ARGBUF ((SEM_ARG) sem_arg);
const IDESC * UNUSED idesc = abuf->idesc;
int cycles = 0;
{
int referenced = 0;
int UNUSED insn_referenced = abuf->written;
cycles += crisv10f_model_crisv10_u_mem (current_cpu, idesc, 0, referenced);
}
{
int referenced = 0;
int UNUSED insn_referenced = abuf->written;
cycles += crisv10f_model_crisv10_u_exec (current_cpu, idesc, 1, referenced);
}
return cycles;
#undef FLD
}
static int
model_crisv10_andcbr (SIM_CPU *current_cpu, void *sem_arg)
{
#define FLD(f) abuf->fields.sfmt_addcbr.f
const ARGBUF * UNUSED abuf = SEM_ARGBUF ((SEM_ARG) sem_arg);
const IDESC * UNUSED idesc = abuf->idesc;
int cycles = 0;
{
int referenced = 0;
int UNUSED insn_referenced = abuf->written;
cycles += crisv10f_model_crisv10_u_const16 (current_cpu, idesc, 0, referenced);
}
{
int referenced = 0;
int UNUSED insn_referenced = abuf->written;
cycles += crisv10f_model_crisv10_u_exec (current_cpu, idesc, 1, referenced);
}
return cycles;
#undef FLD
}
static int
model_crisv10_andcwr (SIM_CPU *current_cpu, void *sem_arg)
{
#define FLD(f) abuf->fields.sfmt_addcwr.f
const ARGBUF * UNUSED abuf = SEM_ARGBUF ((SEM_ARG) sem_arg);
const IDESC * UNUSED idesc = abuf->idesc;
int cycles = 0;
{
int referenced = 0;
int UNUSED insn_referenced = abuf->written;
cycles += crisv10f_model_crisv10_u_const16 (current_cpu, idesc, 0, referenced);
}
{
int referenced = 0;
int UNUSED insn_referenced = abuf->written;
cycles += crisv10f_model_crisv10_u_exec (current_cpu, idesc, 1, referenced);
}
return cycles;
#undef FLD
}
static int
model_crisv10_andcdr (SIM_CPU *current_cpu, void *sem_arg)
{
#define FLD(f) abuf->fields.sfmt_addcdr.f
const ARGBUF * UNUSED abuf = SEM_ARGBUF ((SEM_ARG) sem_arg);
const IDESC * UNUSED idesc = abuf->idesc;
int cycles = 0;
{
int referenced = 0;
int UNUSED insn_referenced = abuf->written;
cycles += crisv10f_model_crisv10_u_const32 (current_cpu, idesc, 0, referenced);
}
{
int referenced = 0;
int UNUSED insn_referenced = abuf->written;
cycles += crisv10f_model_crisv10_u_exec (current_cpu, idesc, 1, referenced);
}
return cycles;
#undef FLD
}
static int
model_crisv10_andq (SIM_CPU *current_cpu, void *sem_arg)
{
#define FLD(f) abuf->fields.sfmt_andq.f
const ARGBUF * UNUSED abuf = SEM_ARGBUF ((SEM_ARG) sem_arg);
const IDESC * UNUSED idesc = abuf->idesc;
int cycles = 0;
{
int referenced = 0;
int UNUSED insn_referenced = abuf->written;
cycles += crisv10f_model_crisv10_u_exec (current_cpu, idesc, 0, referenced);
}
return cycles;
#undef FLD
}
static int
model_crisv10_orr_b_r (SIM_CPU *current_cpu, void *sem_arg)
{
#define FLD(f) abuf->fields.sfmt_add_b_r.f
const ARGBUF * UNUSED abuf = SEM_ARGBUF ((SEM_ARG) sem_arg);
const IDESC * UNUSED idesc = abuf->idesc;
int cycles = 0;
{
int referenced = 0;
int UNUSED insn_referenced = abuf->written;
cycles += crisv10f_model_crisv10_u_exec (current_cpu, idesc, 0, referenced);
}
return cycles;
#undef FLD
}
static int
model_crisv10_orr_w_r (SIM_CPU *current_cpu, void *sem_arg)
{
#define FLD(f) abuf->fields.sfmt_add_b_r.f
const ARGBUF * UNUSED abuf = SEM_ARGBUF ((SEM_ARG) sem_arg);
const IDESC * UNUSED idesc = abuf->idesc;
int cycles = 0;
{
int referenced = 0;
int UNUSED insn_referenced = abuf->written;
cycles += crisv10f_model_crisv10_u_exec (current_cpu, idesc, 0, referenced);
}
return cycles;
#undef FLD
}
static int
model_crisv10_orr_d_r (SIM_CPU *current_cpu, void *sem_arg)
{
#define FLD(f) abuf->fields.sfmt_add_b_r.f
const ARGBUF * UNUSED abuf = SEM_ARGBUF ((SEM_ARG) sem_arg);
const IDESC * UNUSED idesc = abuf->idesc;
int cycles = 0;
{
int referenced = 0;
int UNUSED insn_referenced = abuf->written;
cycles += crisv10f_model_crisv10_u_exec (current_cpu, idesc, 0, referenced);
}
return cycles;
#undef FLD
}
static int
model_crisv10_or_m_b_m (SIM_CPU *current_cpu, void *sem_arg)
{
#define FLD(f) abuf->fields.sfmt_add_m_b_m.f
const ARGBUF * UNUSED abuf = SEM_ARGBUF ((SEM_ARG) sem_arg);
const IDESC * UNUSED idesc = abuf->idesc;
int cycles = 0;
{
int referenced = 0;
int UNUSED insn_referenced = abuf->written;
cycles += crisv10f_model_crisv10_u_mem (current_cpu, idesc, 0, referenced);
}
{
int referenced = 0;
int UNUSED insn_referenced = abuf->written;
cycles += crisv10f_model_crisv10_u_exec (current_cpu, idesc, 1, referenced);
}
return cycles;
#undef FLD
}
static int
model_crisv10_or_m_w_m (SIM_CPU *current_cpu, void *sem_arg)
{
#define FLD(f) abuf->fields.sfmt_add_m_b_m.f
const ARGBUF * UNUSED abuf = SEM_ARGBUF ((SEM_ARG) sem_arg);
const IDESC * UNUSED idesc = abuf->idesc;
int cycles = 0;
{
int referenced = 0;
int UNUSED insn_referenced = abuf->written;
cycles += crisv10f_model_crisv10_u_mem (current_cpu, idesc, 0, referenced);
}
{
int referenced = 0;
int UNUSED insn_referenced = abuf->written;
cycles += crisv10f_model_crisv10_u_exec (current_cpu, idesc, 1, referenced);
}
return cycles;
#undef FLD
}
static int
model_crisv10_or_m_d_m (SIM_CPU *current_cpu, void *sem_arg)
{
#define FLD(f) abuf->fields.sfmt_add_m_b_m.f
const ARGBUF * UNUSED abuf = SEM_ARGBUF ((SEM_ARG) sem_arg);
const IDESC * UNUSED idesc = abuf->idesc;
int cycles = 0;
{
int referenced = 0;
int UNUSED insn_referenced = abuf->written;
cycles += crisv10f_model_crisv10_u_mem (current_cpu, idesc, 0, referenced);
}
{
int referenced = 0;
int UNUSED insn_referenced = abuf->written;
cycles += crisv10f_model_crisv10_u_exec (current_cpu, idesc, 1, referenced);
}
return cycles;
#undef FLD
}
static int
model_crisv10_orcbr (SIM_CPU *current_cpu, void *sem_arg)
{
#define FLD(f) abuf->fields.sfmt_addcbr.f
const ARGBUF * UNUSED abuf = SEM_ARGBUF ((SEM_ARG) sem_arg);
const IDESC * UNUSED idesc = abuf->idesc;
int cycles = 0;
{
int referenced = 0;
int UNUSED insn_referenced = abuf->written;
cycles += crisv10f_model_crisv10_u_const16 (current_cpu, idesc, 0, referenced);
}
{
int referenced = 0;
int UNUSED insn_referenced = abuf->written;
cycles += crisv10f_model_crisv10_u_exec (current_cpu, idesc, 1, referenced);
}
return cycles;
#undef FLD
}
static int
model_crisv10_orcwr (SIM_CPU *current_cpu, void *sem_arg)
{
#define FLD(f) abuf->fields.sfmt_addcwr.f
const ARGBUF * UNUSED abuf = SEM_ARGBUF ((SEM_ARG) sem_arg);
const IDESC * UNUSED idesc = abuf->idesc;
int cycles = 0;
{
int referenced = 0;
int UNUSED insn_referenced = abuf->written;
cycles += crisv10f_model_crisv10_u_const16 (current_cpu, idesc, 0, referenced);
}
{
int referenced = 0;
int UNUSED insn_referenced = abuf->written;
cycles += crisv10f_model_crisv10_u_exec (current_cpu, idesc, 1, referenced);
}
return cycles;
#undef FLD
}
static int
model_crisv10_orcdr (SIM_CPU *current_cpu, void *sem_arg)
{
#define FLD(f) abuf->fields.sfmt_addcdr.f
const ARGBUF * UNUSED abuf = SEM_ARGBUF ((SEM_ARG) sem_arg);
const IDESC * UNUSED idesc = abuf->idesc;
int cycles = 0;
{
int referenced = 0;
int UNUSED insn_referenced = abuf->written;
cycles += crisv10f_model_crisv10_u_const32 (current_cpu, idesc,