diff options
Diffstat (limited to 'classification_output/02/semantic/gitlab_semantic_adox')
| -rw-r--r-- | classification_output/02/semantic/gitlab_semantic_adox | 42 |
1 files changed, 42 insertions, 0 deletions
diff --git a/classification_output/02/semantic/gitlab_semantic_adox b/classification_output/02/semantic/gitlab_semantic_adox new file mode 100644 index 000000000..5ee748f82 --- /dev/null +++ b/classification_output/02/semantic/gitlab_semantic_adox @@ -0,0 +1,42 @@ +semantic: 0.990 +instruction: 0.944 +boot: 0.599 +mistranslation: 0.452 +other: 0.286 + +x86 ADOX and ADCX semantic bug +Description of problem +The result of instruction ADOX and ADCX are different from the CPU. The value of one of EFLAGS is different. + +Steps to reproduce + +Compile this code + + +void main() { + asm("push 512; popfq;"); + asm("mov rax, 0xffffffff84fdbf24"); + asm("mov rbx, 0xb197d26043bec15d"); + asm("adox eax, ebx"); +} + + + +Execute and compare the result with the CPU. This problem happens with ADCX, too (with CF). + +CPU + +OF = 0 + + +QEMU + +OF = 1 + + + + + + +Additional information +This bug is discovered by research conducted by KAIST SoftSec. |