(return-from b3 a))))))))
-589))
'(-589 0)))
+
+;;; MISC.158
+(assert (zerop (funcall
+ (compile nil
+ '(lambda (a b c)
+ (declare (type (integer 79828 2625480458) a))
+ (declare (type (integer -4363283 8171697) b))
+ (declare (type (integer -301 0) c))
+ (if (equal 6392154 (logxor a b))
+ 1706
+ (let ((v5 (abs c)))
+ (logand v5
+ (logior (logandc2 c v5)
+ (common-lisp:handler-case
+ (ash a (min 36 22477)))))))))
+ 100000 0 0)))
+
+;;; MISC.152, 153: deleted code and iteration var type inference
+(assert (eql (funcall
+ (compile nil
+ '(lambda (a)
+ (block b5
+ (let ((v1 (let ((v8 (unwind-protect 9365)))
+ 8862008)))
+ (*
+ (return-from b5
+ (labels ((%f11 (f11-1) f11-1))
+ (%f11 87246015)))
+ (return-from b5
+ (setq v1
+ (labels ((%f6 (f6-1 f6-2 f6-3) v1))
+ (dpb (unwind-protect a)
+ (byte 18 13)
+ (labels ((%f4 () 27322826))
+ (%f6 -2 -108626545 (%f4))))))))))))
+ -6)
+ 87246015))
+
+(assert (eql (funcall
+ (compile nil
+ '(lambda (a)
+ (if (logbitp 3
+ (case -2
+ ((-96879 -1035 -57680 -106404 -94516 -125088)
+ (unwind-protect 90309179))
+ ((-20811 -86901 -9368 -98520 -71594)
+ (let ((v9 (unwind-protect 136707)))
+ (block b3
+ (setq v9
+ (let ((v4 (return-from b3 v9)))
+ (- (ignore-errors (return-from b3 v4))))))))
+ (t -50)))
+ -20343
+ a)))
+ 0)
+ -20343))
+
+;;; MISC.165
+(assert (eql (funcall
+ (compile
+ nil
+ '(lambda (a b c)
+ (block b3
+ (flet ((%f15
+ (f15-1 f15-2 f15-3
+ &optional
+ (f15-4
+ (flet ((%f17
+ (f17-1 f17-2 f17-3
+ &optional (f17-4 185155520) (f17-5 c)
+ (f17-6 37))
+ c))
+ (%f17 -1046 a 1115306 (%f17 b -146330 422) -337817)))
+ (f15-5 a) (f15-6 -40))
+ (return-from b3 -16)))
+ (multiple-value-call #'%f15 (values -519354 a 121 c -1905))))))
+ 0 0 -5)
+ -16))
+
+;;; MISC.172
+(assert (eql (funcall
+ (compile
+ nil
+ '(lambda (a b c)
+ (declare (notinline list apply))
+ (declare (optimize (safety 3)))
+ (declare (optimize (speed 0)))
+ (declare (optimize (debug 0)))
+ (labels ((%f12 (f12-1 f12-2)
+ (labels ((%f2 (f2-1 f2-2)
+ (flet ((%f6 ()
+ (flet ((%f18
+ (f18-1
+ &optional (f18-2 a)
+ (f18-3 -207465075)
+ (f18-4 a))
+ (return-from %f12 b)))
+ (%f18 -3489553
+ -7
+ (%f18 (%f18 150 -64 f12-1)
+ (%f18 (%f18 -8531)
+ 11410)
+ b)
+ 56362666))))
+ (labels ((%f7
+ (f7-1 f7-2
+ &optional (f7-3 (%f6)))
+ 7767415))
+ f12-1))))
+ (%f2 b -36582571))))
+ (apply #'%f12 (list 774 -4413)))))
+ 0 1 2)
+ 774))
+
+;;; MISC.173
+(assert (eql (funcall
+ (compile
+ nil
+ '(lambda (a b c)
+ (declare (notinline values))
+ (declare (optimize (safety 3)))
+ (declare (optimize (speed 0)))
+ (declare (optimize (debug 0)))
+ (flet ((%f11
+ (f11-1 f11-2
+ &optional (f11-3 c) (f11-4 7947114)
+ (f11-5
+ (flet ((%f3 (f3-1 &optional (f3-2 b) (f3-3 5529))
+ 8134))
+ (multiple-value-call #'%f3
+ (values (%f3 -30637724 b) c)))))
+ (setq c 555910)))
+ (if (and nil (%f11 a a))
+ (if (%f11 a 421778 4030 1)
+ (labels ((%f7
+ (f7-1 f7-2
+ &optional
+ (f7-3
+ (%f11 -79192293
+ (%f11 c a c -4 214720)
+ b
+ b
+ (%f11 b 985)))
+ (f7-4 a))
+ b))
+ (%f11 c b -25644))
+ 54)
+ -32326608))))
+ 1 2 3)
+ -32326608))
+
+;;; MISC.177, 182: IR2 copy propagation missed a hidden write to a
+;;; local lambda argument
+(assert
+ (equal
+ (funcall
+ (compile nil
+ '(lambda (a b c)
+ (declare (type (integer 804561 7640697) a))
+ (declare (type (integer -1 10441401) b))
+ (declare (type (integer -864634669 55189745) c))
+ (declare (ignorable a b c))
+ (declare (optimize (speed 3)))
+ (declare (optimize (safety 1)))
+ (declare (optimize (debug 1)))
+ (flet ((%f11
+ (f11-1 f11-2)
+ (labels ((%f4 () (round 200048 (max 99 c))))
+ (logand
+ f11-1
+ (labels ((%f3 (f3-1) -162967612))
+ (%f3 (let* ((v8 (%f4)))
+ (setq f11-1 (%f4)))))))))
+ (%f11 -120429363 (%f11 62362 b)))))
+ 6714367 9645616 -637681868)
+ -264223548))