summary refs log tree commit diff stats
path: root/results/classifier/phi4:14b/output/instruction/1245543
diff options
context:
space:
mode:
authorChristian Krinitsin <mail@krinitsin.com>2025-07-07 17:18:14 +0000
committerChristian Krinitsin <mail@krinitsin.com>2025-07-07 17:18:14 +0000
commit61361f925d4914a6608a0076e64cc2399311ed5f (patch)
tree6f717c2ff0b11d7493e60da9757818d119cfb541 /results/classifier/phi4:14b/output/instruction/1245543
parent238ec2b7cc1557d6f34c33cc482e4d0cd3e266dd (diff)
downloademulator-bug-study-61361f925d4914a6608a0076e64cc2399311ed5f.tar.gz
emulator-bug-study-61361f925d4914a6608a0076e64cc2399311ed5f.zip
add new results
Diffstat (limited to 'results/classifier/phi4:14b/output/instruction/1245543')
-rw-r--r--results/classifier/phi4:14b/output/instruction/124554326
1 files changed, 26 insertions, 0 deletions
diff --git a/results/classifier/phi4:14b/output/instruction/1245543 b/results/classifier/phi4:14b/output/instruction/1245543
new file mode 100644
index 00000000..6ca865d9
--- /dev/null
+++ b/results/classifier/phi4:14b/output/instruction/1245543
@@ -0,0 +1,26 @@
+
+
+
+Wrong implementation of SSE4.1 pmovzxbw and similar instructions
+
+QEMU 1.5.0 (and git version, as far as I can tell from the source code) has incorrect implementation of pmovzxbw and similar SSE4.1 instructions. The instruction zero-extends the first 8 8-bit elements of a vector to 16bit vector and puts them to another vector. The current implementation applies this operation only to the first element and zeros out the rest.
+
+To verify, compile the attached program for SSE4.1 (g++ -msse4.1 cvtint.cc). On real hardware, it produces the following output:
+
+$ ./a.out
+1 0 2 0 3 0 4 0 5 0 6 0 7 0 8 0
+
+On QEMU, the output is as follows:
+
+$ ./a.out
+1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
+
+QEMU is invoked as:
+
+qemu-system-x86_64 \
+    -M pc -cpu Haswell,+sse4.1,+avx,+avx2,+fma,enforce -m 512 \
+    -serial stdio -no-reboot \
+    -kernel vmlinuz -initrd initrd.img \
+    -netdev user,id=user.0 -device rtl8139,netdev=user.0  -redir tcp:2222::22 \
+    -hda ubuntu-amd64.ext3 \
+    --append "rw console=tty root=/dev/sda"
\ No newline at end of file