Fix bug 242 for fd-streams
[sbcl.git] / src / assembly / ppc / arith.lisp
index 8cb8c42..c19a901 100644 (file)
@@ -31,7 +31,7 @@
    (:temp ocfp any-reg ocfp-offset))
  
   ; Clear the damned "sticky overflow" bit in :cr0 and :xer
-  (inst mcrxr :cr0)
+  (inst mtxer zero-tn)
   (inst or temp x y)
   (inst andi. temp temp 3)
   (inst bne DO-STATIC-FUN)
@@ -77,7 +77,7 @@
    (:temp ocfp any-reg ocfp-offset))
 
   ; Clear the damned "sticky overflow" bit in :cr0
-  (inst mcrxr :cr0)
+  (inst mtxer zero-tn)
 
   (inst or temp x y)
   (inst andi. temp temp 3)
    (:temp ocfp any-reg ocfp-offset))
 
   ;; If either arg is not a fixnum, call the static function.  But first ...
-  (inst mcrxr :cr0)
+  (inst mtxer zero-tn)
 
   (inst or temp x y)
   (inst andi. temp temp 3)
 
                          (:res quo any-reg nl2-offset)
                          (:res rem any-reg nl0-offset))
-  (assert (location= rem dividend))
+  (aver (location= rem dividend))
   (let ((error (generate-error-code nil division-by-zero-error
                                    dividend divisor)))
     (inst cmpwi divisor 0)
                          (:res quo any-reg nl2-offset)
                          (:res rem any-reg nl0-offset))
   
-  (assert (location= rem dividend))
+  (aver (location= rem dividend))
   (let ((error (generate-error-code nil division-by-zero-error
                                    dividend divisor)))
     (inst cmpwi divisor 0)