|
LLVM
8.0.1
|
This file defines the class VPlanVerifier, which contains utility functions to check the consistency and invariants of a VPlan. More...

Go to the source code of this file.
Macros | |
| #define | DEBUG_TYPE "loop-vectorize" |
Functions | |
| static bool | hasDuplicates (const SmallVectorImpl< VPBlockBase *> &VPBlockVec) |
Utility function that checks whether VPBlockVec has duplicate VPBlockBases. More... | |
| static void | verifyBlocksInRegion (const VPRegionBlock *Region) |
Helper function that verifies the CFG invariants of the VPBlockBases within Region. More... | |
| static void | verifyRegion (const VPRegionBlock *Region) |
Verify the CFG invariants of VPRegionBlock Region and its nested VPBlockBases. More... | |
| static void | verifyRegionRec (const VPRegionBlock *Region) |
Verify the CFG invariants of VPRegionBlock Region and its nested VPBlockBases. More... | |
Variables | |
| static cl::opt< bool > | EnableHCFGVerifier ("vplan-verify-hcfg", cl::init(false), cl::Hidden, cl::desc("Verify VPlan H-CFG.")) |
This file defines the class VPlanVerifier, which contains utility functions to check the consistency and invariants of a VPlan.
Definition in file VPlanVerifier.cpp.
| #define DEBUG_TYPE "loop-vectorize" |
Definition at line 19 of file VPlanVerifier.cpp.
|
static |
Utility function that checks whether VPBlockVec has duplicate VPBlockBases.
Definition at line 30 of file VPlanVerifier.cpp.
References llvm::detail::DenseSetImpl< ValueT, SmallDenseMap< ValueT, detail::DenseSetEmpty, InlineBuckets, ValueInfoT, detail::DenseSetPair< ValueT > >, ValueInfoT >::count(), and llvm::detail::DenseSetImpl< ValueT, SmallDenseMap< ValueT, detail::DenseSetEmpty, InlineBuckets, ValueInfoT, detail::DenseSetPair< ValueT > >, ValueInfoT >::insert().
Referenced by verifyBlocksInRegion().
|
static |
Helper function that verifies the CFG invariants of the VPBlockBases within Region.
Checks in this function are generic for VPBlockBases. They are not specific for VPBasicBlocks or VPRegionBlocks.
Definition at line 44 of file VPlanVerifier.cpp.
References assert(), llvm::find(), llvm::VPRegionBlock::getEntry(), llvm::VPRegionBlock::getExit(), hasDuplicates(), and llvm::make_range().
Referenced by verifyRegion().
|
static |
Verify the CFG invariants of VPRegionBlock Region and its nested VPBlockBases.
Do not recurse inside nested VPRegionBlocks.
Definition at line 98 of file VPlanVerifier.cpp.
References assert(), llvm::VPRegionBlock::getEntry(), llvm::VPRegionBlock::getExit(), llvm::VPBlockBase::getNumPredecessors(), llvm::VPBlockBase::getNumSuccessors(), and verifyBlocksInRegion().
Referenced by llvm::RegionBase< RegionTraits< Function > >::contains(), llvm::RegionBase< RegionTraits< Function > >::verifyRegion(), and verifyRegionRec().
|
static |
Verify the CFG invariants of VPRegionBlock Region and its nested VPBlockBases.
Recurse inside nested VPRegionBlocks.
Definition at line 113 of file VPlanVerifier.cpp.
References llvm::VPRegionBlock::getEntry(), llvm::VPRegionBlock::getExit(), llvm::make_range(), and verifyRegion().
Referenced by llvm::VPlanVerifier::verifyHierarchicalCFG().
1.8.13