Преглед изворни кода

Remove broken adds/cmn with condition check optimization (#218)

gdkchan пре 7 година
родитељ
комит
c99b2884e4
2 измењених фајлова са 0 додато и 7 уклоњено
  1. 0 2
      ChocolArm64/Instruction/AInstEmitAlu.cs
  2. 0 5
      ChocolArm64/Translation/AILEmitterCtx.cs

+ 0 - 2
ChocolArm64/Instruction/AInstEmitAlu.cs

@@ -50,8 +50,6 @@ namespace ChocolArm64.Instruction
 
         public static void Adds(AILEmitterCtx Context)
         {
-            Context.TryOptMarkCondWithoutCmp();
-
             EmitDataLoadOpers(Context);
 
             Context.Emit(OpCodes.Add);

+ 0 - 5
ChocolArm64/Translation/AILEmitterCtx.cs

@@ -187,11 +187,6 @@ namespace ChocolArm64.Translation
                 Ldloc(Tmp3Index, AIoType.Int, OptOpLastCompare.RegisterSize);
                 Ldloc(Tmp4Index, AIoType.Int, OptOpLastCompare.RegisterSize);
 
-                if (OptOpLastCompare.Emitter == AInstEmit.Adds)
-                {
-                    Emit(OpCodes.Neg);
-                }
-
                 ILOp = BranchOps[Cond];
             }
             else if (IntCond < 14)