- Make assignments use their own caches, distinct from those use by
authorGuillermo J. Rozas <edu/mit/csail/zurich/gjr>
Mon, 5 Oct 1987 20:25:28 +0000 (20:25 +0000)
committerGuillermo J. Rozas <edu/mit/csail/zurich/gjr>
Mon, 5 Oct 1987 20:25:28 +0000 (20:25 +0000)
references.
- Turn uuo links on by default.
- Partly implement the CONSTANT declaration.
- Add some more declaration language (ALL and NONE).
- Make the variable set be computed at the right point during graph
construction.

v7/src/compiler/machines/bobcat/dassm2.scm
v7/src/compiler/machines/bobcat/lapgen.scm
v7/src/compiler/rtlbase/rtlty1.scm
v7/src/compiler/rtlgen/rgstmt.scm
v7/src/compiler/rtlopt/ralloc.scm

index d532e61f032e3c46fc27e422711450cd0cd00c4a..85734cc99ad08e8cf731885d1546d07adac3ff96 100644 (file)
@@ -1,6 +1,6 @@
 #| -*-Scheme-*-
 
-$Header: /Users/cph/tmp/foo/mit-scheme/mit-scheme/v7/src/compiler/machines/bobcat/dassm2.scm,v 1.1 1987/08/07 17:12:40 cph Exp $
+$Header: /Users/cph/tmp/foo/mit-scheme/mit-scheme/v7/src/compiler/machines/bobcat/dassm2.scm,v 1.2 1987/10/05 20:24:22 jinx Exp $
 
 Copyright (c) 1987 Massachusetts Institute of Technology
 
