[m-dev.] LCO

Fergus Henderson fjh at cs.mu.OZ.AU
Fri Sep 18 19:53:58 AEST 1998


On 18-Sep-1998, Erwan Jahier <Erwan.Jahier at irisa.fr> wrote:
> Zoltan Somogyi wrote:
> 
> > > 2) Is LCO switch off when tracing is on ?
> > 
> > Effectively, yes. The code of the exit event will prevent any kind of last
> > call optimization.
> 
> hmm... shouldn't we have a --trace-exit option in order to still be able
> to trace programs that makes strong use of LCO ?

Is this a real need, or an imagined need?
How common are such programs?

I'd be inclined to wait until we actually get a report from someone
saying that they tried to use the debugger on such-and-such a program
and it ran out of memory or ran too slowly before we add such an option.
The debugging support already has a large set of options and we should
try to avoid adding to this unless there is a demonstrated need for it.

> Is it possible to determine at compile time which predicates will do LCO?
> then we could avoid tracing the exiting of such predicates with another
> --preserve-lco option.

It's not easy to determine this before peephole optimization, which is
several stages after the stage where the exit tracing code is inserted
(code generation).

-- 
Fergus Henderson <fjh at cs.mu.oz.au>  |  "I have always known that the pursuit
WWW: <http://www.cs.mu.oz.au/~fjh>  |  of excellence is a lethal habit"
PGP: finger fjh at 128.250.37.3        |     -- the last words of T. S. Garp.



More information about the developers mailing list