This is the mail archive of the
gcc-patches@gcc.gnu.org
mailing list for the GCC project.
Re: PATCH: tree-ssa-sink breaks stack layout
- From: Daniel Berlin <dberlin at dberlin dot org>
- To: Eric Botcazou <ebotcazou at adacore dot com>
- Cc: gcc-patches at gcc dot gnu dot org, Sandra Loosemore <sandra at codesourcery dot com>
- Date: Tue, 31 Mar 2009 20:27:29 -0400
- Subject: Re: PATCH: tree-ssa-sink breaks stack layout
- References: <49D25676.6010808@codesourcery.com> <200903312310.10601.ebotcazou@adacore.com> <4aca3dc20903311409q2a8c5a7vf02fe4a85f9cf2c1@mail.gmail.com> <200904010004.37183.ebotcazou@adacore.com>
On Tue, Mar 31, 2009 at 6:04 PM, Eric Botcazou <ebotcazou@adacore.com> wrote:
>> Well, no, it is a *real* bug that it claims the two objects
>> must-conflict and decides they can share a space when we have no
>> informatin available to substantiate this
>
> We're at -O1 so it's true that the objects must-conflict in the alias.c sense.
alias.c uses conflict as a synonym for the word "alias" in almost all
places, and there is no documentation elsewhere, so uh, claiming i'm
"changing the definition" seems a bit much, that said ...
> The code thinks that if the blocks are different and the objects must-conflict
> then it's enough to conclude that the slots can be shared. ?That's wrong.
>
> You seem to be proposing to change the definition of must-conflict;
> it seems
> to me (and that was the conclusion of the discussion in PR middle-end/32327)
> that the problem is rather in the "if the blocks are different".
This is independent of the fact that it's clearly missing an aliasing
conflict above.
Then again, I have no dog in this fight, I can happily wait till you
fix this with live range info and then discover it's still borked
because it is using alias information wrong :)