@cmuratori About static single assignment. SSA adds in a lot of mov instructions, which are supposed to be optimised away later. But when I look at code generated by one of the big compilers, it is stuffed with superfluous mov instructions. I think that says a lot about SSA.
(For example, even in the chapter to which you linked, they do not call it "SSA form", they call it "pruned SSA form".)
-
-
Pruned SSA *is* SSA. "Pruned" is just a desirable quality for SSA to have. Going from SSA to non-SSA is just register allocation; the chapter is going from source to (pruned, i.e. good) SSA.
-
In this case, no actual pruning occurs! They are just producing SSA that already has that property.
- Show replies
New conversation -
Loading seems to be taking a while.
Twitter may be over capacity or experiencing a momentary hiccup. Try again or visit Twitter Status for more information.