LLVM
17.0.0git
|
Go to the source code of this file.
Namespaces | |
llvm | |
This is an optimization pass for GlobalISel generic memory operations. | |
llvm::objcarc | |
Functions | |
llvm::Instruction * | llvm::objcarc::findSingleDependency (DependenceKind Flavor, const Value *Arg, BasicBlock *StartBB, Instruction *StartInst, ProvenanceAnalysis &PA) |
Find dependent instructions. More... | |
bool | llvm::objcarc::Depends (DependenceKind Flavor, Instruction *Inst, const Value *Arg, ProvenanceAnalysis &PA) |
Test if there can be dependencies on Inst through Arg. More... | |
bool | llvm::objcarc::CanUse (const Instruction *Inst, const Value *Ptr, ProvenanceAnalysis &PA, ARCInstKind Class) |
Test whether the given instruction can "use" the given pointer's object in a way that requires the reference count to be positive. More... | |
bool | llvm::objcarc::CanAlterRefCount (const Instruction *Inst, const Value *Ptr, ProvenanceAnalysis &PA, ARCInstKind Class) |
Test whether the given instruction can result in a reference count modification (positive or negative) for the pointer's object. More... | |
bool | llvm::objcarc::CanDecrementRefCount (const Instruction *Inst, const Value *Ptr, ProvenanceAnalysis &PA, ARCInstKind Class) |
Returns true if we can not conservatively prove that Inst can not decrement the reference count of Ptr. More... | |
static bool | llvm::objcarc::CanDecrementRefCount (const Instruction *Inst, const Value *Ptr, ProvenanceAnalysis &PA) |
This file declares special dependency analysis routines used in Objective C ARC Optimizations.
WARNING: This file knows about certain library functions. It recognizes them by name, and hardwires knowledge of their semantics.
WARNING: This file knows about how certain Objective-C library functions are used. Naive LLVM IR transformations which would otherwise be behavior-preserving may break these assumptions.
Definition in file DependencyAnalysis.h.