15#ifndef LLVM_TRANSFORMS_VECTORIZE_VPLANDOMINATORTREE_H
16#define LLVM_TRANSFORMS_VECTORIZE_VPLANDOMINATORTREE_H
static GCRegistry::Add< ErlangGC > A("erlang", "erlang-compatible garbage collector")
static GCRegistry::Add< OcamlGC > B("ocaml", "ocaml 3.10-compatible GC")
Generic dominator tree construction - this file provides routines to construct immediate dominator in...
This file defines a set of templates that efficiently compute a dominator tree over a generic graph.
This file defines the little GraphTraits<X> template class that should be specialized by classes that...
This file contains the declarations of the Vectorization Plan base classes:
Base class for the actual dominator tree node.
typename SmallVector< DomTreeNodeBase *, 4 >::const_iterator const_iterator
DominatorTreeBase()=default
void recalculate(ParentType &Func)
bool properlyDominates(const DomTreeNodeBase< VPBlockBase > *A, const DomTreeNodeBase< VPBlockBase > *B) const
VPBlockBase is the building block of the Hierarchical Control-Flow Graph.
bool properlyDominates(const VPRecipeBase *A, const VPRecipeBase *B)
VPDominatorTree()=default
VPDominatorTree(VPlan &Plan)
VPRecipeBase is a base class modeling a sequence of one or more output IR instructions.
VPlan models a candidate for vectorization, encoding various decisions take to produce efficient outp...
VPBasicBlock * getEntry()
This is an optimization pass for GlobalISel generic memory operations.
DomTreeNodeBase< VPBlockBase > VPDomTreeNode
static NodePtr getEntryNode(ParentPtr Parent)
static ParentPtr getParent(NodePtr B)
Default DomTreeNode traits for NodeT.