diff options
author | Devang Patel <dpatel@apple.com> | 2009-07-29 17:16:17 +0000 |
---|---|---|
committer | Devang Patel <dpatel@apple.com> | 2009-07-29 17:16:17 +0000 |
commit | 28bc9d88260a3e153ead4311c9129e3d3ad07736 (patch) | |
tree | 9766b258ed5ad960f24c6ad1ac54b93f6cff9fb1 /lib/VMCore/Metadata.cpp | |
parent | 4baffeb6be3a224f7adadbee17512ded22610fd0 (diff) |
Keep track of named mdnodes in a Module using an ilist.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@77476 91177308-0d34-0410-b5e6-96231b3b80d8
Diffstat (limited to 'lib/VMCore/Metadata.cpp')
-rw-r--r-- | lib/VMCore/Metadata.cpp | 7 |
1 files changed, 5 insertions, 2 deletions
diff --git a/lib/VMCore/Metadata.cpp b/lib/VMCore/Metadata.cpp index 73f89caa38..2f6c153a9d 100644 --- a/lib/VMCore/Metadata.cpp +++ b/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); } |