This is the mail archive of the
gcc-patches@gcc.gnu.org
mailing list for the GCC project.
Re: PR 23551: why should we coalesce inlined variables?
On Jul 9, 2007, Michael Matz <matz@suse.de> wrote:
> As some people said multiple times here, you can simply attach multiple
> variables to one SSA name.
Attaching the variables is just not enough. You have to attach the
assignment points as well. And I haven't see you address that at all,
even though it is a necessary part of the infrastructure.
>> In my example, you'll find cases in which it both starts too early and
>> ends too late WRT the variable that holds that value at some point.
> I've seen none in your examples. Please provide one or refer to the mail
> URL, but please, not that simple {foo=bar;bar++;foo--} example again. I
> handled that.
You didn't. The range of bar_1 in your example, that would be
associated with both bar and foo, started before it became associated
wtih foo, and ended after bar had moved on. You have addressed how to
obtain the more recent value of bar in this simple case, but with an
heuristics that AFAICT wouldn't work that simply across basic blocks.
And you haven't addressed at all how to get the correct location list
for foo in case foo_2 is optimized away.
--
Alexandre Oliva http://www.lsd.ic.unicamp.br/~oliva/
FSF Latin America Board Member http://www.fsfla.org/
Red Hat Compiler Engineer aoliva@{redhat.com, gcc.gnu.org}
Free Software Evangelist oliva@{lsd.ic.unicamp.br, gnu.org}