[Openmcl-devel] Short-float in 1.1_060826...
gb at clozure.com
Mon Aug 28 16:34:35 PDT 2006
Thanks. The bug (which has been there for months and only affects PPC32)
is in the kernel.
cvs diff -u -r1.93 ppc-spentry.s
--- lisp-kernel/ppc-spentry.s 21 Jun 2006 21:15:19 -0000 1.93
+++ lisp-kernel/ppc-spentry.s 28 Aug 2006 23:17:51 -0000
@@ -4333,7 +4333,7 @@
- __(cmpwi cr7,imm0,tag_misc)
+ __(cmpwi cr7,imm2,tag_misc)
What that's saying is that in the checked-in version, the code typechecks
to ensure that the value being stored in the single-float vector is in
fact a single-float by first getting its tag to the imm2 register and
then comparing the (random) value in the imm0 register to "tag_misc";
it'd work better if that comparison ("cmpwi") involved imm2 instead of
On Tue, 29 Aug 2006, Alberto Santini wrote:
> I report you a little feedback about 1.1_060826.
> Compiling the code (dated 1991) you can find at this url:
> I see some difference between 1.0 and 1.1_060826.
> With 1.0 this example works fine, but not with 1.1:
> (make-array 10 :element-type 'short-float :initial-element 0.0)
> With 1.1 it doesn't work using nor (coerce 'short-float 0.0)
> nor 0.0S0 in :initial-element.
> But with 1.1 the above code is compiled without problem: ok we have
> a problem with short-float. Compiling with 1.0 the above code gives
> the following error:
> While compiling an anonymous function :
> unsupported vector type: :SINGLE-FLOAT-VECTOR
> [Condition of type CCL::COMPILE-TIME-PROGRAM-ERROR]
> Sorry... I haven't the knowledge to investigate further.
> Thanks in advance,
> Alberto Santini
> Openmcl-devel mailing list
> Openmcl-devel at clozure.com
More information about the Openmcl-devel