sim: added cmds
[calu.git] / 3c_disasm / instr / subi.cpp
index 90bdd5f95e72df6444b1783de2f58f30801709c4..69ba7e1029526eb08dcfceb9f0ca05479ebf7416 100644 (file)
@@ -62,9 +62,10 @@ void Csubi::evalInstr()
 void Csubi::execInstr()
 {
        //cout << "should exec " << this->toString() << endl;
-       CDat reg = this->m_cpu->getRegister(m_ra) - this->m_imm;
+       CDat ra = this->m_cpu->getRegister(m_ra);
+       CDatd reg = ra - this->m_imm;
        this->m_cpu->setRegister(m_rd, reg);
-       this->m_cpu->updateFlags(reg);
+       this->m_cpu->updateFlags(reg, ra, this->m_imm);
 }
 
 std::string Csubi::toString()