aboutsummaryrefslogtreecommitdiff
path: root/qtmips_machine/core.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'qtmips_machine/core.cpp')
-rw-r--r--qtmips_machine/core.cpp8
1 files changed, 5 insertions, 3 deletions
diff --git a/qtmips_machine/core.cpp b/qtmips_machine/core.cpp
index 4edf35a..c6093dd 100644
--- a/qtmips_machine/core.cpp
+++ b/qtmips_machine/core.cpp
@@ -73,9 +73,11 @@ struct Core::dtFetch Core::fetch() {
struct Core::dtDecode Core::decode(const struct dtFetch &dt) {
uint8_t rwrite;
emit instruction_decoded(dt.inst);
- enum InstructionFlags flags = dt.inst.flags();
- enum AluOp alu_op = dt.inst.alu_op();
- enum AccessControl mem_ctl = dt.inst.mem_ctl();
+ enum InstructionFlags flags;
+ enum AluOp alu_op;
+ enum AccessControl mem_ctl;
+
+ dt.inst.flags_alu_op_mem_ctl(flags, alu_op, mem_ctl);
if (!(flags & IMF_SUPPORTED))
throw QTMIPS_EXCEPTION(UnsupportedInstruction, "Instruction with following opcode is not supported", QString::number(dt.inst.opcode(), 16));