LLVM 20.0.0git
Public Member Functions | Friends | List of all members
llvm::RawLocationWrapper Class Reference

Lightweight class that wraps the location operand metadata of a debug intrinsic. More...

#include "llvm/IR/IntrinsicInst.h"

Public Member Functions

 RawLocationWrapper ()=default
 
 RawLocationWrapper (Metadata *RawLocation)
 
MetadatagetRawLocation () const
 
iterator_range< location_op_iteratorlocation_ops () const
 Get the locations corresponding to the variable referenced by the debug info intrinsic.
 
ValuegetVariableLocationOp (unsigned OpIdx) const
 
unsigned getNumVariableLocationOps () const
 
bool hasArgList () const
 
bool isKillLocation (const DIExpression *Expression) const
 

Friends

bool operator== (const RawLocationWrapper &A, const RawLocationWrapper &B)
 
bool operator!= (const RawLocationWrapper &A, const RawLocationWrapper &B)
 
bool operator> (const RawLocationWrapper &A, const RawLocationWrapper &B)
 
bool operator>= (const RawLocationWrapper &A, const RawLocationWrapper &B)
 
bool operator< (const RawLocationWrapper &A, const RawLocationWrapper &B)
 
bool operator<= (const RawLocationWrapper &A, const RawLocationWrapper &B)
 

Detailed Description

Lightweight class that wraps the location operand metadata of a debug intrinsic.

The raw location may be a ValueAsMetadata, an empty MDTuple, or a DIArgList.

Definition at line 241 of file IntrinsicInst.h.

Constructor & Destructor Documentation

◆ RawLocationWrapper() [1/2]

llvm::RawLocationWrapper::RawLocationWrapper ( )
default

◆ RawLocationWrapper() [2/2]

llvm::RawLocationWrapper::RawLocationWrapper ( Metadata RawLocation)
inlineexplicit

Definition at line 246 of file IntrinsicInst.h.

References assert().

Member Function Documentation

◆ getNumVariableLocationOps()

unsigned llvm::RawLocationWrapper::getNumVariableLocationOps ( ) const
inline

◆ getRawLocation()

Metadata * llvm::RawLocationWrapper::getRawLocation ( ) const
inline

◆ getVariableLocationOp()

Value * RawLocationWrapper::getVariableLocationOp ( unsigned  OpIdx) const

Definition at line 99 of file IntrinsicInst.cpp.

References assert(), and getRawLocation().

Referenced by llvm::DbgVariableIntrinsic::getVariableLocationOp().

◆ hasArgList()

bool llvm::RawLocationWrapper::hasArgList ( ) const
inline

◆ isKillLocation()

bool llvm::RawLocationWrapper::isKillLocation ( const DIExpression Expression) const
inline

◆ location_ops()

iterator_range< location_op_iterator > RawLocationWrapper::location_ops ( ) const

Get the locations corresponding to the variable referenced by the debug info intrinsic.

DbgVariableIntrinsic - This is the common base class for debug info intrinsics for variables.

Depending on the intrinsic, this could be the variable's value or its address.

Definition at line 74 of file IntrinsicInst.cpp.

References assert(), and getRawLocation().

Referenced by isKillLocation(), and llvm::DbgVariableIntrinsic::location_ops().

Friends And Related Function Documentation

◆ operator!=

bool operator!= ( const RawLocationWrapper A,
const RawLocationWrapper B 
)
friend

Definition at line 283 of file IntrinsicInst.h.

◆ operator<

bool operator< ( const RawLocationWrapper A,
const RawLocationWrapper B 
)
friend

Definition at line 295 of file IntrinsicInst.h.

◆ operator<=

bool operator<= ( const RawLocationWrapper A,
const RawLocationWrapper B 
)
friend

Definition at line 299 of file IntrinsicInst.h.

◆ operator==

bool operator== ( const RawLocationWrapper A,
const RawLocationWrapper B 
)
friend

Definition at line 279 of file IntrinsicInst.h.

◆ operator>

bool operator> ( const RawLocationWrapper A,
const RawLocationWrapper B 
)
friend

Definition at line 287 of file IntrinsicInst.h.

◆ operator>=

bool operator>= ( const RawLocationWrapper A,
const RawLocationWrapper B 
)
friend

Definition at line 291 of file IntrinsicInst.h.


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