[Openmcl-devel] CCL LAP info...

Jon S. Anthony j-anthony at comcast.net
Sat Feb 13 19:01:39 UTC 2010


I've been hacking some LAP functions (x86 only).  I've looked/googled
around but don't see any basic description (or detailed for that matter)
of the "proper" protocol for writing and using them.  The earlier
comments about toggle tagging temps as immediates/nodes in X8632 was
very useful!  And I have found some small bits of information (for
example, what the various @ $ %, etc forms are for operand defs) in the
source.  And looking over various example LAPs in the code base (and
using a few x86 ref manuals) I have been able to get a decent enough
idea to get some things working.

So, any overview on this stuff available?  I suppose my major concerns
are about proper protocol of using registers.  BTW, are all registers
saved on the stack at point of call?  I suppose that is an x86 question
more than a CCL lap question, but if you know the answer, that would be
cool!  Also, any info on return results from function.  I have been able
(by reading, getting an idea and then cribbing some example code) to
return single values in arg_z, but don't know if that is the standard
return reg or what.

Overall, I think the seamless integration of these things with user
level Lisp in CCL is really very nice and impressive!

Thanks for any info or pointers to doc or anything else!


More information about the Openmcl-devel mailing list