In SSA form, a variable assigned from a phi ends up with the appropriate value depending on which path it was reached by. But what happens if, perhaps via some unusual path, both inputs to the phi have been assigned? e.g.
a = 1
...
b = 2
...
c = phi(a, b)
Is it defined to behave like a union such that c ends up with the value 2 because that was the last assignment?