LLVM 17.0.0git
Classes | Functions
llvm::memtag Namespace Reference

Classes

struct  AllocaInfo
 
struct  StackInfo
 
class  StackInfoBuilder
 

Functions

bool forAllReachableExits (const DominatorTree &DT, const PostDominatorTree &PDT, const LoopInfo &LI, const Instruction *Start, const SmallVectorImpl< IntrinsicInst * > &Ends, const SmallVectorImpl< Instruction * > &RetVec, llvm::function_ref< void(Instruction *)> Callback)
 
bool isStandardLifetime (const SmallVectorImpl< IntrinsicInst * > &LifetimeStart, const SmallVectorImpl< IntrinsicInst * > &LifetimeEnd, const DominatorTree *DT, const LoopInfo *LI, size_t MaxLifetimes)
 
InstructiongetUntagLocationIfFunctionExit (Instruction &Inst)
 
uint64_t getAllocaSizeInBytes (const AllocaInst &AI)
 
void alignAndPadAlloca (memtag::AllocaInfo &Info, llvm::Align Align)
 

Function Documentation

◆ alignAndPadAlloca()

void llvm::memtag::alignAndPadAlloca ( memtag::AllocaInfo Info,
llvm::Align  Align 
)

◆ forAllReachableExits()

bool llvm::memtag::forAllReachableExits ( const DominatorTree DT,
const PostDominatorTree PDT,
const LoopInfo LI,
const Instruction Start,
const SmallVectorImpl< IntrinsicInst * > &  Ends,
const SmallVectorImpl< Instruction * > &  RetVec,
llvm::function_ref< void(Instruction *)>  Callback 
)

◆ getAllocaSizeInBytes()

uint64_t llvm::memtag::getAllocaSizeInBytes ( const AllocaInst AI)

◆ getUntagLocationIfFunctionExit()

Instruction * llvm::memtag::getUntagLocationIfFunctionExit ( Instruction Inst)

◆ isStandardLifetime()

bool llvm::memtag::isStandardLifetime ( const SmallVectorImpl< IntrinsicInst * > &  LifetimeStart,
const SmallVectorImpl< IntrinsicInst * > &  LifetimeEnd,
const DominatorTree DT,
const LoopInfo LI,
size_t  MaxLifetimes 
)

Definition at line 87 of file MemoryTaggingSupport.cpp.

References llvm::SmallVectorBase< Size_T >::size().