This is the mail archive of the
gcc-patches@gcc.gnu.org
mailing list for the GCC project.
Re: [tree-ssa] Fix problems with void * and GIMPLE typecasts [patch]
- From: Jeff Sturm <jsturm at one-point dot com>
- To: Richard Henderson <rth at redhat dot com>
- Cc: Diego Novillo <dnovillo at redhat dot com>, "gcc-patches at gcc dot gnu dot org" <gcc-patches at gcc dot gnu dot org>, <aph at redhat dot com>, Jason Merrill <jason at redhat dot com>
- Date: Sun, 21 Sep 2003 12:28:10 -0400 (EDT)
- Subject: Re: [tree-ssa] Fix problems with void * and GIMPLE typecasts [patch]
On Sat, 20 Sep 2003, Richard Henderson wrote:
> On Sat, Sep 20, 2003 at 06:21:44PM -0400, Jeff Sturm wrote:
> > Andrew, does this look right to you? I'm at a loss on how to verify the
> > behavior of get_alias_set.
>
> I don't see what's wrong with the default get_alias_set.
Maybe nothing. In my ignorance I failed to realize it considers base
classes when computing alias sets.
Besides, there is no empirical evidence that anything is broken on
mainline wrt java and aliasing. If there is a problem at all it may be
only with tree-ssa.
> No, because while classes Foo and Bar derive from jlO, they
> do not necessarily derive from one another. In the case that
> they do not, I would expect the subset tree to be
>
> jlO (10) --- Foo (11)
> \-- Bar (12)
>
> So that we know that alias set number 11 conflicts with 10,
> and 12 conflicts with 10, but 11 does not conflict with 12.
Thanks for the explanation. I had failed to understand that the property
"a conflicts with b" is commutative but not transitive.
Diego's original post
(http://gcc.gnu.org/ml/gcc-patches/2003-09/msg01112.html) writes:
"... I added a check in copy-prop that would make sure we are not
copy propagating pointers with different memory tags. Two pointers have
different memory tags if the alias analyzer has determined that they
can't alias each other."
Diego, the types in your example (ZipFile.java) are clearly conflicting,
so how can we tell where the alias analyzer goes wrong? Was this with our
without Andersen PTA?
Jeff