LLVM 22.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 77 of file DebugProgramInstruction.h.
|
default |
References T.
Referenced by operator!=(), and operator==().
llvm::DbgRecordParamRef< T >::DbgRecordParamRef | ( | const T * | Param | ) |
Construct from the templated type.
Definition at line 18 of file DebugProgramInstruction.cpp.
References T.
|
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 21 of file DebugProgramInstruction.cpp.
T * llvm::DbgRecordParamRef< T >::get | ( | ) | const |
Get the underlying type.
isa<T>(getAsMDNode())
. Definition at line 24 of file DebugProgramInstruction.cpp.
References llvm::cast(), and T.
Referenced by llvm::DbgRecordParamRef< llvm::DIExpression >::operator llvm::DIExpression *(), operator*(), and operator->().
|
inline |
Return this
as a MDNode.
Definition at line 111 of file DebugProgramInstruction.h.
|
inlineexplicit |
Check for null.
Check for null in a way that is safe with broken debug info.
Definition at line 108 of file DebugProgramInstruction.h.
|
inline |
Definition at line 100 of file DebugProgramInstruction.h.
|
inline |
Definition at line 116 of file DebugProgramInstruction.h.
References DbgRecordParamRef(), and llvm::Other.
|
inline |
Definition at line 102 of file DebugProgramInstruction.h.
|
inline |
Definition at line 101 of file DebugProgramInstruction.h.
|
inline |
Definition at line 113 of file DebugProgramInstruction.h.
References DbgRecordParamRef(), and llvm::Other.