From 1c794f37b1ae8a7b7ad1e274486ab00e2273e500 Mon Sep 17 00:00:00 2001 From: Brian Fiete Date: Thu, 25 Aug 2022 10:19:16 -0700 Subject: [PATCH] Disable RAX for result of int8 modulo --- IDEHelper/Backend/BeMCContext.cpp | 1 + 1 file changed, 1 insertion(+) diff --git a/IDEHelper/Backend/BeMCContext.cpp b/IDEHelper/Backend/BeMCContext.cpp index ed5166b3..e45767c0 100644 --- a/IDEHelper/Backend/BeMCContext.cpp +++ b/IDEHelper/Backend/BeMCContext.cpp @@ -10088,6 +10088,7 @@ bool BeMCContext::DoLegalization() mcRemaindier = BeMCOperand::FromReg(ResizeRegister(X64Reg_AL, arg0Type)); preserveRAXInst->mArg1 = inst->mArg0; // RAX preserve elision exception DisableRegister(inst->mArg0, X64Reg_SIL); // Disable Hi8 + DisableRegister(inst->mArg0, X64Reg_RAX); AllocInst(BeMCInstKind_Shr, BeMCOperand::FromReg(X64Reg_AX), BeMCOperand::FromImmediate(8), instIdx++ + 1); AllocInst(BeMCInstKind_Mov, inst->mArg0, mcRemaindier, instIdx++ + 1); }