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: law at redhat dot com
- To: Andrew MacLeod <amacleod at redhat dot com>
- Cc: Diego Novillo <dnovillo at redhat dot com>, gcc-patches <gcc-patches at gcc dot gnu dot org>
- Date: Tue, 24 Jun 2003 11:59:47 -0600
- Subject: Re: [tree-ssa] Speedup alias analysis [patch]
- Reply-to: law at redhat dot com
In message <1056475283.21707.214.camel@p4>, Andrew MacLeod writes:
>On Tue, 2003-06-24 at 11:52, law@redhat.com wrote:
>> In message <1056462218.4062.79.camel@frodo.toronto.redhat.com>, Diego Novil
>lo 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_EX
>PR,
>> 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.
I wasn't sure. If indeed this is how things work, then we should be in
good shape.
jeff