This is the mail archive of the
gcc-patches@gcc.gnu.org
mailing list for the GCC project.
Re: [PATCH] Fix call-clobbering (PRs 36373 and 36387)
On Sat, May 31, 2008 at 6:06 AM, Richard Guenther <rguenther@suse.de> wrote:
> On Fri, 30 May 2008, Daniel Berlin wrote:
>
>> On Fri, May 30, 2008 at 6:12 PM, Richard Guenther <rguenther@suse.de> wrote:
>> >
>> > The current call-clobbering code as far as it deals with using
>> > the PTA results is missing quite a few cases. First escaped
>> > aggregates (as opposed to pointers) are not tracked at all.
>>
>> Only because you removed the code to do so when you removed SFT's :)
>
> Let me add some general remarks. I think the call-clobbering code
> in 4.3 is broken, or at least very non-standard.
Broken, probably.
Non-standard, not really.
The transitive closure it performs is pretty standard.
The code in 4.3 is a reimplementation of the code that existed prior
to 4.3 with a little work on correctness.
I can buy that it is broken (I rewrote it mainly to make it simpler to
understand, i assumed it was correct) in a number of ways.
To the degree those ways are "because points-to sets are wrong" we
should fix points-to.
I have no problem fixing the rest of the problems in clobbering (which
after reading your emails, I agree are there!) through fixing
clobbering.