(hash-table-insert!) If `hash' is false, do not link the resulting
authorChris Hanson <org/chris-hanson/cph>
Fri, 3 Jun 1988 14:58:15 +0000 (14:58 +0000)
committerChris Hanson <org/chris-hanson/cph>
Fri, 3 Jun 1988 14:58:15 +0000 (14:58 +0000)
element into a hash bucket -- just save it in the value chain.

v7/src/compiler/rtlopt/rcseht.scm

index 6dec14e3bdece0ac955927675c82051677ff611c..c8c5b420b2bc80b6e392ff12c09320758dee6445 100644 (file)
@@ -1,6 +1,6 @@
 #| -*-Scheme-*-
 
-$Header: /Users/cph/tmp/foo/mit-scheme/mit-scheme/v7/src/compiler/rtlopt/rcseht.scm,v 4.2 1987/12/30 07:13:28 cph Exp $
+$Header: /Users/cph/tmp/foo/mit-scheme/mit-scheme/v7/src/compiler/rtlopt/rcseht.scm,v 4.3 1988/06/03 14:58:15 cph Exp $
 
 Copyright (c) 1987 Massachusetts Institute of Technology
 
@@ -92,10 +92,12 @@ MIT in each case. |#
   (let ((element (make-element expression))
        (cost (rtl:expression-cost expression)))
     (set-element-cost! element cost)
-    (let ((next (hash-table-ref hash)))
-      (set-element-next-hash! element next)
-      (if next (set-element-previous-hash! next element)))
-    (hash-table-set! hash element)
+    (if hash
+       (begin
+         (let ((next (hash-table-ref hash)))
+           (set-element-next-hash! element next)
+           (if next (set-element-previous-hash! next element)))
+         (hash-table-set! hash element)))
     (cond ((not class)
           (set-element-first-value! element element))
          ((< cost (element-cost class))