LLVM 20.0.0git
|
#include "llvm/Transforms/Utils/MemoryTaggingSupport.h"
Public Member Functions | |
StackInfoBuilder (const StackSafetyGlobalInfo *SSI, const char *DebugType) | |
void | visit (OptimizationRemarkEmitter &ORE, Instruction &Inst) |
AllocaInterestingness | getAllocaInterestingness (const AllocaInst &AI) |
StackInfo & | get () |
Definition at line 77 of file MemoryTaggingSupport.h.
|
inline |
Definition at line 79 of file MemoryTaggingSupport.h.
|
inline |
Definition at line 84 of file MemoryTaggingSupport.h.
AllocaInterestingness llvm::memtag::StackInfoBuilder::getAllocaInterestingness | ( | const AllocaInst & | AI | ) |
Definition at line 196 of file MemoryTaggingSupport.cpp.
References llvm::memtag::getAllocaSizeInBytes(), llvm::AllocaInst::getAllocatedType(), llvm::isAllocaPromotable(), llvm::StackSafetyGlobalInfo::isSafe(), llvm::Type::isScalableTy(), llvm::Type::isSized(), llvm::AllocaInst::isStaticAlloca(), llvm::AllocaInst::isSwiftError(), llvm::AllocaInst::isUsedWithInAlloca(), llvm::memtag::kInteresting, llvm::memtag::kSafe, and llvm::memtag::kUninteresting.
Referenced by visit().
void llvm::memtag::StackInfoBuilder::visit | ( | OptimizationRemarkEmitter & | ORE, |
Instruction & | Inst | ||
) |
Definition at line 114 of file MemoryTaggingSupport.cpp.
References llvm::memtag::StackInfo::AllocasToInstrument, llvm::memtag::StackInfo::CallsReturnTwice, llvm::memtag::AllocaInfo::DbgVariableIntrinsics, llvm::memtag::AllocaInfo::DbgVariableRecords, llvm::OptimizationRemarkEmitter::emit(), llvm::filterDbgVars(), llvm::findAllocaForValue(), llvm::for_each(), getAllocaInterestingness(), llvm::Instruction::getDbgRecordRange(), llvm::memtag::getUntagLocationIfFunctionExit(), II, llvm::memtag::kInteresting, llvm::memtag::kSafe, llvm::memtag::kUninteresting, llvm::SmallVectorTemplateBase< T, bool >::push_back(), llvm::memtag::StackInfo::RetVec, and llvm::memtag::StackInfo::UnrecognizedLifetimes.