mirror of
https://github.com/FEX-Emu/FEX.git
synced 2026-10-06 16:00:18 +02:00
OpcodeDispatcher: mask certain divisors
needed for fusing. Signed-off-by: Alyssa Rosenzweig <alyssa@rosenzweig.io>
This commit is contained in:
1 parent
af23f4325f
commit
de4becc26e
1 file changed
+3
-3
@@ -3582,12 +3582,12 @@ void OpDispatchBuilder::NEGOp(OpcodeArgs) {
|
||||
}
|
||||
|
||||
void OpDispatchBuilder::DIVOp(OpcodeArgs) {
|
||||
// This loads the divisor
|
||||
Ref Divisor = LoadSource(GPRClass, Op, Op->Dest, Op->Flags);
|
||||
|
||||
const auto GPRSize = CTX->GetGPROpSize();
|
||||
auto Size = OpSizeFromSrc(Op);
|
||||
|
||||
// This loads the divisor. 32-bit/64-bit paths mask inside the JIT, 8/16 do not.
|
||||
Ref Divisor = LoadSource(GPRClass, Op, Op->Dest, Op->Flags, {.AllowUpperGarbage = Size >= OpSize::i32Bit});
|
||||
|
||||
if (Size == OpSize::i64Bit && !CTX->Config.Is64BitMode) {
|
||||
LogMan::Msg::EFmt("Doesn't exist in 32bit mode");
|
||||
DecodeFailure = true;
|
||||
|
||||
Reference in new issue
Block a user