X86: Make the cvti2f microop sign extend its integer source correctly.
The code was using the wrong bit as the sign bit. Other similar bits of code seem to be correct.
This commit is contained in:
parent
cc76842f83
commit
c4497dbf03
1 changed files with 2 additions and 1 deletions
|
@ -1294,7 +1294,8 @@ let {{
|
|||
int srcLoIndex = srcStart + (i + 0) * srcSizeBits;
|
||||
uint64_t argBits = bits(FpSrcReg1.uqw, srcHiIndex, srcLoIndex);
|
||||
|
||||
int64_t sArg = argBits | (0 - (argBits & (ULL(1) << srcHiIndex)));
|
||||
int64_t sArg = argBits |
|
||||
(0 - (argBits & (ULL(1) << (srcSizeBits - 1))));
|
||||
double arg = sArg;
|
||||
|
||||
if (destSize == 4) {
|
||||
|
|
Loading…
Reference in a new issue