LLVM 19.0.0git
Public Member Functions | List of all members
llvm::objcarc::ProvenanceAnalysis Class Reference

This is similar to BasicAliasAnalysis, and it uses many of the same techniques, except it uses special ObjC-specific reasoning about pointer relationships. More...

#include "Transforms/ObjCARC/ProvenanceAnalysis.h"

Public Member Functions

 ProvenanceAnalysis ()=default
 
 ProvenanceAnalysis (const ProvenanceAnalysis &)=delete
 
ProvenanceAnalysisoperator= (const ProvenanceAnalysis &)=delete
 
void setAA (AAResults *aa)
 
AAResultsgetAA () const
 
bool related (const Value *A, const Value *B)
 
void clear ()
 

Detailed Description

This is similar to BasicAliasAnalysis, and it uses many of the same techniques, except it uses special ObjC-specific reasoning about pointer relationships.

In this context Provenance'' is defined as the history of an object's ownership. ThusProvenance Analysis'' is defined by using the notion of an `‘independent provenance source’' of a pointer to determine whether or not two pointers have the same provenance source and thus could potentially be related.

Definition at line 51 of file ProvenanceAnalysis.h.

Constructor & Destructor Documentation

◆ ProvenanceAnalysis() [1/2]

llvm::objcarc::ProvenanceAnalysis::ProvenanceAnalysis ( )
default

◆ ProvenanceAnalysis() [2/2]

llvm::objcarc::ProvenanceAnalysis::ProvenanceAnalysis ( const ProvenanceAnalysis )
delete

Member Function Documentation

◆ clear()

void llvm::objcarc::ProvenanceAnalysis::clear ( )
inline

◆ getAA()

AAResults * llvm::objcarc::ProvenanceAnalysis::getAA ( ) const
inline

Definition at line 73 of file ProvenanceAnalysis.h.

Referenced by llvm::objcarc::CanAlterRefCount(), and llvm::objcarc::CanUse().

◆ operator=()

ProvenanceAnalysis & llvm::objcarc::ProvenanceAnalysis::operator= ( const ProvenanceAnalysis )
delete

◆ related()

bool ProvenanceAnalysis::related ( const Value A,
const Value B 
)

◆ setAA()

void llvm::objcarc::ProvenanceAnalysis::setAA ( AAResults aa)
inline

Definition at line 71 of file ProvenanceAnalysis.h.

References aa.

Referenced by llvm::PAEvalPass::run().


The documentation for this class was generated from the following files: