Batch wrapper that reuses AAQueryInfo across alias queries.

Synopsis

Declared in <llvm/Analysis/AliasAnalysis.h>

class BatchAAResults;

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.

Member Functions

Name

Description

BatchAAResults [constructor]

Constructors

alias

Query whether two memory locations may alias.

callCapturesBefore

Return whether a call may capture MemLoc before I.

disableDominatorTree

Disable the use of the dominator tree during alias analysis queries.

enableCrossIterationMode

Assume that values may come from different cycle iterations.

getArgModRefInfo

Return ModRef info for pointer argument ArgIdx of Call.

getMemoryEffects

Return the memory effects of call site Call.

getModRefInfo

getModRefInfo overloads

getModRefInfoMask

Return a ModRef bitmask for memory location Loc.

isMustAlias

isMustAlias overloads

isNoAlias

Return true if LocA and LocB do not alias.

pointsToConstantMemory

pointsToConstantMemory overloads

Friends

Name

Description

llvm::BatchAACrossIterationScope

Temporarily set the cross iteration mode on a BatchAA instance.

Created with MrDocs