LLVM 20.0.0git
|
A cache for the CodeExtractor analysis. More...
#include "llvm/Transforms/Utils/CodeExtractor.h"
Public Member Functions | |
CodeExtractorAnalysisCache (Function &F) | |
ArrayRef< AllocaInst * > | getAllocas () const |
Get the allocas in the function at the time the analysis was created. | |
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 45 of file CodeExtractor.h.
CodeExtractorAnalysisCache::CodeExtractorAnalysisCache | ( | Function & | F | ) |
Definition at line 298 of file CodeExtractor.cpp.
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 351 of file CodeExtractor.cpp.
References Addr.
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 64 of file CodeExtractor.h.
Referenced by llvm::CodeExtractor::findAllocas().