Skip to content
  1. Nov 07, 2007
    • Raymond Toy's avatar
      qd-rep.lisp: · 47e6f99e
      Raymond Toy authored
      o Fix typo in compiler macro for sub-d-qd
      
      qd.lisp:
      o Use 3-arg versions in div-qd-t to speed things up.  Approximately
        doubles the speed with clisp.
      
      qd-fun.lisp:
      o Use 3-arg versions in sqrt-qd to speed things up.  Approximately
        doubles the speed with clisp.
      47e6f99e
    • Raymond Toy's avatar
      o Add 3-arg forms for add-qd-d, mul-qd-d, add-d-qd, sub-qd-d, · 92630dff
      Raymond Toy authored
        sub-d-qd, and neg-qd.
      o Correct the compiler macros for CMUCL for sub-qd and sqr-qd.
      92630dff
  2. Nov 04, 2007
  3. Nov 02, 2007
    • Raymond Toy's avatar
      c91ab256
    • Raymond Toy's avatar
      First cut at adding a 3-arg versions of the basic operations to reduce · d161eff7
      Raymond Toy authored
      consing by allowing the third argument to be a place where the result
      can be stored.  This is intended to help reduce allocation and gc
      costs for Lisps that use arrays to represent quad-doubles.
      
      More work is needed to make the compiler macros do the right thing for
      CMUCL.
      
      qd-rep.lisp:
      o Add %STORE-QD-D to store a quad-double into a place.  For CMUCL,
        there place argument is ignored and a fresh quad-double is created.
      
      qd.lisp:
      o Modify ADD-QD, SUB-QD, MUL-QD, and DIV-QD to take an optional third
        argument indicating where the result can be stored.   Ignored on
        CMUCL.
      o Add ADD-QD-T, SUB-QD-T, MUL-QD-T, and DIV-QD-T, which are 3-arg
        functions with the third arg always required which is the storage
        area to hold the result.  Ignored on CMUCL.
      o Add compiler macros to convert ADD-QD and friends to ADD-QD-T if the
        third arg is always given.  The effect is, essentially, inlining
        ADD-QD.
      d161eff7
  4. Oct 16, 2007
    • Raymond Toy's avatar
      qd-fun.lisp: · d58b6166
      Raymond Toy authored
      o Remove extra rem-pi/2-int.
      
      qd-rep.lisp:
      o Fix typo in float-infinity-p for Allegro.
      o Ignore var in float-infinity-p and friends.
      d58b6166
    • Raymond Toy's avatar
      o Add default implementation of float-infinity-p, float-nan-p, · 4968eb46
      Raymond Toy authored
        float-trapping-nan-p.  These return NIL by default, unless the Lisp
        implementation has a suitable version.
      o Remove CMU conditionalization for float-infinity-p, float-nan-p,
        float-trapping-nan-p.
      4968eb46
  5. Oct 15, 2007
  6. Sep 18, 2007
    • Raymond Toy's avatar
      qd-rep.lisp: · 17c963bd
      Raymond Toy authored
      o Add macro WITH-QD-PARTS to extract the components of a quad-double.
      
      qd.lisp:
      o Use the macro as needed.
      17c963bd
  7. Sep 17, 2007
  8. Sep 16, 2007
  9. Aug 25, 2007
  10. Jun 02, 2007
  11. May 23, 2007
    • toy's avatar
      Oops. Enable the appropriate code for CMUCL. · 27b26d60
      toy authored
      27b26d60
    • toy's avatar
      Split out the representation of %quad-double to a separate file. Add · 0b1fed95
      toy authored
      a portable presentation using a (simple-array double-float (4)) to
      hold a %quad-double number.
      
      All of the tests pass with the portable representation.
      
      qd.lisp:
      o Moved representation to qd-rep.lisp.
      o INTEGER-DECODE-QD was dependent on the internal representation.
        Replace with a function using the appropriate accessors.
      
      qd.system:
      o Add new file qd-rep.lisp.
      
      qd-rep.lisp:
      o Representation moved here.
      o Add portable implementation using a simple-array for holding a
        %quad-double.
      0b1fed95