X-Git-Url: http://repo.macrolet.net/gitweb/?a=blobdiff_plain;f=src%2Fcompiler%2Fconstraint.lisp;h=a6462843dfae140aedf6129ee86029b979d97f3b;hb=4a0ab5193096ca70dbbf43bb21418544f6d018b7;hp=584f65601af358ed16edbae8069628e34d87d307;hpb=a32957d0c66c8cab6a358b8273a89acd7355f210;p=sbcl.git diff --git a/src/compiler/constraint.lisp b/src/compiler/constraint.lisp index 584f656..a646284 100644 --- a/src/compiler/constraint.lisp +++ b/src/compiler/constraint.lisp @@ -266,18 +266,12 @@ ;;; Exactly the same as CONSTRAIN-INTEGER-TYPE, but for float numbers. (defun constrain-float-type (x y greater or-equal) (declare (type numeric-type x y)) - ;; FIXME: The comment here used to say - ;; Unless #!+SB-PROPAGATE-FLOAT-TYPE, then SB!C::BOUND-VALUE (used in - ;; the code below) is not defined, so we just return X without - ;; trying to calculate additional constraints. - ;; But as of sbcl-0.6.11.26, SB!C::BOUND-VALUE has been renamed to - ;; SB!INT:TYPE-BOUND-NUMBER and is always defined, so probably the - ;; conditionalization should go away. - #!-sb-propagate-float-type (declare (ignore greater or-equal)) + (declare (ignorable x y)) ; for CROSS-FLOAT-INFINITY-KLUDGE (aver (eql (numeric-type-class x) 'float)) (aver (eql (numeric-type-class y) 'float)) - #!-sb-propagate-float-type x - #!+sb-propagate-float-type + #+sb-xc-host ; (See CROSS-FLOAT-INFINITY-KLUDGE.) + x + #-sb-xc-host ; (See CROSS-FLOAT-INFINITY-KLUDGE.) (labels ((exclude (x) (cond ((not x) nil) (or-equal x)