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

Member predicate BasicBlock::inDominanceFrontier

Holds if df is in the dominance frontier of this basic block. That is, this basic block dominates a predecessor of df, but does not dominate df itself.

Example:

if (x < 0) {
  x = -x;
  if (x > 10)
    x--;
}
Console.Write(x);

The basic block on line 6 is in the dominance frontier of the basic block starting on line 2 because that block dominates the basic block on line 4, which is a predecessor of Console.Write(x);. Also, the basic block starting on line 2 does not dominate the basic block on line 6.

predicate inDominanceFrontier(BasicBlock df)