This is the mail archive of the gcc@gcc.gnu.org mailing list for the GCC project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

Re: compiling very large functions.


Kenneth Zadeck wrote on 11/06/06 12:54:

I am not saying that my original proposal was the best of all possible
worlds, but solving hacking things on a pass by pass or pr by pr basis
is not really solving the problem.

I don't think it's a hackish approach. We have policy setting at the high level (-O[123]), and local implementation of that policy via the gating functions.

Providing common predicates that every pass can use to decide whether to switch itself off is fine (size estimators, high connectivity, etc), but ultimately the analysis required to determine whether a function is too expensive for a pass may not be the same from one pass to the other.

OTOH, just using the gating function is not enough. Sometimes you want the pass to work in a partially disabled mode (like the CD-DCE example I mentioned earlier).

In terms of machinery, I don't think we are missing a lot. All the information is already there. What we are missing is the implementation of more throttling/disabling mechanisms.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]