Only throw undefined instruction exception at execution, not at translation stage

This commit is contained in:
gdkchan 2018-02-10 14:20:46 -03:00
parent 9f612682e0
commit 55743c0cba
28 changed files with 94 additions and 43 deletions

View file

@ -42,23 +42,23 @@ namespace ChocolArm64.State
public long CntpctEl0 => Environment.TickCount * TicksPerMS;
public event EventHandler<AExceptionEventArgs> Break;
public event EventHandler<AExceptionEventArgs> SvcCall;
public event EventHandler<EventArgs> Undefined;
public event EventHandler<AInstExceptEventArgs> Break;
public event EventHandler<AInstExceptEventArgs> SvcCall;
public event EventHandler<AInstUndEventArgs> Undefined;
public void OnBreak(int Imm)
{
Break?.Invoke(this, new AExceptionEventArgs(Imm));
Break?.Invoke(this, new AInstExceptEventArgs(Imm));
}
public void OnSvcCall(int Imm)
{
SvcCall?.Invoke(this, new AExceptionEventArgs(Imm));
SvcCall?.Invoke(this, new AInstExceptEventArgs(Imm));
}
public void OnUndefined()
public void OnUndefined(long Position, int RawOpCode)
{
Undefined?.Invoke(this, EventArgs.Empty);
Undefined?.Invoke(this, new AInstUndEventArgs(Position, RawOpCode));
}
}
}