diff options
Diffstat (limited to 'llvm/lib/VMCore/Metadata.cpp')
-rw-r--r-- | llvm/lib/VMCore/Metadata.cpp | 7 |
1 files changed, 5 insertions, 2 deletions
diff --git a/llvm/lib/VMCore/Metadata.cpp b/llvm/lib/VMCore/Metadata.cpp index 73f89caa388..2f6c153a9d7 100644 --- a/llvm/lib/VMCore/Metadata.cpp +++ b/llvm/lib/VMCore/Metadata.cpp @@ -13,6 +13,7 @@ #include "llvm/Metadata.h" #include "llvm/Module.h" +#include "SymbolTableListTraitsImpl.h" using namespace llvm; //===----------------------------------------------------------------------===// @@ -36,9 +37,11 @@ NamedMDNode::NamedMDNode(const char *N, unsigned NameLength, MetadataBase*const* MDs, unsigned NumMDs, Module *M) : MetadataBase(Type::MetadataTy, Value::NamedMDNodeVal), - Parent(M), Name(N, NameLength) { + Name(N, NameLength) { + setName(N); for (unsigned i = 0; i != NumMDs; ++i) Node.push_back(WeakMetadataVH(MDs[i])); - // FIXME : Add into the parent module. + if (M) + M->getNamedMDList().push_back(this); } |