Explorar o código

[CPU] Fix CBZ/CBNZ with 32 bits operands

gdkchan %!s(int64=8) %!d(string=hai) anos
pai
achega
980691f36b
Modificáronse 1 ficheiros con 5 adicións e 0 borrados
  1. 5 0
      ChocolArm64/Decoder/AOpCodeBImmCmp.cs

+ 5 - 0
ChocolArm64/Decoder/AOpCodeBImmCmp.cs

@@ -1,4 +1,5 @@
 using ChocolArm64.Instruction;
 using ChocolArm64.Instruction;
+using ChocolArm64.State;
 
 
 namespace ChocolArm64.Decoder
 namespace ChocolArm64.Decoder
 {
 {
@@ -11,6 +12,10 @@ namespace ChocolArm64.Decoder
             Rt = OpCode & 0x1f;
             Rt = OpCode & 0x1f;
 
 
             Imm = Position + ADecoderHelper.DecodeImmS19_2(OpCode);
             Imm = Position + ADecoderHelper.DecodeImmS19_2(OpCode);
+
+            RegisterSize = (OpCode >> 31) != 0
+                ? ARegisterSize.Int64
+                : ARegisterSize.Int32;
         }
         }
     }
     }
 }
 }