OpcodeDispatcher: optimize shld

Signed-off-by: Alyssa Rosenzweig <alyssa@rosenzweig.io>
This commit is contained in:
Alyssa Rosenzweig committed 2024-06-01 14:44:24 -04:00
1 parent 8c4860b9a7
commit 951fee361f
1 file changed
+3 -3
@@ -1578,12 +1578,12 @@ void OpDispatchBuilder::SHLDOp(OpcodeArgs) {
}
void OpDispatchBuilder::SHLDImmediateOp(OpcodeArgs) {
OrderedNode* Src = LoadSource(GPRClass, Op, Op->Src[0], Op->Flags);
OrderedNode* Dest = LoadSource(GPRClass, Op, Op->Dest, Op->Flags);
uint64_t Shift = LoadConstantShift(Op, false);
const auto Size = GetSrcBitSize(Op);
OrderedNode* Src = LoadSource(GPRClass, Op, Op->Src[0], Op->Flags, {.AllowUpperGarbage = Size >= 32});
OrderedNode* Dest = LoadSource(GPRClass, Op, Op->Dest, Op->Flags, {.AllowUpperGarbage = Size >= 32});
if (Shift != 0) {
OrderedNode* Res {};
if (Size < 32) {