From: Alastair B. <lis...@us...> - 2010-05-24 02:23:24
|
Update of /cvsroot/sbcl/sbcl/tests In directory sfp-cvsdas-3.v30.ch3.sourceforge.com:/tmp/cvs-serv11020/tests Modified Files: float.pure.lisp Log Message: 1.0.38.12: Fix FP traps on PPC/Linux. * Linux on most platforms, including PPC, kicks off its signal handlers with a cleared FP control word. We already have a hook to deal with this, so enable it. * The implementation of said hook on PPC/Linux was broken, largely due to a variable-size mismatch in a KLUDGE it uses. Fixed and documented the KLUDGE, added support for preserving the current rounding mode, and enabled the actual restoration of the FP control word. * NetBSD isn't the only target which requires :INVALID exceptions to be disabled, it also matters on PPC. Fixed the default control mode. * Fix up the test suite to reflect the current expectations for float.pure.lisp tests. Index: float.pure.lisp =================================================================== RCS file: /cvsroot/sbcl/sbcl/tests/float.pure.lisp,v retrieving revision 1.51 retrieving revision 1.52 diff -u -d -r1.51 -r1.52 --- float.pure.lisp 20 May 2010 22:09:39 -0000 1.51 +++ float.pure.lisp 24 May 2010 02:23:15 -0000 1.52 @@ -93,7 +93,7 @@ (assert (= 0.0d0 (scale-float 1.0d0 (1- most-negative-fixnum)))) (with-test (:name (:scale-float-overflow :bug-372) - :fails-on '(or :ppc :darwin)) ;; bug 372 + :fails-on :darwin) ;; bug 372 (progn (assert (raises-error? (scale-float 1.0 most-positive-fixnum) floating-point-overflow)) @@ -125,7 +125,7 @@ (funcall (compile nil '(lambda () (tan (tan (round 0)))))) (with-test (:name (:addition-overflow :bug-372) - :fails-on '(or :ppc :darwin (and :x86 :netbsd))) + :fails-on '(or (and :ppc :openbsd) :darwin (and :x86 :netbsd))) (assert (typep (nth-value 1 (ignore-errors |