/// <summary> /// Generates an RTL Return instruction with a delay slot. /// </summary> /// <param name="returnAddressBytes">How large the return address is on the stack.</param> /// <param name="extraBytesPopped">Some architectures (like x86) pop the caller's extra /// bytes off the stack.</param> /// <returns>A reference to this RtlEmitter.</returns> public RtlEmitter ReturnD( int returnAddressBytes, int extraBytesPopped) { var ret = new RtlReturn(returnAddressBytes, extraBytesPopped, InstrClass.Transfer | InstrClass.Delay); Instructions.Add(ret); return(this); }
public bool VisitReturn(RtlReturn ret) { return(pattern is RtlReturn); }