This is the mail archive of the libc-alpha@sourceware.org mailing list for the glibc project.
| Index Nav: | [Date Index] [Subject Index] [Author Index] [Thread Index] | |
|---|---|---|
| Message Nav: | [Date Prev] [Date Next] | [Thread Prev] [Thread Next] |
| Other format: | [Raw text] | |
Hi Nobuhiro!
On Thu, 05 Apr 2012 12:09:12 +0900 (JST), Kaz Kojima <kkojima@rr.iij4u.or.jp> wrote:
> I've just applied your patches:
>
> http://sourceware.org/ml/libc-alpha/2012-04/msg00162.html
> http://sourceware.org/ml/libc-alpha/2012-04/msg00165.html
> http://sourceware.org/ml/libc-alpha/2012-04/msg00164.html
> http://sourceware.org/ml/libc-alpha/2012-04/msg00163.html
>
> Thank you for patches and your patience!
With these patches applied, while there is also some improvement visible
in the test results, I'm seeing a lot more failures in the math/*
testsuites than without them. I just re-confirmed this in the current
source tree with the patches reverted. As I have no knowledge about math
exception handling but you evidently do -- would it be possible for you
to review that situation?
For example, diff of current source tree vs. current source tree with
these four patches reverted:
math/test-fenv.out:
Test: Initially all exceptions should be cleared
Pass: Exception "DIVBYZERO" is not set
Pass: Exception "INVALID" is not set
Pass: Exception "INEXACT" is not set
Pass: Exception "UNDERFLOW" is not set
Pass: Exception "OVERFLOW" is not set
Test: Rounding direction should be initalized to nearest
Pass: Rounding mode is TONEAREST.
Test: feclearexcept (FE_ALL_EXCEPT) clears all exceptions
Pass: Exception "DIVBYZERO" is not set
Pass: Exception "INVALID" is not set
Pass: Exception "INEXACT" is not set
Pass: Exception "UNDERFLOW" is not set
Pass: Exception "OVERFLOW" is not set
Test: feraiseexcept (FE_ALL_EXCEPT) raises all exceptions
- Fail: Exception "DIVBYZERO" is not set
- Fail: Exception "INVALID" is not set
- Fail: Exception "INEXACT" is not set
- Fail: Exception "UNDERFLOW" is not set
- Fail: Exception "OVERFLOW" is not set
+ Pass: Exception "DIVBYZERO" is set
+ Pass: Exception "INVALID" is set
+ Pass: Exception "INEXACT" is set
+ Pass: Exception "UNDERFLOW" is set
+ Pass: Exception "OVERFLOW" is set
Test: Set/Clear FE_DIVBYZERO: set flag, with rest not set
- Fail: Exception "DIVBYZERO" is not set
+ Pass: Exception "DIVBYZERO" is set
Pass: Exception "INVALID" is not set
Pass: Exception "INEXACT" is not set
Pass: Exception "UNDERFLOW" is not set
Pass: Exception "OVERFLOW" is not set
Test: Set/Clear FE_DIVBYZERO: clear flag, rest also unset
Pass: Exception "DIVBYZERO" is not set
Pass: Exception "INVALID" is not set
Pass: Exception "INEXACT" is not set
Pass: Exception "UNDERFLOW" is not set
Pass: Exception "OVERFLOW" is not set
Test: Set/Clear FE_DIVBYZERO: set flag, with rest set
- Fail: Exception "DIVBYZERO" is not set
- Fail: Exception "INVALID" is not set
- Fail: Exception "INEXACT" is not set
- Fail: Exception "UNDERFLOW" is not set
- Fail: Exception "OVERFLOW" is not set
+ Pass: Exception "DIVBYZERO" is set
+ Pass: Exception "INVALID" is set
+ Pass: Exception "INEXACT" is set
+ Pass: Exception "UNDERFLOW" is set
+ Pass: Exception "OVERFLOW" is set
[...]
Test: feholdexcept_tests FE_INEXACT test
Pass: Exception "DIVBYZERO" is not set
Pass: Exception "INVALID" is not set
- Fail: Exception "INEXACT" is not set
+ Pass: Exception "INEXACT" is set
Pass: Exception "UNDERFLOW" is not set
Pass: Exception "OVERFLOW" is not set
+feupdateenv failed: 1
+feupdateenv didn't restore rounding mode: 0
Test: feholdexcept_tests FE_INEXACT|FE_INVALID test
Pass: Exception "DIVBYZERO" is not set
- Pass: Exception "INVALID" is set
- Fail: Exception "INEXACT" is not set
+ Fail: Exception "INVALID" is not set
+ Pass: Exception "INEXACT" is set
Pass: Exception "UNDERFLOW" is not set
Pass: Exception "OVERFLOW" is not set
-61 errors occurred.
+14 errors occurred.
math/bug-nextafter.out:
nextafterf+ did not overflow
nextafterf- did not overflow
nextafterf+ did not underflow
nextafterf- did not underflow
nextafterf+ did not underflow
nextafterf+ did not underflow
nextafterf- did not underflow
nextafterf- did not underflow
-nextafter+ failed
-nextafter+ did not overflow
-nextafter failed
-nextafter- did not overflow
-nextafter+ did not underflow
-nextafter- did not underflow
math/bug-nexttoward.out:
nexttowardf+ did not overflow
nexttowardf- did not overflow
nexttowardf+ did not underflow
nexttowardf- did not underflow
nexttowardf+ did not underflow
nexttowardf+ did not underflow
nexttowardf- did not underflow
nexttowardf- did not underflow
-nexttoward+ failed
-nexttoward+ did not overflow
-nexttoward- failed
-nexttoward- did not overflow
-nexttoward+ did not underflow
-nexttoward- did not underflow
math/test-float.out:
-testing float (without inline functions)
-Failure: acos (inf) == NaN plus invalid exception: Exception "Invalid operation" not set
-Failure: acos (-inf) == NaN plus invalid exception: Exception "Invalid operation" not set
-Failure: acos (1.125) == NaN plus invalid exception: Exception "Invalid operation" not set
-Failure: acos (-1.125) == NaN plus invalid exception: Exception "Invalid operation" not set
[...]
-Test suite completed:
- 3832 test cases plus 3388 tests for exception flags executed.
- 520 errors occurred.
Similar for math/test-double.out, math/test-ifloat.out, and
math/test-idouble.out -- though a lot of these may be due to deficient
ULP information, which is another topic that I (or someone else, of
course) should have a look at (and that I have no experience with).
GrÃÃe,
Thomas
Attachment:
pgp00000.pgp
Description: PGP signature
| Index Nav: | [Date Index] [Subject Index] [Author Index] [Thread Index] | |
|---|---|---|
| Message Nav: | [Date Prev] [Date Next] | [Thread Prev] [Thread Next] |