DSPJIT: the shift value must still be loaded into the correct register
Fixes issue 6295
This commit is contained in:
parent
f348712d3a
commit
82cd91e944
|
@ -1563,6 +1563,7 @@ void DSPEmitter::lsrn(const UDSPInstruction opc)
|
||||||
FixupBranch noShift = J_CC(CC_Z);
|
FixupBranch noShift = J_CC(CC_Z);
|
||||||
//CL gets automatically masked with 0x3f on IA32/AMD64
|
//CL gets automatically masked with 0x3f on IA32/AMD64
|
||||||
//MOVZX(64, 16, RCX, R(RAX));
|
//MOVZX(64, 16, RCX, R(RAX));
|
||||||
|
MOV(64, R(RCX), R(RAX));
|
||||||
//AND(16, R(RCX), Imm16(0x3f));
|
//AND(16, R(RCX), Imm16(0x3f));
|
||||||
TEST(16, R(RAX), Imm16(0x40));
|
TEST(16, R(RAX), Imm16(0x40));
|
||||||
FixupBranch shiftLeft = J_CC(CC_Z);
|
FixupBranch shiftLeft = J_CC(CC_Z);
|
||||||
|
|
Loading…
Reference in New Issue