Просмотр исходного кода

AInstEmitAluHelper: Simplify EmitSubsCCheck (#15)

Merry 8 лет назад
Родитель
Сommit
7791e1fe36
1 измененных файлов с 3 добавлено и 7 удалено
  1. 3 7
      Ryujinx/Cpu/Instruction/AInstEmitAluHelper.cs

+ 3 - 7
Ryujinx/Cpu/Instruction/AInstEmitAluHelper.cs

@@ -52,15 +52,11 @@ namespace ChocolArm64.Instruction
 
 
         public static void EmitSubsCCheck(AILEmitterCtx Context)
         public static void EmitSubsCCheck(AILEmitterCtx Context)
         {
         {
-            //C = Rn == Rm || Rn > Rm
+            //C = Rn == Rm || Rn > Rm = !(Rn < Rm)
             EmitDataLoadOpers(Context);
             EmitDataLoadOpers(Context);
 
 
-            Context.Emit(OpCodes.Ceq);
-
-            EmitDataLoadOpers(Context);
-
-            Context.Emit(OpCodes.Cgt_Un);
-            Context.Emit(OpCodes.Or);
+            Context.Emit(OpCodes.Clt_Un);
+            Context.Emit(OpCodes.Not);
 
 
             Context.EmitStflg((int)APState.CBit);
             Context.EmitStflg((int)APState.CBit);
         }
         }