LLVM
8.0.1
|
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 | |
Protected Types inherited from llvm::ilist_node_impl< ilist_detail::compute_node_options< NamedMDNode, Options... >::type > | |
using | self_iterator = ilist_iterator< ilist_detail::compute_node_options< NamedMDNode, Options... >::type, false, false > |
using | const_self_iterator = ilist_iterator< ilist_detail::compute_node_options< NamedMDNode, Options... >::type, false, true > |
using | reverse_self_iterator = ilist_iterator< ilist_detail::compute_node_options< NamedMDNode, Options... >::type, true, false > |
using | const_reverse_self_iterator = ilist_iterator< ilist_detail::compute_node_options< NamedMDNode, Options... >::type, true, true > |
Protected Member Functions inherited from llvm::ilist_node_impl< ilist_detail::compute_node_options< NamedMDNode, Options... >::type > | |
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 1326 of file Metadata.h.
using llvm::NamedMDNode::const_op_iterator = op_iterator_impl<const MDNode *, MDNode> |
Definition at line 1413 of file Metadata.h.
using llvm::NamedMDNode::op_iterator = op_iterator_impl<MDNode *, MDNode> |
Definition at line 1408 of file Metadata.h.
|
delete |
NamedMDNode::~NamedMDNode | ( | ) |
Definition at line 1072 of file Metadata.cpp.
References llvm::MDNode::dropAllReferences(), and getNMDOps().
void NamedMDNode::addOperand | ( | MDNode * | M | ) |
Definition at line 1087 of file Metadata.cpp.
References getNMDOps().
Referenced by llvm::Module::addModuleFlag(), llvm::CloneModule(), llvm::DIBuilder::createCompileUnit(), LLVMAddNamedMetadataOperand(), and StripSymbolNames().
void NamedMDNode::clearOperands | ( | ) |
Drop all references to this node's operands.
Definition at line 1096 of file Metadata.cpp.
References getNMDOps().
Referenced by StripSymbolNames().
|
inline |
Remove all uses and clear node vector.
Definition at line 1387 of file Metadata.h.
LLVM_DUMP_METHOD void NamedMDNode::dump | ( | ) | const |
Definition at line 4317 of file AsmWriter.cpp.
References llvm::dbgs(), LLVM_DUMP_METHOD, and print().
void NamedMDNode::eraseFromParent | ( | ) |
Drop all references and remove the node from parent module.
Definition at line 1094 of file Metadata.cpp.
References getParent().
Referenced by llvm::StripDebugInfo().
StringRef NamedMDNode::getName | ( | ) | const |
Definition at line 1098 of file Metadata.cpp.
References Name.
Referenced by llvm::CloneModule(), llvm::Module::eraseNamedMetadata(), forEachUser(), LLVMGetNamedMetadataName(), printMetadataIdentifier(), llvm::StripDebugInfo(), and llvm::stripNonLineTableDebugInfo().
unsigned NamedMDNode::getNumOperands | ( | ) | const |
Definition at line 1077 of file Metadata.cpp.
References getNMDOps().
Referenced by llvm::cacheAnnotationFromMD(), llvm::CloneModule(), llvm::AsmPrinter::EmitSpecialLLVMGlobal(), getHiPELiteral(), LLVMGetNamedMetadataOperands(), llvm::ValueEnumerator::print(), printMetadataIdentifier(), PushArgMD(), shouldKeepInEntry(), and llvm::UpgradeModuleFlags().
Definition at line 1081 of file Metadata.cpp.
References assert(), getNMDOps(), llvm::MDNode::getNumOperands(), and N.
Referenced by llvm::cacheAnnotationFromMD(), llvm::CloneModule(), llvm::AsmPrinter::EmitSpecialLLVMGlobal(), LLVMGetNamedMetadataOperands(), llvm::ValueEnumerator::print(), printMetadataIdentifier(), PushArgMD(), shouldKeepInEntry(), llvm::UpgradeModuleFlags(), and llvm::UpgradeRetainReleaseMarker().
|
inline |
Get the module that holds this named metadata collection.
Definition at line 1392 of file Metadata.h.
Referenced by LLVMGetNextNamedMetadata(), and LLVMGetPreviousNamedMetadata().
Definition at line 1393 of file Metadata.h.
References addOperand(), llvm::Metadata::dump(), getName(), I, and llvm::Metadata::print().
|
inline |
Definition at line 1410 of file Metadata.h.
|
inline |
Definition at line 1415 of file Metadata.h.
|
inline |
Definition at line 1411 of file Metadata.h.
|
inline |
Definition at line 1416 of file Metadata.h.
|
inline |
Definition at line 1418 of file Metadata.h.
References llvm::make_range().
Referenced by forEachUser(), llvm::Module::getModuleFlagsMetadata(), getStringIdTypeIdx(), getSymbolName(), and parseVersion().
|
inline |
Definition at line 1421 of file Metadata.h.
References DEFINE_ISA_CONVERSION_FUNCTIONS, and llvm::make_range().
void NamedMDNode::print | ( | raw_ostream & | ROS, |
bool | IsForDebug = false |
||
) | const |
Definition at line 4074 of file AsmWriter.cpp.
References getParent(), and llvm::RISCVFenceField::W.
Referenced by llvm::VerifierSupport::VerifierSupport().
void NamedMDNode::print | ( | raw_ostream & | ROS, |
ModuleSlotTracker & | MST, | ||
bool | IsForDebug = false |
||
) | const |
Definition at line 4081 of file AsmWriter.cpp.
References llvm::Optional< T >::emplace(), llvm::ModuleSlotTracker::getMachine(), getParent(), llvm::ARM_MB::ST, and llvm::RISCVFenceField::W.
Definition at line 1089 of file Metadata.cpp.
References assert(), getNMDOps(), llvm::MDNode::getNumOperands(), and I.
Referenced by PushArgMD(), llvm::UpgradeModuleFlags(), and llvm::UpgradeRetainReleaseMarker().
|
friend |
Definition at line 1327 of file Metadata.h.
|
friend |
Definition at line 1328 of file Metadata.h.