diff options
author | Devang Patel <dpatel@apple.com> | 2009-07-29 21:58:56 +0000 |
---|---|---|
committer | Devang Patel <dpatel@apple.com> | 2009-07-29 21:58:56 +0000 |
commit | 5316bf0252ce9797e90a233645b6580695403837 (patch) | |
tree | 32a4aea4f2c96d80e6c418485b2bdae4678775df /include | |
parent | 2a3868849438a0a0ad4f9a50f2b94eb1639b554e (diff) | |
download | external_llvm-5316bf0252ce9797e90a233645b6580695403837.zip external_llvm-5316bf0252ce9797e90a233645b6580695403837.tar.gz external_llvm-5316bf0252ce9797e90a233645b6580695403837.tar.bz2 |
There is no need to keep name ref in NamedMDNode.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@77511 91177308-0d34-0410-b5e6-96231b3b80d8
Diffstat (limited to 'include')
-rw-r--r-- | include/llvm/Metadata.h | 17 |
1 files changed, 6 insertions, 11 deletions
diff --git a/include/llvm/Metadata.h b/include/llvm/Metadata.h index 54af723..7977c82 100644 --- a/include/llvm/Metadata.h +++ b/include/llvm/Metadata.h @@ -185,31 +185,26 @@ class NamedMDNode : public MetadataBase, public ilist_node<NamedMDNode> { friend class LLVMContextImpl; Module *Parent; - StringRef Name; SmallVector<WeakMetadataVH, 4> Node; typedef SmallVectorImpl<WeakMetadataVH>::iterator elem_iterator; protected: - explicit NamedMDNode(const char *N, unsigned NameLength, - MetadataBase*const* Vals, unsigned NumVals, - Module *M = 0); + explicit NamedMDNode(const Twine &N, MetadataBase*const* Vals, + unsigned NumVals, Module *M = 0); public: - static NamedMDNode *Create(const char *N, unsigned NamedLength, - MetadataBase*const*MDs, unsigned NumMDs, - Module *M = 0) { - return new NamedMDNode(N, NamedLength, MDs, NumMDs, M); + static NamedMDNode *Create(const Twine &N, MetadataBase*const*MDs, + unsigned NumMDs, Module *M = 0) { + return new NamedMDNode(N, MDs, NumMDs, M); } typedef SmallVectorImpl<WeakMetadataVH>::const_iterator const_elem_iterator; - StringRef getName() const { return Name; } - /// getParent - Get the module that holds this named metadata collection. inline Module *getParent() { return Parent; } inline const Module *getParent() const { return Parent; } void setParent(Module *M) { Parent = M; } - Value *getElement(unsigned i) const { + MetadataBase *getElement(unsigned i) const { return Node[i]; } |