In practice, this occurs in the presence of switch-statements.
SSA factors the def-use chain over a φ-node, avoiding this pathological case.
Main MS 132, Houston, TX 77005, USA (email: keith,harv Krice.edu) Trilogy Development Group, 6034 W.
East, Seattle, WA 98102, USA (email: preston Ktera.com) Department of Computer Science, Rice University, 6100 S.
With SSA form, you can ignore those and get a similar level of precision.
Memory usage: Without SSA form, an analysis must store information for every variable at every program point.
SSA form allows a sparse analysis, where an analysis must store information only for every assignment in the program.
With a unique version per assignment, the memory usage of storing the results of an analysis can be considerably lower than using bit-vector or set-based approaches.
In English: When storing the results of your analysis, you can save them much more cheaply in SSA form, from a CPU and memory perspective.
Without SSA, you need a hashtable of variables, with a list of values each.