@@ -155,7 +155,7 @@ MIT in each case. |#
                          (make-losing-instruction 'W))))))))
 
 (define (undefined-instruction)
-  ;; This losing assignment removes a 'call/cc'. Too bad.
+  ;; This losing assignment removes a 'cwcc'. Too bad.
   (set! *valid? false)
   '())
 
@@ -201,7 +201,9 @@ MIT in each case. |#
            #x0228
            '(uuo-link uuo-link-trap cache-reference-apply
                       safe-reference-trap unassigned?-trap
-                      cache-variable-multiple uuo-link-multiple))))
+                      cache-variable-multiple uuo-link-multiple
+                      &+ &- &* &/ &= &< &> 1+ -1+ zero? positive? negative?
+                      cache-assignment cache-assignment-multiple operator-trap))))
     (make-table)))
 \f
 (define-integrable (lookup-special-register reg table)
index 03c906374a2f431b6af11c940801ae2b56928ed9..12415ca06086c2d68aaa8906b014d2124d999901 100644 (file)
@@ -1,6 +1,6 @@
 #| -*-Scheme-*-
 
-$Header: /Users/cph/tmp/foo/mit-scheme/mit-scheme/v7/src/compiler/machines/bobcat/lapgen.scm,v 1.189 1987/09/03 05:14:16 jinx Exp $
+$Header: /Users/cph/tmp/foo/mit-scheme/mit-scheme/v7/src/compiler/machines/bobcat/lapgen.scm,v 1.190 1987/10/05 20:25:28 jinx Exp $
 
 Copyright (c) 1987 Massachusetts Institute of Technology
 
@@ -243,7 +243,6 @@ MIT in each case. |#
 (define (address-register? register)
   (and (< register 16)
        (>= register 8)))
-
 (define-integrable (lap:ea-keyword expression)
   (car expression))
 
@@ -280,7 +279,8 @@ MIT in each case. |#
     assignment-trap)
   (define-entries #x0228 uuo-link uuo-link-trap cache-reference-apply
     safe-reference-trap unassigned?-trap cache-variable-multiple
-    uuo-link-multiple &+ &- &* &/ &= &< &> 1+ -1+ zero? positive? negative?))
+    uuo-link-multiple &+ &- &* &/ &= &< &> 1+ -1+ zero? positive? negative?
+    cache-assignment cache-assignment-multiple operator-trap))
 
 (define-integrable reg:compiled-memtop (INST-EA (@A 6)))
 (define-integrable reg:environment (INST-EA (@AO 6 #x000C)))
index b7275de880ff246ab7a608584753b52a7763745a..48169623b0453f0ab5017aede7c275dd84799238 100644 (file)
@@ -1,6 +1,6 @@
 #| -*-Scheme-*-
 
-$Header: /Users/cph/tmp/foo/mit-scheme/mit-scheme/v7/src/compiler/rtlbase/rtlty1.scm,v 1.13 1987/09/03 05:15:29 jinx Exp $
+$Header: /Users/cph/tmp/foo/mit-scheme/mit-scheme/v7/src/compiler/rtlbase/rtlty1.scm,v 1.14 1987/10/05 20:22:15 jinx Exp $
 
 Copyright (c) 1987 Massachusetts Institute of Technology
 
@@ -47,6 +47,7 @@ MIT in each case. |#
 (define-rtl-expression cons-pointer rtl: type datum)
 (define-rtl-expression constant % value)
 (define-rtl-expression variable-cache rtl: name)
+(define-rtl-expression assignment-cache rtl: name)
 (define-rtl-expression entry:continuation % continuation)
 (define-rtl-expression entry:procedure % procedure)
 (define-rtl-expression offset-address rtl: register number)
index 5f2a47dd934e7fe0512fd3bfee818a3fc6710ab9..ede0e7dd535f84730f4011d6332ea22bdd6902b2 100644 (file)
@@ -1,6 +1,6 @@
 #| -*-Scheme-*-
 
-$Header: /Users/cph/tmp/foo/mit-scheme/mit-scheme/v7/src/compiler/rtlgen/rgstmt.scm,v 1.8 1987/06/23 02:15:57 cph Exp $
+$Header: /Users/cph/tmp/foo/mit-scheme/mit-scheme/v7/src/compiler/rtlgen/rgstmt.scm,v 1.9 1987/10/05 20:21:05 jinx Exp $
 
 Copyright (c) 1987 Massachusetts Institute of Technology
 
@@ -109,7 +109,7 @@ MIT in each case. |#
   (let ((temp (make-temporary)))
     (let ((cell (rtl:make-fetch temp)))
       (let ((contents (rtl:make-fetch cell)))
-       (let ((n1 (rtl:make-assignment temp (rtl:make-variable-cache name)))
+       (let ((n1 (rtl:make-assignment temp (rtl:make-assignment-cache name)))
              (n2 (rtl:make-type-test (rtl:make-object->type contents)
                                      (ucode-type reference-trap)))
              (n3 (rtl:make-unassigned-test contents))
index 129266643cfa757d9c3dcad184e36be893d65b45..90855ed017e055879ad0318ec43ec220cc865860 100644 (file)
@@ -1,6 +1,6 @@
 #| -*-Scheme-*-
 
-$Header: /Users/cph/tmp/foo/mit-scheme/mit-scheme/v7/src/compiler/rtlopt/ralloc.scm,v 1.12 1987/08/07 17:06:53 cph Exp $
+$Header: /Users/cph/tmp/foo/mit-scheme/mit-scheme/v7/src/compiler/rtlopt/ralloc.scm,v 1.13 1987/10/05 20:21:30 jinx Exp $
 
 Copyright (c) 1987 Massachusetts Institute of Technology
 
@@ -50,7 +50,8 @@ MIT in each case. |#
     (fluid-let ((*current-rgraph* rgraph))
       (walk-bblocks n-registers
                    (let ((bblocks (rgraph-bblocks rgraph)))
-                     (set-rgraph-bblocks! rgraph false))))))
+                     (set-rgraph-bblocks! rgraph false)
+                     bblocks)))))
 
 (define (walk-bblocks n-registers bblocks)
   ;; First, renumber all the registers remaining to be allocated.