LLVM 20.0.0git
|
This file defines a special form of Alias Analysis called Provenance Analysis''.
More...
#include "ProvenanceAnalysis.h"
#include "llvm/ADT/SmallPtrSet.h"
#include "llvm/ADT/SmallVector.h"
#include "llvm/Analysis/AliasAnalysis.h"
#include "llvm/Analysis/ObjCARCAnalysisUtils.h"
#include "llvm/IR/Instructions.h"
#include "llvm/IR/Module.h"
#include "llvm/IR/Use.h"
#include "llvm/IR/User.h"
#include "llvm/IR/Value.h"
#include "llvm/Support/Casting.h"
#include <utility>
Go to the source code of this file.
Functions | |
static bool | IsStoredObjCPointer (const Value *P) |
Test if the value of P, or any value covered by its provenance, is ever stored within the function (not counting callees). | |
This file defines a special form of Alias Analysis called Provenance Analysis''.
The wordprovenance'' refers to the history of the ownership of an object. Thus `‘Provenance Analysis’' is an analysis which attempts to use various techniques to determine if locally
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 ProvenanceAnalysis.cpp.
Test if the value of P, or any value covered by its provenance, is ever stored within the function (not counting callees).
Definition at line 81 of file ProvenanceAnalysis.cpp.
References llvm::SmallVectorBase< Size_T >::empty(), llvm::SmallPtrSetImpl< PtrType >::insert(), P, llvm::SmallVectorImpl< T >::pop_back_val(), and llvm::SmallVectorTemplateBase< T, bool >::push_back().