This is the mail archive of the gcc-patches@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] |
On Tue, 2005-05-10 at 15:10 -0700, Mark Mitchell wrote:
Daniel Berlin wrote:
It would seem rather dangerous to me to implement this optimization.
Again, it's been implemented and turned on for a couple months now, it's not a proposal. :)
Good point.
However, here is a patch to fully disable it and leave a note in it's place for people who think of the same idea in the future.
I've added 21407 testcase to g++.dg/tree-ssa
Bootstrapped and regtested on i686-pc-linux-gnu okay for mainline?
Kenny and I had a long conversation today, and we think we have a proposal that will satisfy both of us -- though we can't be sure about Geoff, et. al. The current state is that I transcribed the proposal, sent it to Kenny, and am waiting for him to confirm that it matches his understanding of what we think we agreed upon. If it does, we'll post it soon. Since it would leave these bits in, I think we should hold off on your patch for the moment.
Even if you were to do something like move the behavior into an optional
attribute, that patch would have to be applied, and the code removed,
because call clobbering doesn't currently work in a way where you can
easily say "for this call, don't clobber those variables".
3. Move the code/rework call clobbering so that it does it in the "standard" way (IE some real intraprocedural/interprocedural escape analysis or mod/ref instead of "is our address taken anywhere in the function that could matter"
This is actually one of the reasons i'm anxious to do some stuff on interprocedural call clobbering: So we can decide what to clobber on a per-callsite basis without affecting anything else and without all this crap.
-- Mark Mitchell CodeSourcery, LLC mark@codesourcery.com (916) 791-8304
Index Nav: | [Date Index] [Subject Index] [Author Index] [Thread Index] | |
---|---|---|
Message Nav: | [Date Prev] [Date Next] | [Thread Prev] [Thread Next] |