From: Chris Hanson Date: Thu, 7 May 1987 04:36:15 +0000 (+0000) Subject: The receiver-offset for message senders was including the pushed X-Git-Tag: 20090517-FFI~13544 X-Git-Url: https://birchwood-abbey.net/git?a=commitdiff_plain;h=71943786a9de2ed619e4f97fc00f78a441e99754;p=mit-scheme.git The receiver-offset for message senders was including the pushed operands of a call. Since we are now using a frame pointer, it need only include the block frame size. The pushed operands will be taken care of by the LAP generator. --- diff --git a/v7/src/compiler/rtlgen/rgcomb.scm b/v7/src/compiler/rtlgen/rgcomb.scm index 70b5fc8ae..553d3bad6 100644 --- a/v7/src/compiler/rtlgen/rgcomb.scm +++ b/v7/src/compiler/rtlgen/rgcomb.scm @@ -1,6 +1,6 @@ #| -*-Scheme-*- -$Header: /Users/cph/tmp/foo/mit-scheme/mit-scheme/v7/src/compiler/rtlgen/rgcomb.scm,v 1.15 1987/05/07 00:20:53 cph Exp $ +$Header: /Users/cph/tmp/foo/mit-scheme/mit-scheme/v7/src/compiler/rtlgen/rgcomb.scm,v 1.16 1987/05/07 04:36:15 cph Exp $ Copyright (c) 1987 Massachusetts Institute of Technology @@ -348,13 +348,12 @@ MIT in each case. |# ;; The message sender will shift the new stack frame down to the ;; correct position when it is done, then reset the stack pointer. `(APPLY-CLOSURE ,number-pushed - ,(+ number-pushed - (block-frame-size (combination-block combination))))) + ,(block-frame-size (combination-block combination)))) (define (invocation-prefix/internal->ancestor combination number-pushed) (let ((block (combination-block combination))) `(APPLY-STACK ,number-pushed - ,(+ number-pushed (block-frame-size block)) + ,(block-frame-size block) ,(-1+ (block-ancestor-distance block