Added rule for OVERFLOW-TEST in support of generic arithmetic.
authorMark Friedman <edu/mit/csail/zurich/markf>
Thu, 20 Oct 1988 18:24:59 +0000 (18:24 +0000)
committerMark Friedman <edu/mit/csail/zurich/markf>
Thu, 20 Oct 1988 18:24:59 +0000 (18:24 +0000)
v7/src/compiler/machines/bobcat/rules2.scm

index bf866b5015d0a11ab8ee857af569d8d665a88b77..54692a746028906799703121f9ad507f8cd55f2b 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.5 1988/08/29 22:49:54 cph Exp $
+$Header: /Users/cph/tmp/foo/mit-scheme/mit-scheme/v7/src/compiler/machines/bobcat/rules2.scm,v 4.6 1988/10/20 18:24:59 markf Exp $
 
 Copyright (c) 1988 Massachusetts Institute of Technology
 
@@ -276,8 +276,8 @@ MIT in each case. |#
   (guarantee-signed-fixnum constant)
   (let ((reference (standard-register-reference register 'DATA)))
     (if (effective-address/register? reference)
-       (LAP (CMP L (& ,constant) ,reference))
-       (LAP (CMPI L (& ,constant) ,reference)))))
+       (LAP (CMP L (& ,(* constant #x100)) ,reference))
+       (LAP (CMPI L (& ,(* constant #x100)) ,reference)))))
 
 (define-rule predicate
   (FIXNUM-PRED-2-ARGS (? predicate)
@@ -301,8 +301,7 @@ MIT in each case. |#
 (define (fixnum-predicate/memory*constant memory constant cc)
   (set-standard-branches! cc)
   (guarantee-signed-fixnum constant)
-  (LAP (CMPI L (& ,constant) ,memory)))
-
+  (LAP (CMPI L (& ,(* constant #x100)) ,memory)))
 (define-rule predicate
   (FIXNUM-PRED-2-ARGS (? predicate)
                      (? memory)