Skip to content
Snippets Groups Projects
  1. Nov 17, 2014
  2. Nov 16, 2014
  3. Nov 15, 2014
  4. Nov 12, 2014
  5. Nov 07, 2014
  6. Nov 06, 2014
    • Raymond Toy's avatar
      Add iterators and loop paths for codepoints and glyphs · 2b1925b6
      Raymond Toy authored
       * src/code/string.lisp:
         * Add WITH-STRING-CODEPOINT-ITERATOR to allow iterating over the
           codepoints in a string.
         * Add WITH-STRING-GLYPO-ITERATOR to allow iterating over the
           glpyhs in a string.
       * src/code/exports.lisp:
         * Export WITH-STRING-CODEPOINT-ITERATOR and
           WITH-STRING-GLYPH-ITERATOR. 
       * src/code/loop.lisp:
         * Support (loop for cp being the codepoint of string ...) which
           extracts the consecutive codepoints from the string. Allow
           codepoints, code-point, and code-points as aliases of codepoint.
         * Support (loop for g-string being the glyph of string ...) which
           extracts each glyph (as a string) from the string.  Allow glpyhs
           as an alias.
       * tests/extended-loop.lisp:
         * New file of tests for the new loop paths.
       * src/i18n/locale/cmucl.pot:
         * Update.
      2b1925b6
  7. Nov 02, 2014
  8. Oct 27, 2014
  9. Oct 25, 2014
  10. Oct 11, 2014
  11. Oct 10, 2014
    • Raymond Toy's avatar
      a1946b35
    • Raymond Toy's avatar
      Unify extern-alien-name for darwin x86 and ppc. · 571dd490
      Raymond Toy authored
      Initial attempt to unify extern-alien-name, primarily for darwin (x86
      and ppc). Thus, systems using elf do not prepend an underscore, but
      other systems are assumed to prepend an underscore.
      
      This is currently only for darwin/x86.  A cross-compile on darwin x86
      is needed.
      
       * code/x86-vm.lisp:
         * For elf systems, don't prepend an underscore.  For other systems,
           do prepend.
       * compiler/generic/new-genesis.lisp:
         * Fix long-standing bug where we should call EXTERN-ALIEN-NAME to
           get the right name for "resolve_linkage_tramp".
       * lisp/Darwin-os.c:
         * Update os_dlsym to assume the external name is always preceded by
           an underscore.  The lookup for dlysm is done by stripping off the
           leading underscore.
       * lisp/os-common.c:
         * Add EXTERN_ALIEN_NAME macro to create the correct alien name for
           elf and non-elf systems.
         * Use it to generate the correct name to be used for comparison in
           the sanity checks of the linkage table entries.
      571dd490
  12. 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
  13. Oct 02, 2014
    • 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
  14. Oct 01, 2014
  15. Sep 28, 2014
  16. 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
  17. Sep 26, 2014
  18. Sep 25, 2014
    • Raymond Toy's avatar
      Make the LOG function match what the deftransform for LOG does. · 106bf4fc
      Raymond Toy authored
      Without this, compiled code produces different answers from
      interpreted code.
      
       * src/code/irrat.lisp:
         * Add cases where the base is 2 or 10 to compute the log in the
           same way as the deftransform for LOG does.
       * tests/float.lisp:
         * Fix comparison to use equalp, not equal.
         * Add test for log10.
      106bf4fc
  19. Sep 20, 2014
    • Raymond Toy's avatar
      Add fdlibm's log10. · 24511623
      Raymond Toy authored
       * src/code/irrat.lisp:
         * Define %log10 to use fdlibm's log10
       * src/lisp/GNUmakefile
         * Compile e_log10
       * tests/trig.lisp
         * Add tests for %log10.
      24511623
    • Raymond Toy's avatar
      Make (log (scale-float 1d0 k) 2) = k · 2e182540
      Raymond Toy authored
       * src/code/irrat.lisp
         * Improve accuracy of log2 for the case when x=2^k. There might be
           some loss in accuracy for other values of x, however.
       * tests/float.lisp
         * Add test for log2(2^k) = k.
      2e182540
  20. Aug 29, 2014
  21. Aug 26, 2014
    • Raymond Toy's avatar
      Deprecate FLOAT-TRAPPING-NAN-P in favor of FLOAT-SIGNALING-NAN-P. · 9b6ad201
      Raymond Toy authored
      These numbers are called signaling, not trapping NaN in almost all
      usages.
      
       * code/exports.lisp:
         * Export FLOAT-SIGNALING-NAN-P.
       * code/float.lisp:
         * Implement FLOAT-SIGNALING-NAN-P.
         * Make FLOAT-TRAPPING-NAN-P an inline call to the
           FLOAT-SIGNALING-NAN-P and add a docstring to say it is
           deprecated. 
       * code/print.lisp:
         * Print "Signaling" instead of "Trapping".
       * i18n/locale/cmucl.pot:
         * Regenerated due to the changes in docstrings.
      9b6ad201
  22. Aug 23, 2014
  23. Aug 22, 2014
    • Raymond Toy's avatar
      On x86/darwin, we want and only need the sse2 mode bits. Darwin · 1626be46
      Raymond Toy authored
      doesn't use x87.
      1626be46
    • Raymond Toy's avatar
      Re-enable the x87 floating-point mode stuff. · 2c4a13af
      Raymond Toy authored
      On 32-bit linux, we can still get FP exceptions using x87 because
      32-bit linux can still use x87 instructions for arithmetic.  Because
      of this, we need to re-enable the support x87 floating-point modes,
      including getting and setting the modes and also extracting the modes
      from a sigcontext.
      
       * src/code/float-trap.lisp:
         * Put back support for getting and setting the x87 FP modes. 
       * src/compiler/x86/float.lisp:
         * Add comment on the layout of the status and control words for
           x87. 
       * src/lisp/Linux-os.c:
         * Put back support for getting the x87 (and sse2) FP modes. Needed
           in the sigfpe-handler in float-trap.lisp.
      
      Some of this needs to be cleaned up because we always require sse2
      now.
      2c4a13af
  24. Aug 10, 2014
    • Raymond Toy's avatar
      Fix ticket:101, implementing STREAM-ADVANCE-TO-COLUMN for FORMAT ~T. · e585e8d6
      Raymond Toy authored
       * code/format.lisp:
         * Add support for Gray streams for tabulation, calling
           STREAM-ADVANCE-TO-COLUMN as needed.
       * tests/gray-stream.lisp:
         * Add tests for absolute and relative tabulation. These are simple
           and just compare that lisp streams and Gray streams produce the
           same output.
       * general-info/release-20f.txt:
         * Update.
      e585e8d6
  25. Aug 09, 2014
    • Raymond Toy's avatar
      Fix ticket:105 by not flaming out on a closed stream. · c0052f55
      Raymond Toy authored
       * code/reader.lisp:
         * The READER-ERROR condition tries to be helpful and print out the
           position of where the error occurred using FILE-POSITION. But
           FILE-POSITION flames out when the stream is closed, so check for
           a closed stream before calling FILE-POSITION
      
       * tests/trac.lisp:
         * Add test from the bug report.
      
       * general-info/release-20f.txt:
         * Update.
      c0052f55
    • Raymond Toy's avatar
      Fix ticket #100 by implementing STREAM-FILE-POSITION · 9e687a21
      Raymond Toy authored
      Implements STREAM-FILE-POSiTION and (SETF STREAM-FILE-POSITION).
      
       * code/stream.lisp:
         * Add support for Gray streams in FILE-POSITION.
       * pcl/gray-streams.lisp:
         * Define STREAM-FILE-POSITION and (SETF STREAM-FILE-POSITION).
         * Add methods on FUNDAMENTAL-STREAM, CHARACTER-INPUT-STREAM, and
           CHARACTER-OUTPUT-STREAM.
       * code/exports.lisp:
         * Export STREAM-FILE-POSITION.
      9e687a21
  26. Aug 02, 2014
Loading