/[cmucl]/src/compiler/ir1opt.lisp
ViewVC logotype

Diff of /src/compiler/ir1opt.lisp

Parent Directory Parent Directory | Revision Log Revision Log | View Patch Patch

revision 1.41 by wlott, Wed Feb 19 16:15:21 1992 UTC revision 1.42 by ram, Wed Apr 1 13:38:17 1992 UTC
# Line 1169  Line 1169 
1169  ;;;  ;;;
1170  (defun delete-let (fun)  (defun delete-let (fun)
1171    (declare (type clambda fun))    (declare (type clambda fun))
1172    (assert (eq (functional-kind fun) :let))    (assert (member (functional-kind fun) '(:let :mv-let)))
1173    (note-unreferenced-vars fun)    (note-unreferenced-vars fun)
1174    (let ((call (let-combination fun)))    (let ((call (let-combination fun)))
1175      (flush-dest (combination-fun call))      (flush-dest (basic-combination-fun call))
1176      (unlink-node call)      (unlink-node call)
1177      (unlink-node (lambda-bind fun))      (unlink-node (lambda-bind fun))
1178      (setf (lambda-bind fun) nil))      (setf (lambda-bind fun) nil))
# Line 1587  Line 1587 
1587                   (dolist (arg (combination-args node))                   (dolist (arg (combination-args node))
1588                     (flush-dest arg))                     (flush-dest arg))
1589                   (unlink-node node))))))                   (unlink-node node))))))
1590            (mv-combination
1591             (when (eq (basic-combination-kind node) :local)
1592               (let ((fun (combination-lambda node)))
1593                 (when (dolist (var (lambda-vars fun) t)
1594                         (when (or (leaf-refs var)
1595                                   (lambda-var-sets var))
1596                           (return nil)))
1597                   (flush-dest (first (basic-combination-args node)))
1598                   (delete-let fun)))))
1599          (exit          (exit
1600           (let ((value (exit-value node)))           (let ((value (exit-value node)))
1601             (when value             (when value

Legend:
Removed from v.1.41  
changed lines
  Added in v.1.42

  ViewVC Help
Powered by ViewVC 1.1.5