Added (TYPE-TEST (OBJECT->TYPE (REGISTER (? reg))) 0) rule.
authorssmith <ssmith>
Wed, 1 Nov 1995 21:04:32 +0000 (21:04 +0000)
committerssmith <ssmith>
Wed, 1 Nov 1995 21:04:32 +0000 (21:04 +0000)
v8/src/compiler/machines/i386/rules2.scm

index 3730ad4c332a94ec6513b522a34123a607b02c10..4d6923e39aaf6675fee52ea5ac94fc5c09d1e61f 100644 (file)
@@ -1,6 +1,6 @@
 #| -*-Scheme-*-
 
-$Id: rules2.scm,v 1.3 1995/05/24 00:19:54 ssmith Exp $
+$Id: rules2.scm,v 1.4 1995/11/01 21:04:32 ssmith Exp $
 
 Copyright (c) 1992-1993 Massachusetts Institute of Technology
 
@@ -54,6 +54,13 @@ MIT in each case. |#
   (set-equal-branches!)
   (LAP (CMP B ,(reference-alias-register! register 'GENERAL) (&U ,type))))
 
+(define-rule predicate
+  ;; Branch if virtual register contains the specified type number
+  (TYPE-TEST (OBJECT->TYPE (REGISTER (? register))) 0)
+  (set-specific-branches! 'JB 'JAE)
+  (LAP (CMP W ,(reference-alias-register! register 'GENERAL) (&U ,signed-fixnum/upper-limit))))
+
+
 (define-rule predicate
   (EQ-TEST (REGISTER (? register-1)) (REGISTER (? register-2)))
   (set-equal-branches!)