[Bug-openmcl] OpenMCL mis-assembles some AltiVec instructions (fwd)

Gary Byers gb at clozure.com
Wed Nov 19 10:11:55 MST 2003



---------- Forwarded message ----------
Date: Mon, 10 Nov 2003 01:20:37 +0100
From: Oliver Markovic <entrox at entrox.org>
To: gb at clozure.com
Subject: OpenMCL mis-assembles some AltiVec instructions

Hi,

While playing around with the LAP functions, I tripped over something
strange:
the VSPLTISB instruction seems to be mis-assembled somehow, resulting
in either
something completely different or an illegal instruction. I've checked
that the opcodes in ppc-asm.lisp apparently match with the ones
described in the AltiVec PEM, but that is a part
of OpenMCL that's way over my head. Here's an example:

? (lisp-implementation-version)
"Version (Alpha: Darwin) 0.14-031018"
? (defppclapfunction foo ()
     (vspltisb vr30 0))
FOO
? (disassemble 'foo)
   (VADDUBM VR30 VR0 VR0)
? (defppclapfunction foo ()
     (vspltisb vr31 -1))
FOO
? (disassemble 'foo)
 > Error in process listener(5): Unknown PPC instruction : #x13E0FFFF
 > While executing: PPC-DISASM-1

I encountered this, when I tried to store the result of some
calculations back into an array.
The rest of the code is fine - if I try to call it, it dies with an
illegal instruction where the VSPLTISB
should be.

greets,
--
   Oliver Markovic



More information about the Bug-openmcl mailing list