LLVM  9.0.0svn
Public Member Functions | List of all members
llvm::BatchAAResults Class Reference

This class is a wrapper over an AAResults, and it is intended to be used only when there are no IR changes inbetween queries. More...

#include "llvm/Analysis/AliasAnalysis.h"

Public Member Functions

 BatchAAResults (AAResults &AAR)
 
AliasResult alias (const MemoryLocation &LocA, const MemoryLocation &LocB)
 
bool pointsToConstantMemory (const MemoryLocation &Loc, bool OrLocal=false)
 
ModRefInfo getModRefInfo (const CallBase *Call, const MemoryLocation &Loc)
 
ModRefInfo getModRefInfo (const CallBase *Call1, const CallBase *Call2)
 
ModRefInfo getModRefInfo (const Instruction *I, const Optional< MemoryLocation > &OptLoc)
 
ModRefInfo getModRefInfo (Instruction *I, const CallBase *Call2)
 
ModRefInfo getArgModRefInfo (const CallBase *Call, unsigned ArgIdx)
 
FunctionModRefBehavior getModRefBehavior (const CallBase *Call)
 

Detailed Description

This class is a wrapper over an AAResults, and it is intended to be used only when there are no IR changes inbetween queries.

BatchAAResults is reusing the same AAQueryInfo to preserve the state across queries, esentially making AA work in "batch mode". The internal state cannot be cleared, so to go "out-of-batch-mode", the user must either use AAResults, or create a new BatchAAResults.

Definition at line 777 of file AliasAnalysis.h.

Constructor & Destructor Documentation

◆ BatchAAResults()

llvm::BatchAAResults::BatchAAResults ( AAResults AAR)
inline

Definition at line 782 of file AliasAnalysis.h.

Member Function Documentation

◆ alias()

AliasResult llvm::BatchAAResults::alias ( const MemoryLocation LocA,
const MemoryLocation LocB 
)
inline

Definition at line 783 of file AliasAnalysis.h.

References llvm::AAResults::alias().

Referenced by lifetimeEndsAt().

◆ getArgModRefInfo()

ModRefInfo llvm::BatchAAResults::getArgModRefInfo ( const CallBase Call,
unsigned  ArgIdx 
)
inline

Definition at line 802 of file AliasAnalysis.h.

References llvm::AAResults::getArgModRefInfo().

◆ getModRefBehavior()

FunctionModRefBehavior llvm::BatchAAResults::getModRefBehavior ( const CallBase Call)
inline

Definition at line 805 of file AliasAnalysis.h.

References llvm::AAResults::getModRefBehavior().

◆ getModRefInfo() [1/4]

ModRefInfo llvm::BatchAAResults::getModRefInfo ( const CallBase Call,
const MemoryLocation Loc 
)
inline

Definition at line 789 of file AliasAnalysis.h.

References llvm::AAResults::getModRefInfo().

◆ getModRefInfo() [2/4]

ModRefInfo llvm::BatchAAResults::getModRefInfo ( const CallBase Call1,
const CallBase Call2 
)
inline

Definition at line 792 of file AliasAnalysis.h.

References llvm::AAResults::getModRefInfo().

◆ getModRefInfo() [3/4]

ModRefInfo llvm::BatchAAResults::getModRefInfo ( const Instruction I,
const Optional< MemoryLocation > &  OptLoc 
)
inline

Definition at line 795 of file AliasAnalysis.h.

References llvm::AAResults::getModRefInfo().

◆ getModRefInfo() [4/4]

ModRefInfo llvm::BatchAAResults::getModRefInfo ( Instruction I,
const CallBase Call2 
)
inline

Definition at line 799 of file AliasAnalysis.h.

References llvm::AAResults::getModRefInfo().

◆ pointsToConstantMemory()

bool llvm::BatchAAResults::pointsToConstantMemory ( const MemoryLocation Loc,
bool  OrLocal = false 
)
inline

Definition at line 786 of file AliasAnalysis.h.

References llvm::AAResults::pointsToConstantMemory().


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