Skip to content
Snippets Groups Projects
  1. Oct 09, 2007
    • rtoy's avatar
      If the number is exactly zero, make the printed exponent be zero, · d4d81f49
      rtoy authored
      independent of the scale factor.
      d4d81f49
    • rtoy's avatar
      Remove incorrect comment. · 5ebe47b3
      rtoy authored
      5ebe47b3
    • rtoy's avatar
      o Make the implementation of the log approximation the same in · 3c06338d
      rtoy authored
        accurate-scale-exponent and flonum-to-digits.
      o Minor clean up of scale in both places.
      3c06338d
    • rtoy's avatar
      print.lisp: · 6ee52767
      rtoy authored
      o Add *POWERS-OF-TEN* for use in scaling.
      o Implement the fast log scaling from Burger and Dybvig's paper.
        Scaling is very noticeably faster for large and small numbers; it is
        somewhat slower for intermediate numbers near 1.  (Should we test
        for this case?)
      
      format.lisp:
      o Implement an accurate scaling routine, based on the scale routine in
        FLONUM-TO-DIGITS.
      o Use the new scaling routine in FORMAT-EXP-AUX.  This should fix Trac
        Ticket #12.
      6ee52767
  2. Oct 08, 2007
  3. Oct 04, 2007
    • rtoy's avatar
      "which gmake" returns values that confuses the script for some · b27212b6
      rtoy authored
      versions of which.  Some versions of which will return a 0 exit code
      and return "no gmake in <paths>".  This confuses the script.  Check
      for this and set MAKE to "make" in this case, and hope for the best.
      b27212b6
    • rtoy's avatar
      The floating point precision was always getting reset to :53-bit, even · d88bcbc7
      rtoy authored
      if the user set a different value.  Fix this so the correct precision
      is restored.
      
      compiler/x86/parms.lisp:
      o Add new static-symbol *FPU-PRECISION* to hold the precision bits
        that are given in (setf floating-point-modes).
      
      compiler/x86/float.lisp:
      o Whenever (setf floating-point-modes) is called, save the precision
        bits to *FPU-PRECISION* so that get restored correctly in
        DEALLOC-NUMBER-STACK-SPACE.
      
      compiler/x86/c-call.lisp:
      o Update DEALLOC-NUMBER-STACK-SPACE VOP so that when float-accuracy
        policy says so, we restore the precision from *fpu-precision*,
        instead of always making it :53-bit.
      
      code/lispinit.lisp:
      o Initialize the default precision to :53-bit on startup.
      d88bcbc7
    • rtoy's avatar
      Oops. Delete extra paren. · 55e2e65b
      rtoy authored
      55e2e65b
  4. Oct 03, 2007
    • rtoy's avatar
      Fix for Trac ticket #1. · 686a18ac
      rtoy authored
      Instead of having scale-exponent scale the number and using the scaled
      number for printing, have flonum-to-string scale the number for us.
      There is no loss in precision in flonum-to-string, so we don't have
      round-off errors in printing the number.  This means (format nil "~E"
      1.234567890123456789d4) is printed as "1.2345678901234567d+4" instead
      of "1.2345678901234565d+0".  Then prin1 and ~E both call
      flonum-to-digits with exactly the same number, so prin1 and ~E should
      have the same printed result.
      
      These tests pass:
      
      (assert (string= (format nil "~9,4,,-7E" pi) ".00000003d+8"))
      (assert (string= (format nil "~9,4,,-5E" pi) ".000003d+6"))
      (assert (string= (format nil "~5,4,,7E" pi) "3141600.d-6"))
      (assert (string= (format nil "~11,4,,3E" pi) "  314.16d-2"))
      (assert (string= (format nil "~11,4,,5E" pi) "  31416.d-4"))
      (assert (string= (format nil "~11,4,,0E" pi) "  0.3142d+1"))
      (assert (string= (format nil "~9,,,-1E" pi) ".03142d+2"))
      (assert (string= (format nil "~,,,-2E" pi) "0.003141592653589793d+3"))
      (assert (string= (format nil "~,,,2E" pi) "31.41592653589793d-1"))
      (assert (string= (format nil "~E" pi) "3.141592653589793d+0"))
      (assert (string= (format nil "~9,5,,-1E" pi) ".03142d+2"))
      (assert (string= (format nil "~11,5,,-1E" pi) " 0.03142d+2"))
      (assert (string= (format nil "~G" pi) "3.141592653589793    "))
      (assert (string= (format nil "~9,5G" pi) "3.1416    "))
      (assert (string= (format nil "|~13,6,2,7E|" pi) "| 3141593.d-06|"))
      (assert (string= (format nil "~9,3,2,0,'%E" pi) "0.314d+01"))
      (assert (string= (format nil "~9,0,6f" pi) " 3141593."))
      (assert (string= (format nil "~6,2,1,'*F" pi) " 31.42"))
      (assert (string= (format nil "~6,2,1,'*F" (* 100 pi)) "******"))
      (assert (string= (format nil "~9,3,2,-2,'%@E" pi) "+.003d+03"))
      (assert (string= (format nil "~10,3,2,-2,'%@E" pi) "+0.003d+03"))
      (assert (string= (format nil "~15,3,2,-2,'%,'=@E" pi) "=====+0.003d+03"))
      (assert (string= (format nil "~9,3,2,-2,'%E" pi) "0.003d+03"))
      (assert (string= (format nil "~8,3,2,-2,'%@E" pi) "%%%%%%%%"))
      
      (assert (string= (format nil "~g" 1e0) "1.    "))
      (assert (string= (format nil "~g" 1.2d40) "12000000000000000000000000000000000000000.    "))
      
      (assert (string= (format nil "~e" 0) "0.0e+0"))
      (assert (string= (format nil "~e" 0d0) "0.0d+0"))
      (assert (string= (format nil "~9,,4e" 0d0) "0.0d+0000"))
      (assert (string= (format nil "~E" 1.234567890123456789d4) "1.2345678901234567d+0"))
      686a18ac
    • rtoy's avatar
      Update from logs. · 151a4a9d
      rtoy authored
      151a4a9d
  5. Oct 02, 2007
    • rtoy's avatar
      compiler/locall.lisp · 63ddf98f
      rtoy authored
      o In MAYBE-CONVERT-TAIL-LOCAL-CALL, honor the notinline declaration
        when deciding if we can let convert a tail call.  This is useful for
        tracing of local functions.
      
      code/debug-int.lisp:
      o If we can't find a debug function, print a note that the (local)
        function might have been inlined.
      63ddf98f
  6. Oct 01, 2007
    • rtoy's avatar
      Fix bug in parse-time noted by Chisheng Huang, cmucl-imp, 24 Sep 2007: · d12fc085
      rtoy authored
      (parse-time "1 jan 2006") causes an error if Jan 1, 2006 isn't on the
      same day of the week as the current day of the week.
      
      Patch supplied by Madhu, cmucl-imp, 24 Sep 2007.
      
      o Change default dotw value from nil to -1 so we can properly
        initialize the dotw.
      d12fc085
  7. Sep 28, 2007
  8. Sep 25, 2007
  9. Sep 13, 2007
    • rtoy's avatar
      Oops. Really get rid of lisp::sxhash-instance. · 7d1f176f
      rtoy authored
      7d1f176f
    • rtoy's avatar
      Untracing of flet/labels functions wasn't working and neither was · 010270ec
      rtoy authored
      retracing flet/labels functions.  This was caused by the hash-table in
      *TRACE-FUNCTIONS* using an EQ test.  This doesn't work well when the
      functions are lists like (FLET INNER OUTER).
      
      code/ntrace.lisp:
      o Change *TRACED-FUNCTIONS* to use an EQUAL table so lists can match.
      
      pcl/braid.lisp:
      o Move LISP::SXHASH-INSTANCE to low.lisp because we need it defined
        earlier because of the change to tracing.  Can't build PCL without
        this change.
      
      pcl/low.lisp:
      o LISP::SXHASH-INSTANCE moved here.
      010270ec
  10. Sep 10, 2007
  11. Sep 05, 2007
  12. Sep 04, 2007
  13. Aug 29, 2007
  14. Aug 28, 2007
    • rtoy's avatar
      Ticket #11 · 92f2f154
      rtoy authored
      Add case for double-double-float.
      92f2f154
  15. Aug 22, 2007
  16. Aug 21, 2007
  17. Aug 17, 2007
    • rtoy's avatar
      code/env-access.lisp: · f5c564ec
      rtoy authored
      o Let's just return all of the declarations we know of, instead of
        removing some, in DECLARATION-INFORMATION.
      o Add the known set of CL (and CMUCL) declarations to the list of
        declarations that are returned in DECLARATIONS.
      o Add support for AUGMENT-ENVIRONMENT.
      
      code/exports.lisp:
      o Export AUGMENT-ENVIRONMENT from EXT package.
      o Import AUGMENT-ENVIRONMENT into C package.
      f5c564ec
    • rtoy's avatar
      Tweak grammar. · 70210bc8
      rtoy authored
      70210bc8
    • rtoy's avatar
      Generate more informative gensyms. · 2b52aaa0
      rtoy authored
      2b52aaa0
  18. Aug 15, 2007
  19. Aug 14, 2007
  20. Aug 08, 2007
  21. Aug 05, 2007
  22. Aug 04, 2007
  23. Aug 03, 2007
Loading