LLVM 20.0.0git
Public Member Functions | Public Attributes | List of all members
llvm::RuntimePointerChecking::PointerInfo Struct Reference

#include "llvm/Analysis/LoopAccessAnalysis.h"

Public Member Functions

 PointerInfo (Value *PointerValue, const SCEV *Start, const SCEV *End, bool IsWritePtr, unsigned DependencySetId, unsigned AliasSetId, const SCEV *Expr, bool NeedsFreeze)
 

Public Attributes

TrackingVH< ValuePointerValue
 Holds the pointer value that we need to check.
 
const SCEVStart
 Holds the smallest byte address accessed by the pointer throughout all iterations of the loop.
 
const SCEVEnd
 Holds the largest byte address accessed by the pointer throughout all iterations of the loop, plus 1.
 
bool IsWritePtr
 Holds the information if this pointer is used for writing to memory.
 
unsigned DependencySetId
 Holds the id of the set of pointers that could be dependent because of a shared underlying object.
 
unsigned AliasSetId
 Holds the id of the disjoint alias set to which this pointer belongs.
 
const SCEVExpr
 SCEV for the access.
 
bool NeedsFreeze
 True if the pointer expressions needs to be frozen after expansion.
 

Detailed Description

Definition at line 451 of file LoopAccessAnalysis.h.

Constructor & Destructor Documentation

◆ PointerInfo()

llvm::RuntimePointerChecking::PointerInfo::PointerInfo ( Value PointerValue,
const SCEV Start,
const SCEV End,
bool  IsWritePtr,
unsigned  DependencySetId,
unsigned  AliasSetId,
const SCEV Expr,
bool  NeedsFreeze 
)
inline

Definition at line 472 of file LoopAccessAnalysis.h.

Member Data Documentation

◆ AliasSetId

unsigned llvm::RuntimePointerChecking::PointerInfo::AliasSetId

Holds the id of the disjoint alias set to which this pointer belongs.

Definition at line 466 of file LoopAccessAnalysis.h.

Referenced by llvm::RuntimePointerChecking::needsChecking().

◆ DependencySetId

unsigned llvm::RuntimePointerChecking::PointerInfo::DependencySetId

Holds the id of the set of pointers that could be dependent because of a shared underlying object.

Definition at line 464 of file LoopAccessAnalysis.h.

Referenced by llvm::RuntimePointerChecking::needsChecking().

◆ End

const SCEV* llvm::RuntimePointerChecking::PointerInfo::End

Holds the largest byte address accessed by the pointer throughout all iterations of the loop, plus 1.

Definition at line 459 of file LoopAccessAnalysis.h.

◆ Expr

const SCEV* llvm::RuntimePointerChecking::PointerInfo::Expr

SCEV for the access.

Definition at line 468 of file LoopAccessAnalysis.h.

◆ IsWritePtr

bool llvm::RuntimePointerChecking::PointerInfo::IsWritePtr

Holds the information if this pointer is used for writing to memory.

Definition at line 461 of file LoopAccessAnalysis.h.

Referenced by llvm::RuntimePointerChecking::needsChecking().

◆ NeedsFreeze

bool llvm::RuntimePointerChecking::PointerInfo::NeedsFreeze

True if the pointer expressions needs to be frozen after expansion.

Definition at line 470 of file LoopAccessAnalysis.h.

◆ PointerValue

TrackingVH<Value> llvm::RuntimePointerChecking::PointerInfo::PointerValue

Holds the pointer value that we need to check.

Definition at line 453 of file LoopAccessAnalysis.h.

Referenced by llvm::LoopVersioning::prepareNoAliasMetadata().

◆ Start

const SCEV* llvm::RuntimePointerChecking::PointerInfo::Start

Holds the smallest byte address accessed by the pointer throughout all iterations of the loop.

Definition at line 456 of file LoopAccessAnalysis.h.


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