[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
akcl 599 compiler (interpreted/compiled)
I am trying to use akcl 599. I have just rebuild gcc 1.39.1 and
also performed a make stage2, to prove that the compiler seemed to be
behaving correctly. I am compiling akcl 599 using the mp386 standard
definitions. (except that I don't have FIONREAD and so comment out
the LISTEN thing in att.h.
Now. The problem is that akcl 599 compiles fine. It makes a saved_kcl
in the first pass with the interpreted compiler. Great. In the second
pass we go back and recompile everything for a saved_kcl with a compiled
However, at this point, when I use akcl the compiler doesn't work properly.
For example, in the recent post of Schelter with the pi-inv function,
if I attempt to compile it I get a C file with all kinds of strange things
in it. (Like mulii(V24,Cnil), or dvmdii(/* ... */V22,Cnil0) (obviously
missing a comma), etc.) A lot of the variables for inlining are coming
out as Cnil.
If I reload the interpreted compiler at this time (all the lisp files).
Things work great. I can compile pi-inv and run it like I would expect.
So why I am having such a strange problem? Surely this doesn't have to do
with the old lexical vs. dynamic environments of older lisps :-).
I certainly don't like running an interpreted compiler. Nothing like watching
the interpreted compiler compile itself...
The last version I have compiled was 530 with no problems like this at all
(using the same gcc).
My next test is to try with cc (nothing like four hours or so to remake akcl
If anyone has any suggestions or thoughts I would sure appreciate them.
p.s. I will also be using the latest May day PCL (rev 4) from arisia. In
that release they have a turbo-closure patch for akcl that was directly
applicable to version 530. However there are some minor changes in 599
that make it slightly more work to apply the turbo-closure patch.
Has anyone does this? Is it really necessary to spped up pcl? I've noticed
that other patches have since been applied and are already in version 599,
why haven't the turbo-closure patches been applied?