This is the mail archive of the
gcc@gcc.gnu.org
mailing list for the GCC project.
Re: [tree-ssa] alias analysis
- From: Daniel Berlin <dberlin at dberlin dot org>
- To: law at redhat dot com
- Cc: Diego Novillo <dnovillo at redhat dot com>,gcc at gcc dot gnu dot org
- Date: Wed, 12 Feb 2003 02:17:35 -0500
- Subject: Re: [tree-ssa] alias analysis
Yes, splitting the sets would work too, but that seems to be avoiding
the real issue -- creating too many useless alias relationships to
begin
with.
It's funny you mention creating too many useless alias relationships vs
splitting sets.
Splitting sets doesn't help make it faster.
Turning on PTA makes it split sets a lot more right now (since we can
disambiguate so much better).
On 20001226-1.c, it takes a little over a second and a half (I can
actually make it take well under a second, but it's not a priority for
me since i think 1.68 seconds is an okay number here) to compute the
points-to results
tree PTA : 1.68 ( 1%) usr 0.11 ( 8%) sys 1.87 ( 1%)
wall
However, because of the extra set splitting that happens, phi insertion
time goes through the roof:
tree PHI insertion : 50.27 (18%) usr 0.05 ( 3%) sys 52.36 (18%)
wall
This is with *always* using alias sets, and just using PTA to
disambiguate.
(In case someone tries this, tree alias analysis time goes through the
roof, but this is just a red herring. I've already fixed it in my tree)
So be careful with extra set splitting, it'll currently drive your phi
insertion time up (whether it should or not is another matter)
On a random note, do either of you plan on making calls to may_alias_p
from outside of tree-dfa.c anymore?
I had moved the freeing of PTA memory to SSA deletion time when Diego
was doing alias tags, and using may_alias_p in tree-ssa.c, but if it's
not going to be called during SSA building anymore, i'll move the
freeing of PTA memory back to where it used to be.
Jeff