[sa]: Revert partial def stuff, use fake variables instead

Daniel Berlin dberlin@dberlin.org
Tue Dec 21 15:28:00 GMT 2004



On Tue, 21 Dec 2004, Jeffrey A Law wrote:

> On Tue, 2004-12-21 at 08:02 -0500, Diego Novillo wrote:
>> Jeffrey A Law wrote:
>>
>>> Those are functionally equivalent.  In a sane world (and our aliasing
>>> code is *FAR* from sane) the most we should have to do is tell the
>>> aliasing code that we have a new pointer and it points to X.
>>>
>> Which is *exactly* what I've been saying.  We were missing the
>> capability of telling that to the aliasing code.  I added that on the
>> cleanup branch.  If you are removing type tags, then we won't have to
>> update those, but you will still need to have glue code to let the
>> optimizers inform the aliasing code of changes.
> With the rewrite, it's trivial to handle the changes ivopts makes --
> largely because ivopts doesn't change the aliasing information, it
> just adds a new pointer to a known location.

This is all we told zdenek to do now.

>>
>>>> This is very basic stuff.  I cannot believe we are having this discussion.
>>>
>>> I can certainly believe we are having this discussion since I've
>>> basically run into the same problem.
>>>
>> You misunderstand.  The discussion I can't believe we were having is
>> whether one needs to update aliasing information of some kind when you
>> introduce new pointers and pointed-to variables.  Whatever data
>> structure you have to handle aliasing will need to be told of new
>> relations you introduce.
> Part of the fundamental problem is the way our aliasing code works right
> now -- you have to effectively re-run the entire alias analysis pass
> after the seemingly trivial actions of ivopts.

No you don't, you just need to tell it about the new pointer.



More information about the Gcc-patches mailing list