qemu-devel
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[Qemu-devel] [Bug 645662] Re: Python 3.1.2 math errors with Qemu 0.12.5


From: Arno Wagner
Subject: [Qemu-devel] [Bug 645662] Re: Python 3.1.2 math errors with Qemu 0.12.5
Date: Sat, 23 Oct 2010 14:44:49 -0000

Just found time to look a bit deeper into this. The problem is in the (real) 
asinh() function. 
I think it is possible that somewhere a calculation was done in float instead 
of double or a double value was shortened to float.
Please note that until this is fixed, qemu i386 is not IEEE754 conform.

Minimal test code in c:
---
#include <stdio.h>
#include <math.h>

int main(){ /* compile with gcc -lm test.c */
  double x, y;
  x = -2.1073424255447017e-08;
  y = asinh(x);
  printf("y =         %20.16e\n",y);
  printf("should be   -2.1073424255447017e-08\n");
}

---

-- 
Python 3.1.2 math errors with Qemu 0.12.5
https://bugs.launchpad.net/bugs/645662
You received this bug notification because you are a member of qemu-
devel-ml, which is subscribed to QEMU.

Status in QEMU: New

Bug description:
When doing the regression tests for Python 3.1.2 with Qemu 0.12.5, (Linux 
version 2.6.26-2-686 (Debian 2.6.26-25lenny1)),
gcc (Debian 4.3.2-1.1) 4.3.2, Python compiled from sources within qemu,
3 math tests fail, apparently because the floating point unit is buggy. Qmeu 
was compiled from original sources
on Debian Lenny with kernel  2.6.34.6 from kernel.org, gcc  (Debian 4.3.2-1.1) 
4.3. 

Regression testing errors:

test_cmath
test test_cmath failed -- Traceback (most recent call last):
  File "/root/tools/python3/Python-3.1.2/Lib/test/test_cmath.py", line 364, in
    self.fail(error_message)
AssertionError: acos0034: acos(complex(-1.0000000000000002, 0.0))
Expected: complex(3.141592653589793, -2.1073424255447014e-08)
Received: complex(3.141592653589793, -2.1073424338879928e-08)
Received value insufficiently close to expected value.


test_float
test test_float failed -- Traceback (most recent call last):
  File "/root/tools/python3/Python-3.1.2/Lib/test/test_float.py", line 479, in
    self.assertEqual(s, repr(float(s)))
AssertionError: '8.72293771110361e+25' != '8.722937711103609e+25'


test_math
test test_math failed -- multiple errors occurred; run in verbose mode for deta

=>

runtests.sh -v test_math

le01:~/tools/python3/Python-3.1.2# ./runtests.sh -v test_math
test_math BAD
 1 BAD
 0 GOOD
 0 SKIPPED
 1 total
le01:~/tools/python3/Python-3.1.2#





reply via email to

[Prev in Thread] Current Thread [Next in Thread]