mirror of
https://git.suyu.dev/suyu/dynarmic.git
synced 2026-03-08 06:06:29 +00:00
system: Raise exception for YIELD, WFE, WFI, SEV, SEVL
This commit is contained in:
@@ -16,9 +16,7 @@ bool TranslatorVisitor::InterpretThisInstruction() {
|
||||
}
|
||||
|
||||
bool TranslatorVisitor::UnpredictableInstruction() {
|
||||
ir.ExceptionRaised(Exception::UnpredictableInstruction);
|
||||
ir.SetTerm(IR::Term::CheckHalt{IR::Term::ReturnToDispatch{}});
|
||||
return false;
|
||||
return RaiseException(Exception::UnpredictableInstruction);
|
||||
}
|
||||
|
||||
bool TranslatorVisitor::DecodeError() {
|
||||
@@ -27,13 +25,15 @@ bool TranslatorVisitor::DecodeError() {
|
||||
}
|
||||
|
||||
bool TranslatorVisitor::ReservedValue() {
|
||||
ir.ExceptionRaised(Exception::ReservedValue);
|
||||
ir.SetTerm(IR::Term::CheckHalt{IR::Term::ReturnToDispatch{}});
|
||||
return false;
|
||||
return RaiseException(Exception::ReservedValue);
|
||||
}
|
||||
|
||||
bool TranslatorVisitor::UnallocatedEncoding() {
|
||||
ir.ExceptionRaised(Exception::UnallocatedEncoding);
|
||||
return RaiseException(Exception::UnallocatedEncoding);
|
||||
}
|
||||
|
||||
bool TranslatorVisitor::RaiseException(Exception exception) {
|
||||
ir.ExceptionRaised(exception);
|
||||
ir.SetTerm(IR::Term::CheckHalt{IR::Term::ReturnToDispatch{}});
|
||||
return false;
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user