Given the above examples how is it not straightforward to use ssa instead of three address code using what the dragon book teaches? What is wrong with the above examples?
In fact section 6.2.4 in the dragon book it says:
“Two distinctive aspects distinguish SSA from three-address code. The first is that all assignments in SSA are to variables with distinct names; hence the term static single-assigment.” The second one is that ssa uses a function to combine two definitions
```
p = a + b
q = p-c
p = q * d
```
Ssa:
```
p1 = a+ b
q1= p1 - c
p2 = q1 * d
```
Given the above examples how is it not straightforward to use ssa instead of three address code using what the dragon book teaches? What is wrong with the above examples?
In fact section 6.2.4 in the dragon book it says:
“Two distinctive aspects distinguish SSA from three-address code. The first is that all assignments in SSA are to variables with distinct names; hence the term static single-assigment.” The second one is that ssa uses a function to combine two definitions