LLVM 22.0.0git
|
A cache for the CodeExtractor analysis. More...
#include "llvm/Transforms/Utils/CodeExtractor.h"
Public Member Functions | |
LLVM_ABI | CodeExtractorAnalysisCache (Function &F) |
ArrayRef< AllocaInst * > | getAllocas () const |
Get the allocas in the function at the time the analysis was created. | |
LLVM_ABI bool | doesBlockContainClobberOfAddr (BasicBlock &BB, AllocaInst *Addr) const |
Check whether BB contains an instruction thought to load from, store to, or otherwise clobber the alloca Addr . |
A cache for the CodeExtractor analysis.
The operation CodeExtractor::extractCodeRegion is guaranteed not to invalidate this object. This object should conservatively be considered invalid if any other mutating operations on the IR occur.
Constructing this object is O(n) in the size of the function.
Definition at line 47 of file CodeExtractor.h.
CodeExtractorAnalysisCache::CodeExtractorAnalysisCache | ( | Function & | F | ) |
Definition at line 318 of file CodeExtractor.cpp.
References llvm::dyn_cast(), F, and II.
bool CodeExtractorAnalysisCache::doesBlockContainClobberOfAddr | ( | BasicBlock & | BB, |
AllocaInst * | Addr ) const |
Check whether BB
contains an instruction thought to load from, store to, or otherwise clobber the alloca Addr
.
Definition at line 371 of file CodeExtractor.cpp.
Referenced by llvm::CodeExtractor::isLegalToShrinkwrapLifetimeMarkers().
|
inline |
Get the allocas in the function at the time the analysis was created.
Note that some of these allocas may no longer be present in the function, due to CodeExtractor::extractCodeRegion.
Definition at line 66 of file CodeExtractor.h.
Referenced by llvm::CodeExtractor::findAllocas().