>>>>> "Nicolas" == Nicolas Neuss <[EMAIL PROTECTED]> writes:
>> It looks like somewhere in the compiler there is an O(n^2) algorithm
>> which is the bottleneck in the compilation for your program. This
>> isn't entirely surprising to me: many of the phases in a compiler have
>> problems with solutions easily expressed in O(n^2) time or worse.
>> Have you tried profiling bits of the compiler to see where most of the
>> time is spent?
Nicolas> I did it now. The culprit is the function IR1-OPTIMIZE in
Nicolas> "compiler/ir1opt.lisp".
Nicolas> In this routine there is a nested loop over blocks at the beginning
Nicolas> which
Nicolas> looks like O(n^2). I would also be interested to profile
Nicolas> IR1-OPTIMIZE-BLOCK, but this does not work:
Nicolas> "Warning: Ignoring undefined function C::IR1-OPTIMIZE-BLOCK"
Recompile ir1opt.lisp with :block-compile nil and reload ir1opt. You
will be able to see ir1-optimize-block now. (It was block-compiled
away.)
Ray