diff options
Diffstat (limited to 'results/classifier/deepseek-2-tmp/output/mistranslation/1748296')
| -rw-r--r-- | results/classifier/deepseek-2-tmp/output/mistranslation/1748296 | 26 |
1 files changed, 0 insertions, 26 deletions
diff --git a/results/classifier/deepseek-2-tmp/output/mistranslation/1748296 b/results/classifier/deepseek-2-tmp/output/mistranslation/1748296 deleted file mode 100644 index d91d960f..00000000 --- a/results/classifier/deepseek-2-tmp/output/mistranslation/1748296 +++ /dev/null @@ -1,26 +0,0 @@ - -TCG throws Invalid Opcode when executing x86 BMI shlx instruction - -I am unable to use BMI in my project when running under TCG. I narrowed the problem down to incorrect instruction decoding for BMI instructions (which have a 2 byte VEX prefix). The gen_sse function in translate.c reaches the goto label do_0f_38_fx, but b does not equal 0x1f7, 0x2f7, or 0x3f7, so the switch takes the default path and raises an invalid opcode exception. - -The code executes correctly and passes the test under KVM. - -I have created a complete repro here: https://github.com/doug65536/qemu-bmibug - -The makefile has the following utility targets: - -debug-kvm: Build and run the VM using KVM and wait for gdbstub attach - -run: Run the test case with TCG, make fails if the test fails. (It will fail) - -run-kvm: Run the test case with KVM, make fails if the test fails. (It will succeed) - -debug: Build and run the VM with TCG and wait for GDB attach - -attach-gdb: Run GDB and attach to KVM gdbstub - -The VM runs with -cpu max. CPUID reports support for BMI, BMI2, and ABM. - -You can quickly verify the issue by executing `make run-kvm` to confirm that KVM passes, then `make run` to confirm that TCG fails. - -I believe the bug affects other BMI, BMI2, and ABM instructions, but I have only completely verified incorrect execution of SHLX. \ No newline at end of file |
