LLVM  6.0.0svn
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 (AliasAnalysis *aa)
 
AliasAnalysisgetAA () const
 
bool related (const Value *A, const Value *B, const DataLayout &DL)
 
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()

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

Definition at line 70 of file ProvenanceAnalysis.h.

References related().

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,
const DataLayout DL 
)

◆ setAA()

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

Definition at line 68 of file ProvenanceAnalysis.h.

References aa.

Referenced by insertIfNamed().


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