LLVM 19.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 75 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 109 of file DebugProgramInstruction.h.
|
inlineexplicit |
Check for null.
Check for null in a way that is safe with broken debug info.
Definition at line 106 of file DebugProgramInstruction.h.
|
inline |
Definition at line 98 of file DebugProgramInstruction.h.
|
inline |
Definition at line 114 of file DebugProgramInstruction.h.
References llvm::Other.
|
inline |
Definition at line 100 of file DebugProgramInstruction.h.
References llvm::DbgRecordParamRef< T >::get().
|
inline |
Definition at line 99 of file DebugProgramInstruction.h.
References llvm::DbgRecordParamRef< T >::get().
|
inline |
Definition at line 111 of file DebugProgramInstruction.h.
References llvm::Other.