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

Holds the information from a dbg_value node through SDISel. More...

#include "CodeGen/SelectionDAG/SDNodeDbgValue.h"

Public Member Functions

 SDDbgValue (BumpPtrAllocator &Alloc, DIVariable *Var, DIExpression *Expr, ArrayRef< SDDbgOperand > L, ArrayRef< SDNode * > Dependencies, bool IsIndirect, DebugLoc DL, unsigned O, bool IsVariadic)
 
 SDDbgValue (const SDDbgValue &Other)=delete
 
SDDbgValueoperator= (const SDDbgValue &Other)=delete
 
 ~SDDbgValue ()=delete
 
DIVariablegetVariable () const
 Returns the DIVariable pointer for the variable.
 
DIExpressiongetExpression () const
 Returns the DIExpression pointer for the expression.
 
ArrayRef< SDDbgOperandgetLocationOps () const
 
SmallVector< SDDbgOperandcopyLocationOps () const
 
SmallVector< SDNode * > getSDNodes () const
 
ArrayRef< SDNode * > getAdditionalDependencies () const
 
bool isIndirect () const
 Returns whether this is an indirect value.
 
bool isVariadic () const
 
const DebugLocgetDebugLoc () const
 Returns the DebugLoc.
 
unsigned getOrder () const
 Returns the SDNodeOrder.
 
void setIsInvalidated ()
 setIsInvalidated / isInvalidated - Setter / getter of the "Invalidated" property.
 
bool isInvalidated () const
 
void setIsEmitted ()
 setIsEmitted / isEmitted - Getter/Setter for flag indicating that this SDDbgValue has been emitted to an MBB.
 
bool isEmitted () const
 
void clearIsEmitted ()
 clearIsEmitted - Reset Emitted flag, for certain special cases where SDDbgValue is emitted twice.
 
LLVM_DUMP_METHOD void dump () const
 
LLVM_DUMP_METHOD void print (raw_ostream &OS) const
 

Detailed Description

Holds the information from a dbg_value node through SDISel.

We do not use SDValue here to avoid including its header.

Definition at line 133 of file SDNodeDbgValue.h.

Constructor & Destructor Documentation

◆ SDDbgValue() [1/2]

llvm::SDDbgValue::SDDbgValue ( BumpPtrAllocator Alloc,
DIVariable Var,
DIExpression Expr,
ArrayRef< SDDbgOperand L,
ArrayRef< SDNode * >  Dependencies,
bool  IsIndirect,
DebugLoc  DL,
unsigned  O,
bool  IsVariadic 
)
inline

◆ SDDbgValue() [2/2]

llvm::SDDbgValue::SDDbgValue ( const SDDbgValue Other)
delete

◆ ~SDDbgValue()

llvm::SDDbgValue::~SDDbgValue ( )
delete

Member Function Documentation

◆ clearIsEmitted()

void llvm::SDDbgValue::clearIsEmitted ( )
inline

clearIsEmitted - Reset Emitted flag, for certain special cases where SDDbgValue is emitted twice.

DBG_INSTR_REF depends on this behaviour.

Definition at line 234 of file SDNodeDbgValue.h.

◆ copyLocationOps()

SmallVector< SDDbgOperand > llvm::SDDbgValue::copyLocationOps ( ) const
inline

Definition at line 189 of file SDNodeDbgValue.h.

◆ dump()

LLVM_DUMP_METHOD void SDDbgValue::dump ( ) const

Definition at line 1002 of file SelectionDAGDumper.cpp.

References llvm::dbgs(), isInvalidated(), and print().

◆ getAdditionalDependencies()

ArrayRef< SDNode * > llvm::SDDbgValue::getAdditionalDependencies ( ) const
inline

Definition at line 204 of file SDNodeDbgValue.h.

Referenced by getSDNodes().

◆ getDebugLoc()

const DebugLoc & llvm::SDDbgValue::getDebugLoc ( ) const
inline

◆ getExpression()

DIExpression * llvm::SDDbgValue::getExpression ( ) const
inline

◆ getLocationOps()

ArrayRef< SDDbgOperand > llvm::SDDbgValue::getLocationOps ( ) const
inline

◆ getOrder()

unsigned llvm::SDDbgValue::getOrder ( ) const
inline

Returns the SDNodeOrder.

This is the order of the preceding node in the input.

Definition at line 219 of file SDNodeDbgValue.h.

Referenced by print().

◆ getSDNodes()

SmallVector< SDNode * > llvm::SDDbgValue::getSDNodes ( ) const
inline

◆ getVariable()

DIVariable * llvm::SDDbgValue::getVariable ( ) const
inline

◆ isEmitted()

bool llvm::SDDbgValue::isEmitted ( ) const
inline

Definition at line 230 of file SDNodeDbgValue.h.

Referenced by print().

◆ isIndirect()

bool llvm::SDDbgValue::isIndirect ( ) const
inline

Returns whether this is an indirect value.

Definition at line 210 of file SDNodeDbgValue.h.

Referenced by llvm::InstrEmitter::EmitDbgInstrRef(), llvm::InstrEmitter::EmitDbgValueFromSingleOp(), and print().

◆ isInvalidated()

bool llvm::SDDbgValue::isInvalidated ( ) const
inline

Definition at line 225 of file SDNodeDbgValue.h.

References llvm::Invalid.

Referenced by dump(), llvm::InstrEmitter::EmitDbgValue(), and print().

◆ isVariadic()

bool llvm::SDDbgValue::isVariadic ( ) const
inline

◆ operator=()

SDDbgValue & llvm::SDDbgValue::operator= ( const SDDbgValue Other)
delete

◆ print()

LLVM_DUMP_METHOD void SDDbgValue::print ( raw_ostream OS) const

◆ setIsEmitted()

void llvm::SDDbgValue::setIsEmitted ( )
inline

setIsEmitted / isEmitted - Getter/Setter for flag indicating that this SDDbgValue has been emitted to an MBB.

Definition at line 229 of file SDNodeDbgValue.h.

Referenced by llvm::InstrEmitter::EmitDbgValue().

◆ setIsInvalidated()

void llvm::SDDbgValue::setIsInvalidated ( )
inline

setIsInvalidated / isInvalidated - Setter / getter of the "Invalidated" property.

A SDDbgValue is invalid if the SDNode that produces the value is deleted.

Definition at line 224 of file SDNodeDbgValue.h.

References llvm::Invalid.


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