LLVM 20.0.0git
|
A typed tracking MDNode reference that does not require a definition for its parameter type. More...
#include "llvm/IR/DebugProgramInstruction.h"
Public Member Functions | |
DbgRecordParamRef ()=default | |
DbgRecordParamRef (const T *Param) | |
Construct from the templated type. | |
DbgRecordParamRef (const MDNode *Param) | |
Construct from an MDNode. | |
operator bool () const | |
Check for null. | |
MDNode * | getAsMDNode () const |
Return this as a MDNode. | |
bool | operator== (const DbgRecordParamRef &Other) const |
bool | operator!= (const DbgRecordParamRef &Other) const |
T * | get () const |
Get the underlying type. | |
operator T* () const | |
T * | operator-> () const |
T & | operator* () const |
A typed tracking MDNode reference that does not require a definition for its parameter type.
Necessary to avoid including DebugInfoMetadata.h, which has a significant impact on compile times if included in this file.
Definition at line 76 of file DebugProgramInstruction.h.
|
default |
llvm::DbgRecordParamRef< T >::DbgRecordParamRef | ( | const T * | Param | ) |
Construct from the templated type.
Definition at line 17 of file DebugProgramInstruction.cpp.
|
explicit |
Construct from an MDNode.
Note: if Param
does not have the template type, a verifier check will fail, and accessors will crash. However, construction from other nodes is supported in order to handle forward references when reading textual IR.
Definition at line 20 of file DebugProgramInstruction.cpp.
T * llvm::DbgRecordParamRef< T >::get |
Get the underlying type.
isa<T>(getAsMDNode())
. Definition at line 23 of file DebugProgramInstruction.cpp.
References llvm::Ref.
Referenced by llvm::DbgRecordParamRef< llvm::DIExpression >::operator llvm::DIExpression *(), llvm::DbgRecordParamRef< T >::operator*(), and llvm::DbgRecordParamRef< T >::operator->().
|
inline |
Return this
as a MDNode.
Definition at line 110 of file DebugProgramInstruction.h.
|
inlineexplicit |
Check for null.
Check for null in a way that is safe with broken debug info.
Definition at line 107 of file DebugProgramInstruction.h.
|
inline |
Definition at line 99 of file DebugProgramInstruction.h.
|
inline |
Definition at line 115 of file DebugProgramInstruction.h.
References llvm::Other.
|
inline |
Definition at line 101 of file DebugProgramInstruction.h.
References llvm::DbgRecordParamRef< T >::get().
|
inline |
Definition at line 100 of file DebugProgramInstruction.h.
References llvm::DbgRecordParamRef< T >::get().
|
inline |
Definition at line 112 of file DebugProgramInstruction.h.
References llvm::Other.