summary refs log tree commit diff stats
path: root/results/classifier/zero-shot-user-mode/instruction/1372
diff options
context:
space:
mode:
Diffstat (limited to 'results/classifier/zero-shot-user-mode/instruction/1372')
-rw-r--r--results/classifier/zero-shot-user-mode/instruction/137226
1 files changed, 26 insertions, 0 deletions
diff --git a/results/classifier/zero-shot-user-mode/instruction/1372 b/results/classifier/zero-shot-user-mode/instruction/1372
new file mode 100644
index 000000000..bb22b6c3e
--- /dev/null
+++ b/results/classifier/zero-shot-user-mode/instruction/1372
@@ -0,0 +1,26 @@
+instruction: 0.835
+runtime: 0.112
+syscall: 0.053
+
+
+
+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.