summary refs log tree commit diff stats
path: root/gitlab/issues_text/target_i386/host_missing/accel_TCG/1372
diff options
context:
space:
mode:
authorChristian Krinitsin <mail@krinitsin.com>2025-05-30 16:52:07 +0200
committerChristian Krinitsin <mail@krinitsin.com>2025-05-30 16:52:17 +0200
commit9260319e7411ff8281700a532caa436f40120ec4 (patch)
tree2f6bfe5f3458dd49d328d3a9eb508595450adec0 /gitlab/issues_text/target_i386/host_missing/accel_TCG/1372
parent225caa38269323af1bfc2daadff5ec8bd930747f (diff)
downloadqemu-analysis-9260319e7411ff8281700a532caa436f40120ec4.tar.gz
qemu-analysis-9260319e7411ff8281700a532caa436f40120ec4.zip
gitlab scraper: download in toml and text format
Diffstat (limited to 'gitlab/issues_text/target_i386/host_missing/accel_TCG/1372')
-rw-r--r--gitlab/issues_text/target_i386/host_missing/accel_TCG/137220
1 files changed, 20 insertions, 0 deletions
diff --git a/gitlab/issues_text/target_i386/host_missing/accel_TCG/1372 b/gitlab/issues_text/target_i386/host_missing/accel_TCG/1372
new file mode 100644
index 000000000..c0a7f3da2
--- /dev/null
+++ b/gitlab/issues_text/target_i386/host_missing/accel_TCG/1372
@@ -0,0 +1,20 @@
+x86 BEXTR semantic bug
+Description of problem:
+The result of instruction BEXTR is different with from the CPU. The value of destination register is different. I think QEMU does not consider the operand size limit.
+Steps to reproduce:
+1. Compile this code
+```
+void main() {
+    asm("mov rax, 0x17b3693f77fb6e9");
+    asm("mov rbx, 0x8f635a775ad3b9b4");
+    asm("mov rcx, 0xb717b75da9983018");
+    asm("bextr eax, ebx, ecx");
+}
+```
+2. Execute and compare the result with the CPU.
+    - CPU
+        - RAX = 0x5a
+    - QEMU
+        - RAX = 0x635a775a
+Additional information:
+This bug is discovered by research conducted by KAIST SoftSec.