Changeset 11956


Ignore:
Timestamp:
05/26/09 20:46:15 (12 years ago)
Author:
ehuelsmann
Message:

Improved integer type derivation for MINUS

  • fixes some tests in ABCL's test suite.
File:
1 edited

Legend:

Unmodified
Added
Removed
  • trunk/abcl/src/org/armedbear/lisp/compiler-pass2.lisp

    r11927 r11956  
    61896189
    61906190(define-int-bounds-derivation - (low1 high1 low2 high2)
    6191     (values (and low1 low2 (- low1 low2))
    6192             (and high1 high2 (- high1 high2))))
     6191  (values (when (and low1 high2) ;; low1 or high2 undefined: no lower bound
     6192            (if low2
     6193                (min (- low1 low2)
     6194                     (- low1 high2))
     6195                ;; low2 undefined: no effect on lower bound
     6196                (- low1 high2)))
     6197          (when (and high1 low2) ;; high1 or low2 undefined: no upper bound
     6198            (if high2
     6199                (max (- high1 low2)
     6200                     (- high1 high2))
     6201                ;; high2 undefined: no effect on upper bound
     6202                (- high1 low2)))))
    61936203
    61946204(defun derive-compiler-types (args op)
Note: See TracChangeset for help on using the changeset viewer.