Add missing rule for type-test of offset memory location.
authorChris Hanson <org/chris-hanson/cph>
Thu, 31 Dec 1987 10:26:18 +0000 (10:26 +0000)
committerChris Hanson <org/chris-hanson/cph>
Thu, 31 Dec 1987 10:26:18 +0000 (10:26 +0000)
v7/src/compiler/machines/bobcat/rules2.scm

index 725b1e29c8cecf66c91c260d3adf397c109d761f..ddf95d6d01311e9fedbf785c5d1eaffe30ac35ef 100644 (file)
@@ -1,6 +1,6 @@
 #| -*-Scheme-*-
 
-$Header: /Users/cph/tmp/foo/mit-scheme/mit-scheme/v7/src/compiler/machines/bobcat/rules2.scm,v 4.1 1987/12/30 07:05:55 cph Exp $
+$Header: /Users/cph/tmp/foo/mit-scheme/mit-scheme/v7/src/compiler/machines/bobcat/rules2.scm,v 4.2 1987/12/31 10:26:18 cph Exp $
 
 Copyright (c) 1987 Massachusetts Institute of Technology
 
@@ -64,6 +64,12 @@ MIT in each case. |#
     (LAP (RO L L (& 8) ,reference)
         ,(test-byte type reference))))
 
+(define-rule predicate
+  (TYPE-TEST (OBJECT->TYPE (OFFSET (REGISTER (? register)) (? offset)))
+            (? type))
+  (set-standard-branches! 'EQ)
+  (LAP ,(test-byte type (indirect-reference! register offset))))
+
 (define-rule predicate
   (UNASSIGNED-TEST (REGISTER (? register)))
   (set-standard-branches! 'EQ)