Static single-assignment form: Difference between revisions

Content deleted Content added
Compilers Using SSA Form: first gcc release with SSA will be 4.0 according to http://gcc.gnu.org
Line 71:
* [http://llvm.org/ The LLVM Compiler Infrastructure] uses SSA form for all scalar register values (everything except memory) in its primary code representation. SSA form is only eliminated once register allocation occurs, late in the compile process (often at link time).
 
* The open source SGI compiler [http://ipf-orc.sourceforge.net/ ORC] uses SSA form in its global scalar optimizer, though the code is brought into SSA form before and taketaken out of SSA form afterwards. ORC uses extensions to SSA form to represent memory in SSA form as well as scalar values.
 
* As of summer [[2004]] the [[GNU Compiler Collection]] is being updated to use SSA form. The [[frontend|frontends]] generate [[GENERIC]] code which is then converted into SSA form by the "[[gimplifier]]" and optimized by the "[[middle-end]]". The [[backend]] eventually translates the optimized intermediate code into [[Register Transfer Language|RTL]], executes some more low-level optimizations and finally turns RTL into [[assembly language]]. The first official release supporting SSA will be 4.0, tentatively scheduled for early [[2005]].