mirror of
https://github.com/asmjit/asmjit.git
synced 2025-12-17 04:24:37 +03:00
[BUG] Fixed a FPU bug (kX86InstEncodingIdFpuArith) introduced by bf8bba5bba
[BUG] Fixed blend_bench tool
This commit is contained in:
@@ -2142,7 +2142,6 @@ _GroupPop_Gp:
|
|||||||
if (encoded == ENC_OPS(Reg, Reg, None)) {
|
if (encoded == ENC_OPS(Reg, Reg, None)) {
|
||||||
opReg = x86OpReg(o0);
|
opReg = x86OpReg(o0);
|
||||||
rmReg = x86OpReg(o1);
|
rmReg = x86OpReg(o1);
|
||||||
rmReg += opReg;
|
|
||||||
|
|
||||||
// We switch to the alternative opcode if the first operand is zero.
|
// We switch to the alternative opcode if the first operand is zero.
|
||||||
if (opReg == 0) {
|
if (opReg == 0) {
|
||||||
@@ -2151,6 +2150,7 @@ _EmitFpArith_Reg:
|
|||||||
goto _EmitFpuOp;
|
goto _EmitFpuOp;
|
||||||
}
|
}
|
||||||
else if (rmReg == 0) {
|
else if (rmReg == 0) {
|
||||||
|
rmReg = opReg;
|
||||||
opCode = 0xDC00 + ((opCode >> 0) & 0xFF) + static_cast<uint32_t>(rmReg);
|
opCode = 0xDC00 + ((opCode >> 0) & 0xFF) + static_cast<uint32_t>(rmReg);
|
||||||
goto _EmitFpuOp;
|
goto _EmitFpuOp;
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -106,6 +106,8 @@ int main(int argc, char* argv[]) {
|
|||||||
|
|
||||||
void* p = a.make();
|
void* p = a.make();
|
||||||
runtime.release(p);
|
runtime.release(p);
|
||||||
|
|
||||||
|
a.reset();
|
||||||
}
|
}
|
||||||
perf.end();
|
perf.end();
|
||||||
}
|
}
|
||||||
|
|||||||
Reference in New Issue
Block a user