]> gitweb.factorcode.org Git - factor.git/commitdiff
fix float integer^ for denormal results
authorJoe Groff <arcata@gmail.com>
Sun, 1 Nov 2009 05:43:04 +0000 (00:43 -0500)
committerJoe Groff <arcata@gmail.com>
Sun, 1 Nov 2009 05:43:04 +0000 (00:43 -0500)
basis/math/functions/functions-tests.factor
basis/math/functions/functions.factor

index 1914bae008308c5ac2d158d68333a28deadf06c0..73f08e2665ae559253b50535a5373fb62431e06d 100644 (file)
@@ -25,6 +25,9 @@ IN: math.functions.tests
 [ t ] [ e pi i* ^ real-part -1.0 = ] unit-test
 [ t ] [ e pi i* ^ imaginary-part -0.00001 0.00001 between? ] unit-test
 
+[ 1/0. ] [ 2.0 1024 ^ ] unit-test
+[ HEX: 1.0p-1024 ] [ 2.0 -1024 ^ ] unit-test
+
 [ t ] [ 0 0 ^ fp-nan? ] unit-test
 [ 0.0 ] [ 0.0 1.0 ^ ] unit-test
 [ 1/0. ] [ 0 -2 ^ ] unit-test
index 0e0ccd5ecf40b03db928dbb05731a26c074b3d1c..d91b4b6b92a0c5904d418037be7a6999e573322c 100644 (file)
@@ -39,7 +39,7 @@ M: float ^n (^n) ;
 M: complex ^n (^n) ;
 
 : integer^ ( x y -- z )
-    dup 0 > [ ^n ] [ neg ^n recip ] if ; inline
+    dup 0 >= [ ^n ] [ [ recip ] dip neg ^n ] if ; inline
 
 PRIVATE>