[Openmcl-cvs-notifications] r12580 - /trunk/source/compiler/PPC/ppc2.lisp
rme at clozure.com
rme at clozure.com
Sat Aug 15 03:28:40 EDT 2009
Author: rme
Date: Sat Aug 15 03:28:40 2009
New Revision: 12580
Log:
In PPC2-%FIXNUM-TO-SINGLE, if vreg isn't a single-float reg, introduce
a temporary.
Modified:
trunk/source/compiler/PPC/ppc2.lisp
Modified: trunk/source/compiler/PPC/ppc2.lisp
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=
=3D=3D=3D
--- trunk/source/compiler/PPC/ppc2.lisp (original)
+++ trunk/source/compiler/PPC/ppc2.lisp Sat Aug 15 03:28:40 2009
@@ -9100,7 +9100,11 @@
*ppc2-reckless*)
(! trap-unless-fixnum r))
(! fixnum->fpr dreg r)
- (! double-to-single vreg dreg) =
+ (if (single-float-reg-p vreg)
+ (! double-to-single vreg dreg)
+ (with-fp-target (dreg) (sreg :single-float)
+ (! double-to-single sreg dreg)
+ (<- sreg)))
(^))))
=
(defppc2 ppc2-%double-float %double-float (seg vreg xfer arg)
More information about the Openmcl-cvs-notifications
mailing list