|
LLVM 23.0.0git
|
Functions | |
| void | reportVectorizationFailure (const StringRef DebugMsg, const StringRef OREMsg, const StringRef ORETag, OptimizationRemarkEmitter *ORE, const Loop *TheLoop, Instruction *I=nullptr) |
Reports a vectorization failure: print DebugMsg for debugging purposes along with the corresponding optimization remark RemarkName. | |
| void | reportVectorizationFailure (const StringRef DebugMsg, const StringRef ORETag, OptimizationRemarkEmitter *ORE, const Loop *TheLoop, Instruction *I=nullptr) |
| Same as above, but the debug message and optimization remark are identical. | |
| void | reportVectorizationInfo (const StringRef Msg, const StringRef ORETag, OptimizationRemarkEmitter *ORE, const Loop *TheLoop, Instruction *I=nullptr, DebugLoc DL={}) |
Reports an informative message: print Msg for debugging purposes as well as an optimization remark. | |
| void | reportVectorization (OptimizationRemarkEmitter *ORE, Loop *TheLoop, ElementCount VFWidth, unsigned IC) |
| Report successful vectorization of the loop. | |
| void llvm::LoopVectorizationUtils::reportVectorization | ( | OptimizationRemarkEmitter * | ORE, |
| Loop * | TheLoop, | ||
| ElementCount | VFWidth, | ||
| unsigned | IC ) |
Report successful vectorization of the loop.
In case an outer loop is vectorized, prepend "outer" to the vectorization remark.
Definition at line 120 of file LoopVectorizationPlanner.cpp.
References DEBUG_TYPE, debugVectorizationMessage(), llvm::OptimizationRemarkEmitter::emit(), llvm::LoopBase< BlockT, LoopT >::getHeader(), llvm::Loop::getStartLoc(), llvm::LoopBase< BlockT, LoopT >::isInnermost(), and LLVM_DEBUG.
Referenced by llvm::LoopVectorizePass::processLoop().
| void llvm::LoopVectorizationUtils::reportVectorizationFailure | ( | const StringRef | DebugMsg, |
| const StringRef | OREMsg, | ||
| const StringRef | ORETag, | ||
| OptimizationRemarkEmitter * | ORE, | ||
| const Loop * | TheLoop, | ||
| Instruction * | I = nullptr ) |
Reports a vectorization failure: print DebugMsg for debugging purposes along with the corresponding optimization remark RemarkName.
If I is passed, it is an instruction that prevents vectorization. Otherwise, the loop TheLoop is used for the location of the remark.
Definition at line 105 of file LoopVectorizationPlanner.cpp.
References createLVAnalysis(), debugVectorizationMessage(), llvm::OptimizationRemarkEmitter::emit(), I, and LLVM_DEBUG.
Referenced by llvm::LoopVectorizationLegality::canVectorize(), llvm::LoopVectorizationCostModel::computeMaxVF(), llvm::VFSelectionContext::computeVPlanOuterloopVF(), llvm::LoopVectorizePass::processLoop(), reportVectorizationFailure(), and llvm::VFSelectionContext::runtimeChecksRequired().
|
inline |
Same as above, but the debug message and optimization remark are identical.
Definition at line 74 of file LoopVectorizationPlanner.h.
References I, and reportVectorizationFailure().
| void llvm::LoopVectorizationUtils::reportVectorizationInfo | ( | const StringRef | Msg, |
| const StringRef | ORETag, | ||
| OptimizationRemarkEmitter * | ORE, | ||
| const Loop * | TheLoop, | ||
| Instruction * | I = nullptr, | ||
| DebugLoc | DL = {} ) |
Reports an informative message: print Msg for debugging purposes as well as an optimization remark.
Uses either I as location of the remark, or otherwise TheLoop. If DL is passed, use it as debug location for the remark.
Definition at line 113 of file LoopVectorizationPlanner.cpp.
References createLVAnalysis(), debugVectorizationMessage(), DL, llvm::OptimizationRemarkEmitter::emit(), I, and LLVM_DEBUG.
Referenced by llvm::LoopVectorizationPlanner::emitInvalidCostRemarks(), getEpilogueTailLowering(), llvm::LoopVectorizationPlanner::plan(), and llvm::LoopVectorizePass::processLoop().