blob: 0b046daf72b80920db7773ae83e44105180abea6 [file] [log] [blame]
// This file define the kelvin isa for mpact-sim. For more info on mpact-sim isa
// format, check: go/mpact-sim-codelabs-riscv-instruction-decoder
// First disasm field is 18 char wide and left justified.
disasm widths = {-18};
int global_latency = 0;
isa Kelvin {
namespace kelvin::sim::isa32;
slots { kelvin; }
}
#include "sim/kelvin_base.isa"
#include "sim/kelvin_arith.isa"
#include "sim/kelvin_shift.isa"
#include "sim/kelvin_memory.isa"
#include "sim/kelvin_mul.isa"
// Combining all kelvin instruction sets.
slot kelvin : riscv32i, riscv32m, zicsr, zfencei, privileged, kelvin_arith,
kelvin_conv, kelvin_log, kelvin_memory, kelvin_mul, kelvin_shift,
kelvin_vector_memory {
includes {
#include "sim/kelvin_instructions.h"
}
default opcode =
disasm: "Illegal instruction at 0x%(@:08x)",
semfunc: "&KelvinIllegalInstruction";
}