Re: SSA without phi
29 Apr 2007 19:00:59 -0400

          From comp.compilers

Related articles
SSA without phi (2007-04-20)
Re: SSA without phi (Tommy Thorn) (2007-04-23)
Re: SSA without phi (2007-04-23)
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 |

Newsgroups: comp.compilers
Date: 29 Apr 2007 19:00:59 -0400
Organization: Compilers Central
References: 07-04-075
Keywords: analysis, SSA
Posted-Date: 29 Apr 2007 19:00:59 EDT

Hi all,

Thanks for the opinions and information. I have a working compiler
that uses an intermediate representation in SSA form and performs some
optimizations, so that's not the primary issue. I just find it a bit
unnatural to work with and I wondered whether there are any simpler
representations (with equivalent advantages). Apparently that doesn't
exist though...

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?

Any other implementation tips? The papers I've read are obviously very
academic and don't pay much attention to implementation issues. I also
have 'Modern Compiler Implementation in C' by Appel but it only offers
rather cryptic pseudo-code algorithms. I'm not asking for copy-paste
ready code but an overview of the most straightforward algorithms
could help a lot. I can always do the more advanced stuff later.

My compiler is written in C++, and the language I'm compiling is C-
like with explicit support for vector types. It's primarily targeted
at x86 processors...



Post a followup to this message

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