sarah-walker-pcem/pcem

MMX recompiler bug on ARM64

Opened this issue · 0 comments

Describe the bug
On ARM64, for the PACKUSWB opcode, the recompiler erroneously uses the UQXTN opcode to emulate it, instead of the more correct SQXTUN. SQXTUN takes signed integers as input like PACKUSWB, whereas UQXTN is unsigned the whole time.
https://github.com/sarah-walker-pcem/pcem/blob/dev/src/codegen/arm64/codegen_backend_arm64_uops.c#L1585