Change interpreter-call:cache-assignment to extract the type of the
authorChris Hanson <org/chris-hanson/cph>
Mon, 1 Jun 1987 16:06:11 +0000 (16:06 +0000)
committerChris Hanson <org/chris-hanson/cph>
Mon, 1 Jun 1987 16:06:11 +0000 (16:06 +0000)
cache reference before testing it.

v7/src/compiler/rtlgen/rgstmt.scm

index aaa2ad8156a3dd39c698798930528ac1d7ea6d31..9a5de501270975be006b55c0366010daf6445e98 100644 (file)
@@ -1,6 +1,6 @@
 #| -*-Scheme-*-
 
-$Header: /Users/cph/tmp/foo/mit-scheme/mit-scheme/v7/src/compiler/rtlgen/rgstmt.scm,v 1.4 1987/05/29 17:54:54 cph Exp $
+$Header: /Users/cph/tmp/foo/mit-scheme/mit-scheme/v7/src/compiler/rtlgen/rgstmt.scm,v 1.5 1987/06/01 16:06:11 cph Exp $
 
 Copyright (c) 1987 Massachusetts Institute of Technology
 
@@ -112,7 +112,8 @@ MIT in each case. |#
     (let ((cell (rtl:make-fetch temp)))
       (let ((contents (rtl:make-fetch cell)))
        (let ((n1 (rtl:make-assignment temp (rtl:make-variable-cache name)))
-             (n2 (rtl:make-type-test contents (ucode-type reference-trap)))
+             (n2 (rtl:make-type-test (rtl:make-object->type contents)
+                                     (ucode-type reference-trap)))
              (n3 (rtl:make-unassigned-test contents))
              (n4 (rtl:make-assignment cell value))
              (n5 (rtl:make-interpreter-call:cache-assignment cell value)))