Re: SSA without phi

"Inderaj Bains" <>
Mon, 7 May 2007 13:44:46 -0700

          From comp.compilers

Related articles
[3 earlier articles]
SSA without phi (Inderaj Bains) (2007-04-23)
Re: SSA without phi (Chris F Clark) (2007-04-23)
Re: SSA without phi find@my.address.elsewhere (Matthias Blume) (2007-04-26)
Re: SSA without phi (2007-04-29)
Re: SSA without phi (Tommy Thorn) (2007-05-04)
Re: SSA without phi (2007-05-04)
Re: SSA without phi (Inderaj Bains) (2007-05-07)
Re: SSA without phi (Tommy Thorn) (2007-05-08)
Re: SSA without phi (2007-05-22)
| List of all articles for this month |

From: "Inderaj Bains" <>
Newsgroups: comp.compilers
Date: Mon, 7 May 2007 13:44:46 -0700
Organization: Compilers Central
References: 07-04-075 07-04-152 07-05-004
Keywords: SSA, analysis
Posted-Date: 08 May 2007 01:20:01 EDT

>> Anyway, maybe I'm just not using the simplest approach and I need to
>> get more familiar with SSA. I rename every variable by giving them a
>> completely new name (actually just a number), and keeping their old
>> name in a table. But a lot of tutorials on SSA give the variables an
>> index, and after optimization just drop the index and remove phi-
>> functions. Does that make the implementation more elegant?

>AFAICT, that is likely to be incorrect in the face of any non-trivial
>optimizations. Leaving SSA requires a real register allocation either
>With a graph based representation you don't get too attached to names;
>they are just pointers to nodes. If a full graph IR is too scary, you
>can always just use them inter-basic block. I guarantee that it will
>simplify your code.

That is incorrect. Leaving SSA does not require register allocation,
renaming plus color-out can guarantee dropping remaining names is
correct. Also retaining some names can be very useful for a production
compiler for debugging purposes


Post a followup to this message

Return to the comp.compilers page.
Search the comp.compilers archives again.