CodeQL library for C#
codeql/csharp-all 5.1.0 (changelog, source)
Search

Predicate Make::dominatingEdge

Holds if bb1 has bb2 as a direct successor and the edge between bb1 and bb2 is a dominating edge.

An edge (bb1, bb2) is dominating if there exists a basic block that can only be reached from the entry block by going through (bb1, bb2). This implies that (bb1, bb2) dominates its endpoint bb2. I.e., bb2 can only be reached from the entry block by going via (bb1, bb2).

Import path

import codeql.controlflow.BasicBlock
predicate dominatingEdge(BasicBlock bb1, BasicBlock bb2)