diff --git a/FEXCore/Source/Interface/Core/JIT/MiscOps.cpp b/FEXCore/Source/Interface/Core/JIT/MiscOps.cpp index aeae4d507..6c2b3499a 100644 --- a/FEXCore/Source/Interface/Core/JIT/MiscOps.cpp +++ b/FEXCore/Source/Interface/Core/JIT/MiscOps.cpp @@ -168,7 +168,7 @@ DEF_OP(PushRoundingMode) { } else { LOGMAN_THROW_A_FMT(Op->RoundMode == 1 || Op->RoundMode == 2, "expect a valid round mode"); - and_(ARMEmitter::Size::i64Bit, TMP1, Dest, ~(Op->RoundMode << 22)); + and_(ARMEmitter::Size::i64Bit, TMP1, Dest, ~(3 << 22)); orr(ARMEmitter::Size::i64Bit, TMP1, TMP1, (Op->RoundMode == 2 ? 1 : 2) << 22); } diff --git a/unittests/InstructionCountCI/AVX128/VEX_map3.json b/unittests/InstructionCountCI/AVX128/VEX_map3.json index 5a8ef5dc0..45041726d 100644 --- a/unittests/InstructionCountCI/AVX128/VEX_map3.json +++ b/unittests/InstructionCountCI/AVX128/VEX_map3.json @@ -2101,7 +2101,7 @@ ], "ExpectedArm64ASM": [ "mrs x20, fpcr", - "and x0, x20, #0xffffffffffbfffff", + "and x0, x20, #0xffffffffff3fffff", "orr x0, x0, #0x800000", "msr fpcr, x0", "fcvtn v16.4h, v17.4s", @@ -2117,7 +2117,7 @@ ], "ExpectedArm64ASM": [ "mrs x20, fpcr", - "and x0, x20, #0xffffffffff7fffff", + "and x0, x20, #0xffffffffff3fffff", "orr x0, x0, #0x400000", "msr fpcr, x0", "fcvtn v16.4h, v17.4s", @@ -2179,7 +2179,7 @@ "ExpectedArm64ASM": [ "ldr q2, [x28, #208]", "mrs x20, fpcr", - "and x0, x20, #0xffffffffffbfffff", + "and x0, x20, #0xffffffffff3fffff", "orr x0, x0, #0x800000", "msr fpcr, x0", "fcvtn v3.4h, v17.4s", @@ -2199,7 +2199,7 @@ "ExpectedArm64ASM": [ "ldr q2, [x28, #208]", "mrs x20, fpcr", - "and x0, x20, #0xffffffffff7fffff", + "and x0, x20, #0xffffffffff3fffff", "orr x0, x0, #0x400000", "msr fpcr, x0", "fcvtn v3.4h, v17.4s", diff --git a/unittests/InstructionCountCI/VEX_map3.json b/unittests/InstructionCountCI/VEX_map3.json index d7d8aa2c3..43d0e63c1 100644 --- a/unittests/InstructionCountCI/VEX_map3.json +++ b/unittests/InstructionCountCI/VEX_map3.json @@ -2592,7 +2592,7 @@ ], "ExpectedArm64ASM": [ "mrs x20, fpcr", - "and x0, x20, #0xffffffffffbfffff", + "and x0, x20, #0xffffffffff3fffff", "orr x0, x0, #0x800000", "msr fpcr, x0", "fcvtn v16.4h, v17.4s", @@ -2607,7 +2607,7 @@ ], "ExpectedArm64ASM": [ "mrs x20, fpcr", - "and x0, x20, #0xffffffffff7fffff", + "and x0, x20, #0xffffffffff3fffff", "orr x0, x0, #0x400000", "msr fpcr, x0", "fcvtn v16.4h, v17.4s", @@ -2662,7 +2662,7 @@ ], "ExpectedArm64ASM": [ "mrs x20, fpcr", - "and x0, x20, #0xffffffffffbfffff", + "and x0, x20, #0xffffffffff3fffff", "orr x0, x0, #0x800000", "msr fpcr, x0", "fcvtnt z2.h, p7/m, z17.s", @@ -2679,7 +2679,7 @@ ], "ExpectedArm64ASM": [ "mrs x20, fpcr", - "and x0, x20, #0xffffffffff7fffff", + "and x0, x20, #0xffffffffff3fffff", "orr x0, x0, #0x400000", "msr fpcr, x0", "fcvtnt z2.h, p7/m, z17.s",