Skip to content
Snippets Groups Projects
  1. Feb 05, 2010
    • rtoy's avatar
      Implement a fast fround for single and double floats. This is enabled · d611150a
      rtoy authored
      everywhere except for x87 builds since there is a possible roundoff
      issue due to the 80-bit registers for x87.
      
      This is some 2-3 times faster than the existing fround function.
      
      code/float.lisp:
      o Implementations of %unary-fround/single-float,
        %unary-fround/double-float, and %unary-fround.  Declare the first
        two as inline too.
      
      compiler/float-tran.lisp:
      o Tell compiler about %unary-fround.
      o Transform fround to a call to %unary-fround.
      o Transform %unary-fround to special versions for single and double
        float arguments.
      d611150a
  2. Dec 22, 2008
  3. Oct 24, 2008
    • rtoy's avatar
      code/float.lisp: · 139b5ed6
      rtoy authored
      o Forgot to implement FLOAT-PRECISION for double-doubles.
      
      general-info/release-19f.txt:
      o Document it.
      139b5ed6
  4. Apr 15, 2008
  5. Feb 13, 2008
  6. Oct 10, 2007
    • rtoy's avatar
      o Add RATIONAL-TO-DD, an accurate method to convert rationals to · 4f86a308
      rtoy authored
        double-double-floats.  (From Richard Fateman.)
      o Use that in FLOAT-RATIO for convertnig ratios to
        double-double-floats.
      o Remove old double-double-float support from FLOAT-RATIO.
      o Split FLOAT-RATIO in two, one supporting single/double floats, and
        one for double-double-floats.
      
      With these changes, I think we now have print/read consistency for
      double-double-float numbers.
      4f86a308
  7. May 24, 2007
  8. May 19, 2007
    • rtoy's avatar
      Trac ticket #10 · 51a50f19
      rtoy authored
      For large numbers we did not check for odd-valued results that needed
      to be rounded to even.
      51a50f19
  9. Mar 27, 2007
  10. Jan 18, 2007
  11. Aug 21, 2006
    • rtoy's avatar
      Some very basic support for signed zeroes for DOUBLE-DOUBLE-FLOAT. We · e14ba2a5
      rtoy authored
      can now read and print -0w0.
      
      code/float.lisp:
      o Adjust float-sign so that we get the correct sign when
        double-double-floats are used.
      o Adjust FLOAT-RATIO to call %MAKE-DOUBLE-DOUBLE-FLOAT so that we
        preserve the sign of the number.  This is safe because the
        components are known to be properly scaled.
      
      compiler/float-tran.lisp:
      o Use %MAKE-DOUBLE-DOUBLE-FLOAT in %DOUBLE-DOUBLE-FLOAT to preserve
        the sign of the original float.  This is safe because the
        components are known to be properly scaled.
      o Add a FLOAT-SIGN deftransform to handle DOUBLE-DOUBLE-FLOAT.
      e14ba2a5
  12. Jun 30, 2006
  13. Aug 25, 2005
    • rtoy's avatar
      o Fix a bug in %unary-ftruncate/single-float and · 8e58835f
      rtoy authored
        %unary-ftruncate/double-float where the test for infinity and NaN
        was wrong.
      o When given NaN, these functions should return a quiet
        (non-signaling) NaN instead of returning the signaling NaN.  This
        fixes the FRUNCATE/FFLOOR/FCEILING tests in ieeefp-tests.
      8e58835f
  14. Jun 18, 2004
    • rtoy's avatar
      o Fix a misplaced declaration in %unary-ftruncate/single-float · a71e3e77
      rtoy authored
      o Update %unary-ftruncate and the corresponding deftransform because
        it was not properly returning the correct sign for signed zeroes.
        If the number was in a good range, we used truncate, which loses the
        sign of zero.  (Should we have leave it in and add an explicit check
        for a zero result and adjust the sign appropriately?  That would
        allow us to use the fast builtin instructions at the expense of a
        test for zero and a fix.)
      a71e3e77
  15. Jun 09, 2004
  16. Jul 22, 2002
  17. May 08, 2002
  18. Mar 05, 2002
  19. Feb 25, 2002
  20. Jun 17, 2001
    • pw's avatar
      From Eric Marsden: · 8de4d134
      pw authored
      FLOAT-RADIX should signal an error if arg is not a FLOAT.
      8de4d134
  21. Mar 04, 2001
  22. May 22, 2000
  23. May 06, 2000
  24. Nov 19, 1999
  25. Nov 11, 1999
  26. Mar 21, 1998
  27. Feb 19, 1998
  28. Jun 26, 1997
  29. Mar 05, 1997
  30. Oct 31, 1994
  31. Oct 30, 1994
  32. Apr 06, 1994
  33. Feb 11, 1994
  34. May 07, 1993
  35. Jan 13, 1993
  36. Dec 10, 1992
  37. Feb 07, 1992
  38. Feb 08, 1991
  39. Dec 12, 1990
    • ram's avatar
      Added %UNARY-TRUNCATE-{SINGLE,DOUBLE}-FLOAT/FIXNUM functions, but then · eafdc708
      ram authored
      commented them out, cause I decided to do this by frobbing the rounding
      modes.  They might be useful someday.
      Added %UNARY-ROUND to handle the 1-arg case of round, making it use
      the new round primitive in the fixnum result case.
      Fixed %UNARY-TRUNCATE to use open bounds when deciding whether the result
      is a fixnum, and also to only return one value in the ratio case.
      eafdc708
Loading