Skip to content

Commit 17e904f

Browse files
committed
Data flow: Refactoring + performance improvements
- Introduce `ReadTaintNode` and `TaintStoreNode` to simplify logic for taint getters and taint setters, respectively. - `nodeCandFwd2`: Restrict `stored` column after a read, based on what it might be before a store of the same field. - `nodeCand2`: Restrict `read` column (renamed from `stored`) after a store, based on what it might be after a read of the same field. - Move big step predicates into a `LocalFlowBigStep` module. - Define predicates by dispatch in `AccessPath[Front]` class. - `flowCandFwd0`: Restrict `apf` column after a read, as it should be able to match a Boolean `read` column from `nodeCand2`. - `flowFwd0`: Restrict columns `ap` and `apf` after a read, by introducing a `flowConsCandFwd` predicate (similar to what is done in the previous pruning steps). - `flowFwd0`: Restrict columns `ap` and `apf` after a store, by introducing a `flowConsCand` predicate (similar to what is done in the previous pruning steps).
1 parent 917b984 commit 17e904f

3 files changed

Lines changed: 497 additions & 523 deletions

File tree

0 commit comments

Comments
 (0)