|
LLVM
8.0.1
|
Compute iterated dominance frontiers using a linear time algorithm. More...
#include "llvm/ADT/DenseMap.h"#include "llvm/ADT/SmallPtrSet.h"#include "llvm/ADT/SmallVector.h"#include "llvm/IR/BasicBlock.h"#include "llvm/IR/CFGDiff.h"#include "llvm/IR/Dominators.h"

Go to the source code of this file.
Classes | |
| class | llvm::IDFCalculator< NodeTy, IsPostDom > |
| Determine the iterated dominance frontier, given a set of defining blocks, and optionally, a set of live-in blocks. More... | |
Namespaces | |
| llvm | |
| This class represents lattice values for constants. | |
Typedefs | |
| typedef IDFCalculator< BasicBlock *, false > | llvm::ForwardIDFCalculator |
| typedef IDFCalculator< Inverse< BasicBlock * >, true > | llvm::ReverseIDFCalculator |
Compute iterated dominance frontiers using a linear time algorithm.
The algorithm used here is based on:
Sreedhar and Gao. A linear time algorithm for placing phi-nodes. In Proceedings of the 22nd ACM SIGPLAN-SIGACT Symposium on Principles of Programming Languages POPL '95. ACM, New York, NY, 62-73.
It has been modified to not explicitly use the DJ graph data structure and to directly compute pruned SSA using per-variable liveness information.
Definition in file IteratedDominanceFrontier.h.
1.8.13