Skip to content
Snippets Groups Projects
  1. May 14, 2004
  2. May 13, 2004
    • rtoy's avatar
      o Use the gtemp register for LOAD-CONSTANT. This allows the · 751d6114
      rtoy authored
        CLOS/defmethod test in cl-bench to run.  (I'm waiting for bug
        reports before adding this everywhere.)
      o Add a temp to the MOVE-ARGUMENT vop so we can store things on the
        stack with large offsets.
      751d6114
    • rtoy's avatar
      o Add some comments on register usage · 3111d63c
      rtoy authored
      o Add a global temp register, gtemp, for use in move-functions when a
        temp register is needed.  Currently %g7, but could be changed to a5
        (aka %l5) if necessary, which some more straightforward work.
      3111d63c
  3. May 11, 2004
    • rtoy's avatar
      From Lynn Quam: · 836299e0
      rtoy authored
      	adds the mark_bit slot to weak-pointers and eliminates the
      	n-squared performance problem with scav_weak_pointer.
      836299e0
  4. May 10, 2004
  5. May 06, 2004
  6. May 05, 2004
  7. Apr 28, 2004
    • rtoy's avatar
      This causes an error: · 9eab32ea
      rtoy authored
      (macrolet ((%x () t))
          (declare (optimize))
          (declare (notinline identity)))
      
      Because the macrolet IR1 translator puts a list onto the FVARS
      arg in PROCESS-INLINE-DECLARATION, which is not a LEAF.
      
      This patch works around this by checking to see if the element of
      FVARS is a LEAF before getting the LEAF-NAME.
      
      There is probably a better solution.
      9eab32ea
  8. Apr 27, 2004
    • emarsden's avatar
      · 9535468e
      emarsden authored
        - fix lambda-list processing: symbols with names like &foo should be
          handled like normal arguments, if they are not present in
          LAMBDA-LIST-KEYWORDS. Issue a STYLE-WARNING instead of signaling an
          error.
      9535468e
  9. Apr 23, 2004
  10. Apr 19, 2004
  11. Apr 16, 2004
  12. Apr 13, 2004
  13. Apr 08, 2004
  14. Apr 07, 2004
  15. Apr 06, 2004
    • rtoy's avatar
      Add support for source location recording, from Helmut Eller on · f4f6325e
      rtoy authored
      cmucl-imp:
      
          The patch below adds a somewhat general mechanism to the get the
          "current location".  So every macro that wants to record the
          source location, can insert a call to SOURCE-LOCATION in the
          generated code and safe the result in a appropriate place.
          SOURCE-LOCATION is a compiler-macro and returns a quoted struct
          with the source info.
      
          The patch adds the definition for SOURCE-LOCATION some
          modifications for the defclass, defgeneric and defmethod macros.
          Classes, generic functions and methods have already a "source"
          slot and the result of SOURCE-LOCATION is just stored into that
          slot.  (The source slot contains currently only the *loadpath*,
          which is is not very useful, if the fasl file is in a different
          directory than the source file.)
      f4f6325e
    • rtoy's avatar
      Add WITH-UNBOUNDED-INTERVAL-ON-ERROR macro to catch errors · 7e328579
      rtoy authored
      during interval arithmetic and returns a doubly unbounded INTERVAL.  Use this
      in the INTERVAL-* routines.
      
      This is intended to fix the ansi-test failure misc.89.  The approach is
      rather heavy-handed, and a better solution is desirable.
      7e328579
    • rtoy's avatar
      debug-dump.lisp · 7ef21c40
      rtoy authored
       revision 1.10.1.3
       date: 90/04/13 12:11:22;  author: ram;  state: Exp;  lines added/del: 8/3
       Changed block dumping to notice when the successor is in a different
       environment (due to a TR call).
       ----------------------------
       revision 1.10.1.2
       date: 90/04/08 17:54:38;  author: ram;  state: Exp;  lines added/del: 2/2
       old-cont => old-fp
       ----------------------------
       revision 1.10.1.1
       date: 90/03/27 12:12:06;  author: ram;  state: Exp;  lines added/del: 1/0
       Added support for file comments.
      7ef21c40
  16. Apr 01, 2004
    • rtoy's avatar
      Lynn Quam on cmucl-imp on 2004-03-30 says · b6353a20
      rtoy authored
      (defun foo (f d)
        (declare (type (simple-array single-float (*)) f)
                 (type (simple-array double-float (*)) d))
        (setf (aref f 0) (aref d 0)))
      
      doesn't produce any warnings and generates completely bogus code.
      
      Don't know what the real answer solution is, but turning off the
      assert-continuation-type for a single-use continuation fixes this,
      which is what 18a used to do.  There are probably other bugs that this
      hides.
      b6353a20
  17. Mar 29, 2004
  18. Mar 24, 2004
    • emarsden's avatar
      · 39828da8
      emarsden authored
       - component names may be non-pretty-printable
      39828da8
  19. Jan 19, 2004
    • toy's avatar
      o Fix INTERVAL-RANGE-INFO some more. Put back the previous change · 335f876a
      toy authored
        (that we backed out) so (abs (the (double-float 0d0) x)) produces
        the correct result.
      o Add a kludge to INTERVAL-RANGE-INFO to handle the case of an
        interval -0.0 to 0.0 specially.  INTERVAL-RANGE-INFO should return
        NIL instead of '- for this.
      o The fixes to INTERVAL-RANGE-INFO tickle a bug in INTERVAL-SPLIT
        where we weren't correctly splitting the the interval [-0.0, 0d0]
        into 2 intervals correctly.  This was causing the compiler to loop
        forever deriving things.
      
      This is all a bit kludgy.  Dealing with signed-zeroes is a pain.
      335f876a
  20. Jan 17, 2004
  21. Jan 16, 2004
  22. Jan 15, 2004
    • toy's avatar
      Some micro-optimizations · 88ca1799
      toy authored
      o MOVE-FROM-SIGNED uses a shorter sequence of instructions with fewer
        branch instructions to figure out if the number is a fixnum.
      o MOVE-FROM-UNSIGNED uses shorter sequence of instructions to set the
        bignum correctly.
      88ca1799
  23. Jan 10, 2004
    • toy's avatar
      o INTERVAL-RANGE-INFO was not returning the correct result for -0.0. · 259cafa6
      toy authored
        This shows up in deriving the type of (abs (the (double-float
        0d0))), which was (double-float 0d0), but should have been (or
        (member 0d0) (double-float (0d0)).
      
      o In TWO-ARG-DERIVE-TYPE, use our own same-leaf-ref-p in place of the
        real same-leaf-ref-p.  We don't care if the leaf is not constant,
        only that they are the same leaf.  This shows up in Eric Marsden's
        cl-bench where CMUCL was not able to deduce that z^2 is positive in
        mandelbrot/dfloat.
      259cafa6
Loading