diff options
| author | Christian Krinitsin <mail@krinitsin.com> | 2025-07-03 19:39:53 +0200 |
|---|---|---|
| committer | Christian Krinitsin <mail@krinitsin.com> | 2025-07-03 19:39:53 +0200 |
| commit | dee4dcba78baf712cab403d47d9db319ab7f95d6 (patch) | |
| tree | 418478faf06786701a56268672f73d6b0b4eb239 /results/classifier/semantic-bugs/instruction/2318 | |
| parent | 4d9e26c0333abd39bdbd039dcdb30ed429c475ba (diff) | |
| download | emulator-bug-study-dee4dcba78baf712cab403d47d9db319ab7f95d6.tar.gz emulator-bug-study-dee4dcba78baf712cab403d47d9db319ab7f95d6.zip | |
restructure results
Diffstat (limited to 'results/classifier/semantic-bugs/instruction/2318')
| -rw-r--r-- | results/classifier/semantic-bugs/instruction/2318 | 47 |
1 files changed, 0 insertions, 47 deletions
diff --git a/results/classifier/semantic-bugs/instruction/2318 b/results/classifier/semantic-bugs/instruction/2318 deleted file mode 100644 index 3defce0d..00000000 --- a/results/classifier/semantic-bugs/instruction/2318 +++ /dev/null @@ -1,47 +0,0 @@ -instruction: 0.871 -device: 0.679 -graphic: 0.495 -assembly: 0.485 -vnc: 0.479 -semantic: 0.460 -boot: 0.291 -socket: 0.281 -network: 0.239 -other: 0.133 -mistranslation: 0.100 -KVM: 0.006 - -SH4: SUBV instruction not emulated properly -Description of problem: -SUBV opcode is emulated incorrectly. - -The documentation says: - -`SUBV Rm, Rn Rn - Rm -> Rn, underflow -> T` - -Qemu seems to perform the subtraction correctly, but will not detect an underflow. -Steps to reproduce: -```c -#include <stdio.h> - -int main(void) -{ - register unsigned int a asm("r8") = 0x80000001; - register unsigned int b asm("r9") = 0x2; - register unsigned int c asm("r10"); - - asm volatile("subv %2,%0\n" - "movt %1\n" - : "+r"(a), "=r"(c) : "r"(b) :); - - printf("Values: a=0x%x b=0x%x c=0x%x\n", a, b, c); - - return 0; -} -``` -Additional information: -Tested on real hardware (SEGA Dreamcast, GCC 15.0), the program above prints: -`Values: a=0x7fffffff b=0x2 c=0x1` - -Running with Qemu (and GCC 13.0), the same program prints: -`Values: a=0x7fffffff b=0x2 c=0x0` |