AInstEmitAluHelper: Simplify EmitAddsVCheck (#14)

This commit is contained in:
Merry 2018-02-14 22:01:36 +00:00 committed by gdkchan
parent 7791e1fe36
commit 7c4346685c

View file

@ -21,22 +21,13 @@ namespace ChocolArm64.Instruction
public static void EmitAddsVCheck(AILEmitterCtx Context) public static void EmitAddsVCheck(AILEmitterCtx Context)
{ {
//V = (Rd ^ Rn) & (Rd ^ Rm) & ~(Rn ^ Rm) < 0 //V = (Rd ^ Rn) & ~(Rn ^ Rm) < 0
Context.EmitSttmp(); Context.Emit(OpCodes.Dup);
Context.EmitLdtmp();
Context.EmitLdtmp();
EmitDataLoadRn(Context); EmitDataLoadRn(Context);
Context.Emit(OpCodes.Xor); Context.Emit(OpCodes.Xor);
Context.EmitLdtmp();
EmitDataLoadOper2(Context);
Context.Emit(OpCodes.Xor);
Context.Emit(OpCodes.And);
EmitDataLoadOpers(Context); EmitDataLoadOpers(Context);
Context.Emit(OpCodes.Xor); Context.Emit(OpCodes.Xor);