The receiver-offset for message senders was including the pushed
authorChris Hanson <org/chris-hanson/cph>
Thu, 7 May 1987 04:36:15 +0000 (04:36 +0000)
committerChris Hanson <org/chris-hanson/cph>
Thu, 7 May 1987 04:36:15 +0000 (04:36 +0000)
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.

v7/src/compiler/rtlgen/rgcomb.scm

index 70b5fc8aeb06945baef34fd2e008644e6cdb8f7a..553d3bad68aac31a1c495c44d59fc28d682fb145 100644 (file)
@@ -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