On Thu, Jul 13, 2017 at 09:19:55AM +0200, Sven Hartrumpf wrote:
> Hi Peter.
> 
> Peter Bex <[email protected]> schrieb am 2017-07-13 09:05:
> > On Thu, Jul 13, 2017 at 08:52:31AM +0200, Sven Hartrumpf wrote:
> >> Yes, functions that can never be called from the compiled program
> >> are still there.
> >> Will the profile output of the compiled program (-accumulate-profile)
> >> be a reliable filter if I avoid inlining and make
> >> sure that all possible input cases are seen by the program?
> > 
> > Are you looking for a coverage/dead code elimination tool?
> 
> Exactly.
> I have some compile time numbers (from bigloo) where I was able to
> reduce compile time from 20 minutes to 4 minutes
> by using dead code elimination as a preprocessing step.

If compilation time is high, one thing that could be useful is to profile
the compiler, to figure out where it is spending most of its time.  I've
done this in the past and found some "accidentally exponential" procedures
in the compiler, which have since been fixed.  There could be some more
lurking in there that we don't know of.  Specific code patterns may
trigger those (for example, I seem to remember something about nested
lets being particularly bad due to an O(n^2) append & lookup that was
easily fixed).

Cheers,
Peter

Attachment: signature.asc
Description: PGP signature

_______________________________________________
Chicken-users mailing list
[email protected]
https://lists.nongnu.org/mailman/listinfo/chicken-users

Reply via email to