This is the mail archive of the
gcc-patches@gcc.gnu.org
mailing list for the GCC project.
Re: [tree-ssa] Speedup alias analysis [patch]
- From: Andrew MacLeod <amacleod at redhat dot com>
- To: Jeff Law <law at redhat dot com>
- Cc: Diego Novillo <dnovillo at redhat dot com>, gcc-patches <gcc-patches at gcc dot gnu dot org>
- Date: 24 Jun 2003 13:21:21 -0400
- Subject: Re: [tree-ssa] Speedup alias analysis [patch]
- References: <200306241552.h5OFq2Fa017672@speedy.slc.redhat.com>
On Tue, 2003-06-24 at 11:52, law@redhat.com wrote:
> In message <1056462218.4062.79.camel@frodo.toronto.redhat.com>, Diego Novillo w
> rites:
> >The only unaliased virtual ops are non-scalar data references. Or you
> >mean a must-alias pass? In the first case we need a scalarizer of some
> >kind. In the second one, we'd prove that 'p' always points to 'a' and
> >replace every reference to '*p' with 'a' directly.
> BTW, I was pondering this a little recently. One of the issues that we'll
> have to deal with is that if we replace *p with a on the LHS of a MODIFY_EXPR,
> then we'll need to call back into the SSA builder as we've just added a
> definition of "a". Nothing terrible, but it's worth remembering.
>
Isn't there already an 'a' that is a virtual DEF tho? We can just
replace the LHS with the virtual def version.
# a_4 = VDEF <a_2>
*p_3 = 10;
becomes
a_4 = 10;
and all the VUSEs of a_4 becomes real uses.
Andrew
Andrew