X86: Fix the sra microop to get the sign bit from the right operand.
--HG-- extra : convert_revision : 71e58dd6dd6918ee403f2e332c47e29acdace464
This commit is contained in:
parent
c1a776de8a
commit
f67cd04673
1 changed files with 1 additions and 1 deletions
|
@ -590,7 +590,7 @@ let {{
|
|||
// is not defined in the C/C++ standard, we have to sign extend
|
||||
// them manually to be sure.
|
||||
uint64_t arithMask =
|
||||
-bits(op2, dataSize * 8 - 1) << (dataSize * 8 - shiftAmt);
|
||||
-bits(psrc1, dataSize * 8 - 1) << (dataSize * 8 - shiftAmt);
|
||||
DestReg = merge(DestReg, (psrc1 >> shiftAmt) | arithMask, dataSize);
|
||||
''')
|
||||
defineMicroRegOp('Ror', '''
|
||||
|
|
Loading…
Reference in a new issue