secure-software-engineering / phasar

A LLVM-based static analysis framework.
Other
919 stars 140 forks source link

Fix IIA Edge Functions #700

Closed fabianbs96 closed 4 months ago

fabianbs96 commented 4 months ago

The joinImpl in the IDEInstInteractionAnalysis does not correctly model a join-lattice for the edge values l_t.

This PR fixes this issue and also fixes the subsequent errors that showed up after the joinImpl-fix. Concretely, the edge-functions have been changed that were created when generating a fact from zero. In this case, the attached edge-value should not depend on the value attached to zero. Furthermore, the kill-or-replace edge function has been identified as "constant" and adapted accordingly.

699 Should be merged first.