BinaryAnalysisPlatform / bap

Binary Analysis Platform
MIT License
2.07k stars 273 forks source link

provides the new liveness analysis #1446

Closed ivg closed 2 years ago

ivg commented 2 years ago

The new liveness analysis works with functions in the SSA and non-SSA form and provides the extended interface that gives an easy access to live-ins, liveouts, live and dead blocks.

The phi-nodes semantics is clearly specified and the Blk.free_vars function is updated to be in line with the semantics of the SSA nodes. The printing function of the phi-nodes is also updated. To reflect that the phi-node is not an assignment but a selection, we use the <- symbol instead of := to separate the asignment operand from the right-hand side.