Skip to content
Snippets Groups Projects
  1. Oct 09, 2014
    • Raymond Toy's avatar
      First cut at removing ppc-darwin-dlshim.c. Not needed anymore because · 57711cc2
      Raymond Toy authored
      dlsym works on OSX/ppc like on other ports.
      
      A cross-compile was used with cross-ppc-ppc-darwin.lisp.  I'm not sure
      a cross-compile is required, though.
      
       * code/ppc-vm.lisp:
         * EXTERN-ALIEN-NAME doesn't need to prepend an underscore anymore. 
       * lisp/Config.ppc_darwin:
         * Don't compile/link ppc-darwin-dlshim.c.
       * lisp/os-common.c:
         * Don't prepend underscore for call_into_lisp.
       * tools/cross-scripts/cross-ppc-ppc-darwin.lisp:
         * EXTERN-ALIEN-NAME doesn't need to prepend an underscore anymore.
      57711cc2
    • Raymond Toy's avatar
      Fix issue with negative value for lisp::cycles-per-tick. · 2c1badef
      Raymond Toy authored
      This causes negative cpu cyles with TIME. Basic issue is that a cpu
      frequency of 2.3 GHZ won't fit in an int. Use an unsigned int.
      
      We also take this opportunity to use a rounded value for
      clocks-per-tick instead of truncating.  For this particular case the
      ratio is actual 68.99 which would truncated to 68. We should probably
      use 69 instead.
      2c1badef
  2. Oct 07, 2014
  3. Oct 04, 2014
  4. Oct 02, 2014
    • Raymond Toy's avatar
      Micro-optimize SCALE-FLOAT to use multiplication when possible. · 8f5f6abc
      Raymond Toy authored
      If the exponent (second arg of SCALE-FLOAT) is such that 2^exponent
      can be represented as a float (single or double), we can implement
      SCALE-FLOAT using a multiplication by 2^exponent, since multiplication
      by 2^exponent is exact.
      
       * src/compiler/float-tran.lisp:
         * Update deftransforms for SCALE-FLOAT to do a multiply when
           possible. 
       * tests/float-tran.lisp:
         * Add tests to make sure the deftransforms for SCALE-FLOAT are
           applied appropriately.
      8f5f6abc
    • Raymond Toy's avatar
      Add FAST-ASH-C/FIXNUM=>SIGNED vop. · 3ff38ffa
      Raymond Toy authored
      This allows the compiler to shift a fixnum to a signed-reg without
      first converting the fixnum to a signed-reg, saving a shift.
      3ff38ffa
    • Raymond Toy's avatar
      Editorial fixes. · 227e5085
      Raymond Toy authored
       * Remove [In progress]
       * Rephrase some items.
       * Fix typos.
      227e5085
    • Raymond Toy's avatar
      Fix regression in %ENUMERATE-DIRECTORIES. · 8329e1d5
      Raymond Toy authored
      Previously (18a at least), %ENUMERATE-DIRECTORIES would return a path
      even if a directory element did not exist.  This behavior is restored.
      
      See email from cmucl-help, Sep 26, 2014.
      
       * src/code/filesys.lisp:
         * Fix regression.in %ENUMERATE-DIRECTORIES.  Even if the directory
           does not exist, we continue recursing instead of stopping.
       * src/general-info/release-20f.txt:
         * Update
       * tests/filesys.lisp:
         * New file adding tests for UNIX-NAMESTRING.
      8329e1d5
    • Raymond Toy's avatar
      Fix regression in %ENUMERATE-DIRECTORIES. · 2f316750
      Raymond Toy authored
      Previously (18a at least), %ENUMERATE-DIRECTORIES would return a path
      even if a directory element did not exist.  This behavior is restored.
      
      See email from cmucl-help, Sep 26, 2014.
      
       * src/code/filesys.lisp:
         * Fix regression.in %ENUMERATE-DIRECTORIES.  Even if the directory
           does not exist, we continue recursing instead of stopping.
       * src/general-info/release-20f.txt:
         * Update
       * tests/filesys.lisp:
         * New file adding tests for UNIX-NAMESTRING.
      2f316750
  5. Oct 01, 2014
  6. Sep 28, 2014
  7. Sep 27, 2014
    • Raymond Toy's avatar
      Fix incorrect value from INTEGER-DECODE-FLOAT for denormals. · ab0a979d
      Raymond Toy authored
      This is a long standing bug where INTEGER-DECODE-FLOAT returned
      incorrect values for denormal double-float numbers.  The lower 32 bits
      of the double were not shifted enough when creating the integer
      result.
      
      As a side-effect, DECODE-FLOAT decodes denormal double-float's
      correctly and SCALE-FLOAT scales denormals correctly too.
      
       * src/code/float.lisp:
         * Shift the lower 32-bit of the fraction one more time to adjust
           for the fact that the upper 20 bits were shifted an extra time.
       * tests/float.lisp:
         * Add several tests for INTEGER-DECODE-FLOAT, SCALE-FLOAT, and
           DECODE-FLOAT.
       * src/general-info/release-20f.txt:
         * Add this bug fix to the notes.
      
      Conflicts:
      	tests/float.lisp
      ab0a979d
    • Raymond Toy's avatar
      Fix incorrect value from INTEGER-DECODE-FLOAT for denormals. · 315ea234
      Raymond Toy authored
      This is a long standing bug where INTEGER-DECODE-FLOAT returned
      incorrect values for denormal double-float numbers.  The lower 32 bits
      of the double were not shifted enough when creating the integer
      result.
      
      As a side-effect, DECODE-FLOAT decodes denormal double-float's
      correctly and SCALE-FLOAT scales denormals correctly too.
      
       * src/code/float.lisp:
         * Shift the lower 32-bit of the fraction one more time to adjust
           for the fact that the upper 20 bits were shifted an extra time.
       * tests/float.lisp:
         * Add several tests for INTEGER-DECODE-FLOAT, SCALE-FLOAT, and
           DECODE-FLOAT.
       * src/general-info/release-20f.txt:
         * Add this bug fix to the notes.
      315ea234
  8. Sep 26, 2014
  9. Sep 25, 2014
  10. Sep 21, 2014
    • Raymond Toy's avatar
      Add deftransform to convert (log x 2) and (log x 10) to log2 and · db25e3e0
      Raymond Toy authored
      %log10. This better than using the definition (/ (log x) (log base)).
      This also allows exact answer for 2^n and 10^n for appropriate n.
      
      
       * src/compiler/float-tran.lisp:
         * Add deftransforms to convert (log x 2) and (log x 10) to
           kernel::log2 and kernel:%log10 
       * tests/float-tran.lisp:
         * Add tests to check the transforms are done, or not done, as
           appropriate.
      db25e3e0
  11. Sep 20, 2014
  12. Sep 13, 2014
Loading