Static single-assignment form: Difference between revisions

Content deleted Content added
Copyedit: fix broken cite book chapter-url for Kelsey ACM SIGPLAN 1995 paper
Benefits: copyedit: change "constant propagation" to "constant folding" - since that is what the example illustrates. If SSA facilitates constant propagation - then give an example of it
Line 32:
 
[[Compiler optimization]] algorithms that are either enabled or strongly enhanced by the use of SSA include:
* [[Constant propagationfolding]] – conversion of computations from runtime to compile time, e.g. treat the instruction <code>a=3*4+5;</code> as if it were <code>a=17;</code>
* [[Value range propagation]]<ref>[http://llvm.org/devmtg/2007-05/05-Lewycky-Predsimplify.pdf value range propagation]</ref> – precompute the potential ranges a calculation could be, allowing for the creation of branch predictions in advance
* [[Sparse conditional constant propagation]] – range-check some values, allowing tests to predict the most likely branch