LLVM 18.0.0git
|
A tuple of MDNodes. More...
#include "llvm/IR/Metadata.h"
Public Types | |
using | op_iterator = op_iterator_impl< MDNode *, MDNode > |
using | const_op_iterator = op_iterator_impl< const MDNode *, MDNode > |
Friends | |
class | LLVMContextImpl |
class | Module |
Additional Inherited Members | |
![]() | |
using | self_iterator = ilist_iterator< OptionsT, false, false > |
using | const_self_iterator = ilist_iterator< OptionsT, false, true > |
using | reverse_self_iterator = ilist_iterator< OptionsT, true, false > |
using | const_reverse_self_iterator = ilist_iterator< OptionsT, true, true > |
![]() | |
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 1604 of file Metadata.h.
using llvm::NamedMDNode::const_op_iterator = op_iterator_impl<const MDNode *, MDNode> |
Definition at line 1695 of file Metadata.h.
using llvm::NamedMDNode::op_iterator = op_iterator_impl<MDNode *, MDNode> |
Definition at line 1690 of file Metadata.h.
|
delete |
NamedMDNode::~NamedMDNode | ( | ) |
Definition at line 1272 of file Metadata.cpp.
References dropAllReferences(), and getNMDOps().
void NamedMDNode::addOperand | ( | MDNode * | M | ) |
Definition at line 1287 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(), and llvm::dxil::Resources::write().
void NamedMDNode::clearOperands | ( | ) |
Drop all references to this node's operands.
Definition at line 1296 of file Metadata.cpp.
References getNMDOps().
Referenced by dropAllReferences(), stripDeadDebugInfoImpl(), and llvm::stripDebugifyMetadata().
|
inline |
Remove all uses and clear node vector.
Definition at line 1669 of file Metadata.h.
References clearOperands().
Referenced by handleValVerMetadata(), and ~NamedMDNode().
LLVM_DUMP_METHOD void NamedMDNode::dump | ( | ) | const |
Definition at line 4956 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 1294 of file Metadata.cpp.
References llvm::Module::eraseNamedMetadata(), and getParent().
Referenced by handleValVerMetadata(), and llvm::stripDebugifyMetadata().
StringRef NamedMDNode::getName | ( | ) | const |
Definition at line 1298 of file Metadata.cpp.
Referenced by llvm::Module::eraseNamedMetadata(), LLVMGetNamedMetadataName(), and llvm::stripNonLineTableDebugInfo().
unsigned NamedMDNode::getNumOperands | ( | ) | const |
Definition at line 1277 of file Metadata.cpp.
References getNMDOps().
Referenced by llvm::cacheAnnotationFromMD(), llvm::emitAMDGPUPrintfCall(), getHiPELiteral(), getKernelArgAttribute(), getOperand(), llvm::dxil::ValidatorVersionMD::isEmpty(), op_end(), llvm::Module::setModuleFlag(), setOperand(), llvm::stripDebugifyMetadata(), and llvm::UpgradeModuleFlags().
Definition at line 1281 of file Metadata.cpp.
References assert(), getNMDOps(), getNumOperands(), and N.
Referenced by llvm::cacheAnnotationFromMD(), getHiPELiteral(), getKernelArgAttribute(), 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 1674 of file Metadata.h.
Referenced by eraseFromParent(), LLVMGetNextNamedMetadata(), LLVMGetPreviousNamedMetadata(), print(), and llvm::dxil::ValidatorVersionMD::update().
Definition at line 1675 of file Metadata.h.
|
inline |
Definition at line 1692 of file Metadata.h.
Referenced by operands().
|
inline |
Definition at line 1697 of file Metadata.h.
|
inline |
|
inline |
Definition at line 1698 of file Metadata.h.
References getNumOperands().
|
inline |
Definition at line 1700 of file Metadata.h.
References llvm::make_range(), op_begin(), and op_end().
Referenced by llvm::omp::getDeviceKernels(), llvm::Module::getModuleFlagsMetadata(), llvm::OpenMPIRBuilder::loadOffloadInfoMetadata(), and llvm::stripDebugifyMetadata().
|
inline |
Definition at line 1703 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 4620 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 4627 of file AsmWriter.cpp.
References llvm::ModuleSlotTracker::getMachine(), getParent(), and OS.
Definition at line 1289 of file Metadata.cpp.
References assert(), getNMDOps(), getNumOperands(), and I.
Referenced by llvm::dxil::ValidatorVersionMD::update(), and llvm::UpgradeModuleFlags().
|
friend |
Definition at line 1605 of file Metadata.h.
|
friend |
Definition at line 1606 of file Metadata.h.