SSE CMP ops with 8bit immediate throw sigill with oversized byte
Bug #1832422 reported by
FEX-Emu
This bug affects 1 person
Affects | Status | Importance | Assigned to | Milestone | |
---|---|---|---|---|---|
QEMU |
Expired
|
Undecided
|
Unassigned |
Bug Description
The SSE comparison ops that use an 8bit immediate as a comparison type selector throws a sigill when the immediate is oversized.
Test op that I found this on is here `66 0f c2 c0 d1 cmppd xmm0,xmm0,0xd1`
According to the x86-64 documentation only bits [2:0] are used for these ops (and [4:0] for the AVX variant)
Currently qemu just checks if the value is >=8 and will throw a sigill in that case. It instead needs to mask.
I have a small patch that fixes the issue for the SSE variant.
To post a comment you must log in.
This is an automated cleanup. This bug report has been moved to QEMU's
new bug tracker on gitlab.com and thus gets marked as 'expired' now.
Please continue with the discussion here:
https:/ /gitlab. com/qemu- project/ qemu/-/ issues/ 184