LLVM 19.0.0git
Public Member Functions | Static Public Member Functions | List of all members
LiveDebugValues::LocIdx Class Reference

Handle-class for a particular "location". More...

#include "CodeGen/LiveDebugValues/InstrRefBasedImpl.h"

Public Member Functions

 LocIdx (unsigned L)
 
bool isIllegal () const
 
uint64_t asU64 () const
 
bool operator== (unsigned L) const
 
bool operator== (const LocIdx &L) const
 
bool operator!= (unsigned L) const
 
bool operator!= (const LocIdx &L) const
 
bool operator< (const LocIdx &Other) const
 

Static Public Member Functions

static LocIdx MakeIllegalLoc ()
 
static LocIdx MakeTombstoneLoc ()
 

Detailed Description

Handle-class for a particular "location".

This value-type uniquely symbolises a register or stack location, allowing manipulation of locations without concern for where that location is. Practically, this allows us to treat the state of the machine at a particular point as an array of values, rather than a map of values.

Definition at line 43 of file InstrRefBasedImpl.h.

Constructor & Destructor Documentation

◆ LocIdx()

LiveDebugValues::LocIdx::LocIdx ( unsigned  L)
inline

Definition at line 52 of file InstrRefBasedImpl.h.

References assert(), and NUM_LOC_BITS.

Member Function Documentation

◆ asU64()

uint64_t LiveDebugValues::LocIdx::asU64 ( ) const
inline

◆ isIllegal()

bool LiveDebugValues::LocIdx::isIllegal ( ) const
inline

Definition at line 63 of file InstrRefBasedImpl.h.

Referenced by TransferTracker::checkInstForNewValues().

◆ MakeIllegalLoc()

static LocIdx LiveDebugValues::LocIdx::MakeIllegalLoc ( )
inlinestatic

◆ MakeTombstoneLoc()

static LocIdx LiveDebugValues::LocIdx::MakeTombstoneLoc ( )
inlinestatic

Definition at line 57 of file InstrRefBasedImpl.h.

Referenced by llvm::DenseMapInfo< LocIdx >::getTombstoneKey().

◆ operator!=() [1/2]

bool LiveDebugValues::LocIdx::operator!= ( const LocIdx L) const
inline

Definition at line 73 of file InstrRefBasedImpl.h.

◆ operator!=() [2/2]

bool LiveDebugValues::LocIdx::operator!= ( unsigned  L) const
inline

Definition at line 71 of file InstrRefBasedImpl.h.

◆ operator<()

bool LiveDebugValues::LocIdx::operator< ( const LocIdx Other) const
inline

Definition at line 75 of file InstrRefBasedImpl.h.

References llvm::Other.

◆ operator==() [1/2]

bool LiveDebugValues::LocIdx::operator== ( const LocIdx L) const
inline

Definition at line 69 of file InstrRefBasedImpl.h.

◆ operator==() [2/2]

bool LiveDebugValues::LocIdx::operator== ( unsigned  L) const
inline

Definition at line 67 of file InstrRefBasedImpl.h.


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