LLVM 19.0.0git
|
A tuple of MDNodes. More...
#include "llvm/IR/Metadata.h"
Public Types | |
using | op_iterator = op_iterator_impl< MDNode * > |
using | const_op_iterator = op_iterator_impl< const MDNode * > |
Friends | |
class | LLVMContextImpl |
class | Module |
Additional Inherited Members | |
Protected Types inherited from llvm::ilist_node_impl< OptionsT > | |
using | self_iterator = typename ilist_select_iterator_type< OptionsT::has_iterator_bits, OptionsT, false, false >::type |
using | const_self_iterator = typename ilist_select_iterator_type< OptionsT::has_iterator_bits, OptionsT, false, true >::type |
using | reverse_self_iterator = typename ilist_select_iterator_type< OptionsT::has_iterator_bits, OptionsT, true, false >::type |
using | const_reverse_self_iterator = typename ilist_select_iterator_type< OptionsT::has_iterator_bits, OptionsT, true, true >::type |
Protected Member Functions inherited from llvm::ilist_node_impl< OptionsT > | |
ilist_node_impl ()=default | |
A tuple of MDNodes.
Despite its name, a NamedMDNode isn't itself an MDNode.
NamedMDNodes are named module-level entities that contain lists of MDNodes.
It is illegal for a NamedMDNode to appear as an operand of an MDNode.
Definition at line 1729 of file Metadata.h.
using llvm::NamedMDNode::const_op_iterator = op_iterator_impl<const MDNode *> |
Definition at line 1820 of file Metadata.h.
using llvm::NamedMDNode::op_iterator = op_iterator_impl<MDNode *> |
Definition at line 1815 of file Metadata.h.
|
delete |
NamedMDNode::~NamedMDNode | ( | ) |
Definition at line 1373 of file Metadata.cpp.
References dropAllReferences(), and getNMDOps().
void NamedMDNode::addOperand | ( | MDNode * | M | ) |
Definition at line 1388 of file Metadata.cpp.
References getNMDOps().
Referenced by llvm::Module::addModuleFlag(), llvm::CloneModule(), llvm::DIBuilder::createCompileUnit(), llvm::dxil::createEntryMD(), llvm::OpenMPIRBuilder::createOffloadEntriesAndInfoMetadata(), llvm::OpenMPIRBuilder::createOffloadEntry(), llvm::embedBufferInModule(), llvm::emitAMDGPUPrintfCall(), stripDeadDebugInfoImpl(), llvm::stripDebugifyMetadata(), llvm::dxil::ValidatorVersionMD::update(), updateNVPTXMetadata(), and llvm::dxil::Resources::write().
void NamedMDNode::clearOperands | ( | ) |
Drop all references to this node's operands.
Definition at line 1397 of file Metadata.cpp.
References getNMDOps().
Referenced by dropAllReferences(), stripDeadDebugInfoImpl(), and llvm::stripDebugifyMetadata().
|
inline |
Remove all uses and clear node vector.
Definition at line 1794 of file Metadata.h.
References clearOperands().
Referenced by handleValVerMetadata(), and ~NamedMDNode().
LLVM_DUMP_METHOD void NamedMDNode::dump | ( | ) | const |
Definition at line 5269 of file AsmWriter.cpp.
References llvm::dbgs(), and print().
void NamedMDNode::eraseFromParent | ( | ) |
Drop all references and remove the node from parent module.
Definition at line 1395 of file Metadata.cpp.
References llvm::Module::eraseNamedMetadata(), and getParent().
Referenced by handleValVerMetadata(), and llvm::stripDebugifyMetadata().
StringRef NamedMDNode::getName | ( | ) | const |
Definition at line 1399 of file Metadata.cpp.
Referenced by llvm::Module::eraseNamedMetadata(), LLVMGetNamedMetadataName(), and llvm::stripNonLineTableDebugInfo().
unsigned NamedMDNode::getNumOperands | ( | ) | const |
Definition at line 1378 of file Metadata.cpp.
References getNMDOps().
Referenced by llvm::cacheAnnotationFromMD(), llvm::emitAMDGPUPrintfCall(), getHiPELiteral(), getOCLKernelArgAttribute(), getOperand(), llvm::dxil::ValidatorVersionMD::isEmpty(), op_end(), llvm::Module::setModuleFlag(), setOperand(), llvm::stripDebugifyMetadata(), and llvm::UpgradeModuleFlags().
Definition at line 1382 of file Metadata.cpp.
References assert(), getNMDOps(), getNumOperands(), and N.
Referenced by llvm::cacheAnnotationFromMD(), getHiPELiteral(), getOCLKernelArgAttribute(), handleValVerMetadata(), llvm::Module::debug_compile_units_iterator::operator*(), llvm::Module::setModuleFlag(), llvm::UpgradeModuleFlags(), and upgradeRetainReleaseMarker().
|
inline |
Get the module that holds this named metadata collection.
Definition at line 1799 of file Metadata.h.
Referenced by eraseFromParent(), LLVMGetNextNamedMetadata(), LLVMGetPreviousNamedMetadata(), print(), and llvm::dxil::ValidatorVersionMD::update().
Definition at line 1800 of file Metadata.h.
|
inline |
Definition at line 1817 of file Metadata.h.
Referenced by operands().
|
inline |
Definition at line 1822 of file Metadata.h.
|
inline |
|
inline |
Definition at line 1823 of file Metadata.h.
References getNumOperands().
|
inline |
Definition at line 1825 of file Metadata.h.
References llvm::make_range(), op_begin(), and op_end().
Referenced by llvm::omp::getDeviceKernels(), llvm::Module::getModuleFlagsMetadata(), getNVPTXMDNode(), llvm::OpenMPIRBuilder::loadOffloadInfoMetadata(), and llvm::stripDebugifyMetadata().
|
inline |
Definition at line 1828 of file Metadata.h.
References llvm::make_range(), op_begin(), and op_end().
void NamedMDNode::print | ( | raw_ostream & | ROS, |
bool | IsForDebug = false |
||
) | const |
Definition at line 4856 of file AsmWriter.cpp.
References getParent(), and OS.
Referenced by dump().
void NamedMDNode::print | ( | raw_ostream & | ROS, |
ModuleSlotTracker & | MST, | ||
bool | IsForDebug = false |
||
) | const |
Definition at line 4863 of file AsmWriter.cpp.
References llvm::ModuleSlotTracker::getMachine(), getParent(), and OS.
Definition at line 1390 of file Metadata.cpp.
References assert(), getNMDOps(), getNumOperands(), and I.
Referenced by llvm::dxil::ValidatorVersionMD::update(), and llvm::UpgradeModuleFlags().
|
friend |
Definition at line 1730 of file Metadata.h.
|
friend |
Definition at line 1731 of file Metadata.h.