summary refs log tree commit diff stats
path: root/results/classifier/118/performance/1881450
diff options
context:
space:
mode:
Diffstat (limited to 'results/classifier/118/performance/1881450')
-rw-r--r--results/classifier/118/performance/188145090
1 files changed, 90 insertions, 0 deletions
diff --git a/results/classifier/118/performance/1881450 b/results/classifier/118/performance/1881450
new file mode 100644
index 000000000..70e901e2c
--- /dev/null
+++ b/results/classifier/118/performance/1881450
@@ -0,0 +1,90 @@
+performance: 0.952
+files: 0.938
+user-level: 0.937
+graphic: 0.802
+device: 0.789
+debug: 0.775
+PID: 0.769
+permissions: 0.766
+semantic: 0.763
+boot: 0.751
+architecture: 0.746
+kernel: 0.716
+socket: 0.708
+mistranslation: 0.700
+ppc: 0.687
+register: 0.628
+vnc: 0.622
+risc-v: 0.616
+network: 0.605
+peripherals: 0.598
+assembly: 0.582
+x86: 0.576
+i386: 0.543
+arm: 0.541
+TCG: 0.535
+hypervisor: 0.534
+VMM: 0.522
+KVM: 0.473
+virtual: 0.355
+
+Emulation of a math function fails for m68k Linux user mode
+
+Please check the attached math-example.c file.
+When running the m68k executable under QEMU, it results in an "Illegal instruction" error.
+Other targets don't produce this error.
+
+Steps to reproduce the bug:
+
+1. Download the math-example.c attached file.
+2. Compile it by running:
+        m68k-linux-gnu-gcc -O2 -static math-example.c -o math-example-m68k -lm
+3. Run the executable with QEMU:
+        /build/qemu-5.0.0/build-gcc/m68k-linux-user/qemu-m68k math-example-m68k 
+
+The output of execution is:
+        Profiling function expm1f():
+        qemu: uncaught target signal 4 (Illegal instruction) - core dumped
+        Illegal instruction (core dumped)
+
+Expected output:
+        Profiling function expm1f():
+          Elapsed time: 47 ms
+          Control result: 71804.953125
+
+
+
+
+
+Tracing gives me:
+
+IN: expm1f
+0x800005cc:  fetoxm1x %fp2,%fp0
+Disassembler disagrees with translator over instruction decoding
+Please report this to <email address hidden>
+
+(gdb) x/2hx 0x800005cc
+0x800005cc:	0xf200	0x0808
+
+The instruction is not implemented in qemu. I fix that.
+
+
+
+Fix available.
+
+Execution doesn't fail anymore:
+
+  Profiling function expm1f():
+    Elapsed time: 41 ms
+    Control result: 71805.108342
+
+Control result matches real hardware one:
+
+  Profiling function expm1f():
+    Elapsed time: 2152 ms
+    Control result: 71805.108342
+
+
+Fixed here:
+https://git.qemu.org/?p=qemu.git;a=commitdiff;h=250b1da35d579f423
+