using it as such; it might be an expression instead.
#| -*-Scheme-*-
-$Header: /Users/cph/tmp/foo/mit-scheme/mit-scheme/v7/src/compiler/fgopt/closan.scm,v 4.11 1989/12/02 21:19:29 cph Exp $
+$Header: /Users/cph/tmp/foo/mit-scheme/mit-scheme/v7/src/compiler/fgopt/closan.scm,v 4.12 1990/03/21 02:11:13 cph Exp $
-Copyright (c) 1987, 1988, 1989 Massachusetts Institute of Technology
+Copyright (c) 1987, 1988, 1989, 1990 Massachusetts Institute of Technology
This material was developed by the Scheme project at the Massachusetts
Institute of Technology, Department of Electrical Engineering and
(let loop ((block* block*))
(if block*
(let ((procedure (block-procedure block*)))
- (if (eq? true (procedure-closure-context procedure))
+ (if (and (rvalue/procedure? procedure)
+ (eq? (procedure-closure-context procedure)
+ true))
(close-non-descendent-callees! procedure block)
(loop (block-parent block*)))))))))
(if (not entry)
#| -*-Scheme-*-
-$Header: /Users/cph/tmp/foo/mit-scheme/mit-scheme/v7/src/compiler/fgopt/sideff.scm,v 1.5 1989/03/14 19:38:55 cph Rel $
+$Header: /Users/cph/tmp/foo/mit-scheme/mit-scheme/v7/src/compiler/fgopt/sideff.scm,v 1.6 1990/03/21 02:11:37 cph Exp $
-Copyright (c) 1988 Massachusetts Institute of Technology
+Copyright (c) 1988, 1990 Massachusetts Institute of Technology
This material was developed by the Scheme project at the Massachusetts
Institute of Technology, Department of Electrical Engineering and
(define (simplify-combination! value)
(combination/constant! app
(r/lvalue->rvalue (combination/context app) value))
- (enqueue-node! (block-procedure (application-block app))))
+ (let ((procedure (block-procedure (application-block app))))
+ (if (rvalue/procedure? procedure)
+ (enqueue-node! procedure))))
(define (check value op-vals)
(if (and value
#| -*-Scheme-*-
-$Header: /Users/cph/tmp/foo/mit-scheme/mit-scheme/v7/src/compiler/machines/bobcat/make.scm-68040,v 4.69 1990/03/14 21:06:31 cph Exp $
+$Header: /Users/cph/tmp/foo/mit-scheme/mit-scheme/v7/src/compiler/machines/bobcat/make.scm-68040,v 4.70 1990/03/21 02:12:51 cph Exp $
Copyright (c) 1988, 1989, 1990 Massachusetts Institute of Technology
((package/reference (find-package name) 'INITIALIZE-PACKAGE!)))
'((COMPILER MACROS)
(COMPILER DECLARATIONS)))
-(add-system! (make-system "Liar (Motorola MC68020)" 4 69 '()))
\ No newline at end of file
+(add-system! (make-system "Liar (Motorola MC68020)" 4 70 '()))
\ No newline at end of file
#| -*-Scheme-*-
-$Header: /Users/cph/tmp/foo/mit-scheme/mit-scheme/v7/src/compiler/rtlgen/rgstmt.scm,v 4.12 1990/02/02 18:40:04 cph Exp $
+$Header: /Users/cph/tmp/foo/mit-scheme/mit-scheme/v7/src/compiler/rtlgen/rgstmt.scm,v 4.13 1990/03/21 02:12:01 cph Exp $
Copyright (c) 1988, 1990 Massachusetts Institute of Technology
((let ((variable (virtual-return/target-lvalue return)))
(and variable
(variable-in-cell? variable)
- (procedure-inline-code?
- (block-procedure (variable-block variable)))))
+ (let ((procedure
+ (block-procedure (variable-block variable))))
+ (and (rvalue/procedure? procedure)
+ (procedure-inline-code? procedure)))))
(generate/rvalue operand scfg*scfg->scfg!
(lambda (expression)
(rtl:make-push (rtl:make-cell-cons expression)))))