1. 11 Dec, 2013 1 commit
  2. 08 Dec, 2013 2 commits
  3. 07 Dec, 2013 1 commit
  4. 27 Oct, 2013 1 commit
  5. 22 Oct, 2013 1 commit
    • Raymond Toy's avatar
      Enable micro-optimization of fast-unary-ftruncate and · 07e2d61f
      Raymond Toy authored
      double-float-bits for x86/sse2. This gives x86 the same
      micro-optimizations that were available for sparc and ppc.
      
      
       o code/kernel.lisp:
         o Enable fast double-float-bits using the vop instead of calling
           double-float-high-bits/double-float-low-bits. 
      
       o compiler/float-tran.lisp:
         o Make fast-unary-ftruncate known to compiler and enable optimizer
           for it. 
         o Make double-float-bits known to compiler
      
       o compiler/x86/float-sse2.lisp:
         o Implement fast-unary-ftruncate for singles and doubles.
         o Implement double-float-bits.
      07e2d61f
  6. 20 Oct, 2013 1 commit
  7. 21 Sep, 2013 2 commits
    • Raymond Toy's avatar
      Make :plus-integer actually print + or - as documented. · c01e6f9d
      Raymond Toy authored
      The comment says the field should be proceeded with a + or -, but
      depended on negative integers producing the needed -.  When
      disassembling with a radix, this doesn't produce the expected output
      (#x7 vs #x-7 vs -#x7). So really print + or - followed by the absolute
      value.
      c01e6f9d
    • Raymond Toy's avatar
      Update for release 20e. · aca64f09
      Raymond Toy authored
       * src/compiler/byte-comp.lisp
         * Update fasl file version to 20e
       * bootfiles/20d/boot-20e.lisp
         * Use this during a normal compile to update to 20e.
      aca64f09
  8. 12 Sep, 2013 1 commit
    • Raymond Toy's avatar
      Allow disabling the use of git for the file-comment. · 7e2a98ee
      Raymond Toy authored
       * src/compiler/main.lisp:
         * Add *FILE-COMMENT-FROM-GIT* to control whether to use git to
           derive the file-comment.  Default is T.  Otherwise, the actual
           file-comment is used.
         * Update PROCESS-FILE-COMMENT to use *FILE-COMMENT-FROM-GIT*.
      
       * bin/build-all.sh
       * bin/build.sh
       * bin/build-world.sh
         * Add -G option to control whether file-comment's are derived from
           git.
      7e2a98ee
  9. 24 Aug, 2013 1 commit
    • Raymond Toy's avatar
      Make CL:DISASSEMBLE conforming. Also update some of the · ddfb0372
      Raymond Toy authored
      implementation details of DISASSEM:DISASSEMBLE.
      
       code/exports.lisp::
       * Update packages so CL:DISASSEMBLE is not DISASSEM:DISASSEMBLE.
      
       code/misc.lisp::
       * Define CL:DISASSEMBLE.
      
       compiler/fndb.lisp::
       * Update defknow for disassemble.
      
       compiler/disassem.lisp::
       * Print of source codes uses standard I/O syntax instead of
         inheriting from the environment.
       * Add new keyword arguments to DISASSEM:DISASSEMBLE for the base,
         case, and radix.  These default to 16, :downcase, and
         *print-radix*, respectively.  This means disassembly now prints out
         all numbers in base 16 and is in lowercase.
       * When printing a note for an assembler routine, we don't need to
         print the (hex) address if *print-base* is 16.
      
       compiler/x86/insts.lisp::
       * Fix some issues when in print-mem-access.
         * Sometimes the absolute value of the value was printed instead of
           the value (displaying the wrong value).
         * Print out the value as an unsigned in some cases instead of
           signed value.
       * Fix print-label to print addresses as unsigned integers.  This
         fixes the issue where things like call #x-4xxxxxxx were printed.
      
       i18n/locale/cmucl.pot::
       * Update because of new or changed docstrings.
      ddfb0372
  10. 22 Aug, 2013 1 commit
    • Raymond Toy's avatar
      Allow disasembler to work for any value of *print-base*. · 0331b892
      Raymond Toy authored
      With these changes, you can bind *print-base* to 16 and *print-case*
      to :downcase to get correctly printed disassembly in lower case with
      all numerical values in hex.  If you want the radix marker as well,
      bind *print-radix* to T; the disassembly is still correct.
      
      src/compiler/disassem.lisp:
      o When printing out the source code, bind *print-base* to 10 so that
        the code is printed "naturally".
      
      src/compiler/x86/insts.lisp:
      o Use Carl's much cleaned-up print-mem-access
      o Update print-imm-data to use princ for all values, removing the
        special casing for NIL
      o When printing out xmm registers, honor *print-case*.
      
      src/general-info/release-20e.txt:
      o Update
      0331b892
  11. 11 Aug, 2013 1 commit
  12. 08 Aug, 2013 2 commits
  13. 07 Aug, 2013 1 commit
  14. 02 Aug, 2013 1 commit
  15. 01 Aug, 2013 2 commits
  16. 05 Jul, 2013 1 commit
    • Raymond Toy's avatar
      Make NOT-MORE-CONTAGIOUS support member and union types. · f36a31aa
      Raymond Toy authored
      This change allow cmucl to fold identity operations as in
      
      (defun foo (x)
        (declare (float x))
        (* x 1))
      
      Previously, cmucl wouldn't change (* x 1) to just x. because the
      declaration of x is represented internally as a union type.
      f36a31aa
  17. 27 May, 2013 1 commit
  18. 26 May, 2013 1 commit
  19. 25 May, 2013 1 commit
    • Raymond Toy's avatar
      Remove all the extensions to string-upcase and friends. The extended · 49f041ad
      Raymond Toy authored
      functions now live in the new UNICODE package.
      
       src/code/exports.lisp::
       * Export some unicode functions and constants.
      
       src/code/string.lisp::
       * Removed the extended versions of string-upcase and friends.
       * Export surrogates function.
       * Make sure with-one-string is defined so the unicode package can use
         it.
      
       src/code/unicode.lisp:;
       * New file with extended versions of string-upcase and friends.
      
       src/code/unidata.lisp::
       * Export some unicode functions and constants.
      
       src/compiler/fndb.lisp::
       * Update defknowns for string-upcase and friends.
      
       src/tools/worldbuild.lisp::
       * Build unicode.lisp
      
       src/tools/worldcom.lisp::
       * Load unicode.lisp
      49f041ad
  20. 21 May, 2013 1 commit
  21. 15 May, 2013 3 commits
    • Raymond Toy's avatar
      Wrap exports in eval-when for x86 as was done for sparc and add · 7889e989
      Raymond Toy authored
      CHAR-BYTES to x86-x86 cross-compile script.
      
      Only the change for CHAR-BYTES is needed for cross-compiling from x86
      to x86, but I think the other changes will be needed if you do a
      cross-compile from some other arch to x86.
      7889e989
    • Raymond Toy's avatar
      Wrap exports in eval-when for ppc as was done for sparc and add · e5a2fa14
      Raymond Toy authored
      CHAR-BYTES to ppc cross-compile script.
      
      This is untested.
      e5a2fa14
    • Raymond Toy's avatar
      Wrap exports in eval-when. · ba06f21f
      Raymond Toy authored
       src/compiler/generic/objdef.lisp::
       src/compiler/generic/utils.lisp:;
       src/compiler/generic/vm-macs.lisp::
       src/compiler/sparc/c-callback.lisp::
       src/compiler/sparc/parms.lisp::
      
        When export lost its compile-time effects and became a normal
        function, the exports in many files no longer took affect while
        compiling the file.  This change makes the compile-time effects
        happen as before in selected files. With this change, the sparc port
        can be cross-compiled from x86 again.
      
       src/tools/cross-scripts/cross-x86-sparc.lisp::
        Need to frob CHAR-BYTES, which is needed by BYTE-BASH-COPY. .
      ba06f21f
  22. 23 Feb, 2013 3 commits
  23. 22 Feb, 2013 3 commits
    • Raymond Toy's avatar
      Remove the :i486 feature. · 6e4b4118
      Raymond Toy authored
      code/misc.lisp::
      * Remove :i486 from *features*
      
      code/multi-proc.lisp::
      * Change :i486 to :x86 on the off chance that multi-proc will be
        ported to other archs.
      
      compiler/x86/cell.lisp::
      compiler/x86/macros.lisp::
      compiler/x86/memory.lisp::
      * Remove guard on backend-featurep :i486 since we got rid of :i486 and
        have it always enabled now.
      6e4b4118
    • Raymond Toy's avatar
      Clean up one- and two-arg-derive-type. · 17e30810
      Raymond Toy authored
      srctran.lisp::
       * The optional convert-type arg is always true, so remove it and
         update the local functions to convert always.
       * Clean up some comments as well.
      
      float-tran.lisp::
       * Fix up one place where we were supplying a value for the optional
         convert-type arg.
      17e30810
    • Raymond Toy's avatar
      Remove :conservative-float-type from *features* and update code · 0ecc7f4c
      Raymond Toy authored
      accordingly.
      0ecc7f4c
  24. 20 Feb, 2013 1 commit
  25. 19 Feb, 2013 3 commits
  26. 25 Jan, 2013 1 commit
    • Raymond Toy's avatar
      Fix ticket:71 · b2ee65da
      Raymond Toy authored
      The reader conditionals in {{{NOT-MORE-CONTAGIOUS}}} were incorrrectly
      handling the case when the second type was a double-float. It was
      always returning T in that case, but this is wrong if the first type
      is a double-double-float.
      b2ee65da
  27. 23 Jan, 2013 1 commit
  28. 01 Jan, 2013 1 commit