LLVM 20.0.0git
Public Member Functions | Static Public Member Functions | List of all members
llvm::CaptureInfo Class Reference

Represents which components of the pointer may be captured in which location. More...

#include "llvm/Support/ModRef.h"

Public Member Functions

 CaptureInfo (CaptureComponents OtherComponents, CaptureComponents RetComponents)
 
 CaptureInfo (CaptureComponents Components)
 
CaptureComponents getRetComponents () const
 Get components potentially captured by the return value.
 
CaptureComponents getOtherComponents () const
 Get components potentially captured through locations other than the return value.
 
 operator CaptureComponents () const
 Get the potentially captured components of the pointer (regardless of location).
 
bool operator== (CaptureInfo Other) const
 
bool operator!= (CaptureInfo Other) const
 
CaptureInfo operator| (CaptureInfo Other) const
 Compute union of CaptureInfos.
 
CaptureInfo operator& (CaptureInfo Other) const
 Compute intersection of CaptureInfos.
 
uint32_t toIntValue () const
 Convert CaptureInfo into an encoded integer value (used by captures attribute).
 

Static Public Member Functions

static CaptureInfo all ()
 Create CaptureInfo that may capture all components of the pointer.
 
static CaptureInfo createFromIntValue (uint32_t Data)
 

Detailed Description

Represents which components of the pointer may be captured in which location.

This represents the captures(...) attribute in IR.

For more information on the precise semantics see LangRef.

Definition at line 318 of file ModRef.h.

Constructor & Destructor Documentation

◆ CaptureInfo() [1/2]

llvm::CaptureInfo::CaptureInfo ( CaptureComponents  OtherComponents,
CaptureComponents  RetComponents 
)
inline

Definition at line 323 of file ModRef.h.

◆ CaptureInfo() [2/2]

llvm::CaptureInfo::CaptureInfo ( CaptureComponents  Components)
inline

Definition at line 327 of file ModRef.h.

Member Function Documentation

◆ all()

static CaptureInfo llvm::CaptureInfo::all ( )
inlinestatic

Create CaptureInfo that may capture all components of the pointer.

Definition at line 331 of file ModRef.h.

References llvm::All.

Referenced by llvm::AttributeSet::getCaptureInfo(), and llvm::AttributeSetNode::getCaptureInfo().

◆ createFromIntValue()

static CaptureInfo llvm::CaptureInfo::createFromIntValue ( uint32_t  Data)
inlinestatic

Definition at line 363 of file ModRef.h.

References llvm::Data.

Referenced by llvm::Attribute::getCaptureInfo().

◆ getOtherComponents()

CaptureComponents llvm::CaptureInfo::getOtherComponents ( ) const
inline

Get components potentially captured through locations other than the return value.

Definition at line 338 of file ModRef.h.

Referenced by llvm::operator<<().

◆ getRetComponents()

CaptureComponents llvm::CaptureInfo::getRetComponents ( ) const
inline

Get components potentially captured by the return value.

Definition at line 334 of file ModRef.h.

Referenced by llvm::operator<<().

◆ operator CaptureComponents()

llvm::CaptureInfo::operator CaptureComponents ( ) const
inline

Get the potentially captured components of the pointer (regardless of location).

Definition at line 342 of file ModRef.h.

◆ operator!=()

bool llvm::CaptureInfo::operator!= ( CaptureInfo  Other) const
inline

Definition at line 349 of file ModRef.h.

References llvm::Other.

◆ operator&()

CaptureInfo llvm::CaptureInfo::operator& ( CaptureInfo  Other) const
inline

Compute intersection of CaptureInfos.

Definition at line 358 of file ModRef.h.

References llvm::Other.

◆ operator==()

bool llvm::CaptureInfo::operator== ( CaptureInfo  Other) const
inline

Definition at line 344 of file ModRef.h.

References llvm::Other.

◆ operator|()

CaptureInfo llvm::CaptureInfo::operator| ( CaptureInfo  Other) const
inline

Compute union of CaptureInfos.

Definition at line 352 of file ModRef.h.

References llvm::Other.

◆ toIntValue()

uint32_t llvm::CaptureInfo::toIntValue ( ) const
inline

Convert CaptureInfo into an encoded integer value (used by captures attribute).

Definition at line 370 of file ModRef.h.

Referenced by llvm::AttrBuilder::addCapturesAttr().


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