[llvm-commits] [llvm] r84878 - in /llvm/trunk: include/llvm/Metadata.h lib/VMCore/Metadata.cpp

Devang Patel dpatel at apple.com
Thu Oct 22 10:40:38 PDT 2009


Author: dpatel
Date: Thu Oct 22 12:40:37 2009
New Revision: 84878

URL: http://llvm.org/viewvc/llvm-project?rev=84878&view=rev
Log:
Sort handler names to ensure deterministic behavior.

Modified:
    llvm/trunk/include/llvm/Metadata.h
    llvm/trunk/lib/VMCore/Metadata.cpp

Modified: llvm/trunk/include/llvm/Metadata.h
URL: http://llvm.org/viewvc/llvm-project/llvm/trunk/include/llvm/Metadata.h?rev=84878&r1=84877&r2=84878&view=diff

==============================================================================
--- llvm/trunk/include/llvm/Metadata.h (original)
+++ llvm/trunk/include/llvm/Metadata.h Thu Oct 22 12:40:37 2009
@@ -285,9 +285,9 @@
   /// the same metadata to In2.
   void copyMD(Instruction *In1, Instruction *In2);
 
-  /// getHandlerNames - Get handler names. This is used by bitcode
-  /// writer.
-  void getHandlerNames(SmallVectorImpl<std::pair<unsigned, StringRef> >&N) const;
+  /// getHandlerNames - Populate client supplied smallvector using custome
+  /// metadata name and ID.
+  void getHandlerNames(SmallVectorImpl<std::pair<unsigned, StringRef> >&) const;
 
   /// ValueIsDeleted - This handler is used to update metadata store
   /// when a value is deleted.

Modified: llvm/trunk/lib/VMCore/Metadata.cpp
URL: http://llvm.org/viewvc/llvm-project/llvm/trunk/lib/VMCore/Metadata.cpp?rev=84878&r1=84877&r2=84878&view=diff

==============================================================================
--- llvm/trunk/lib/VMCore/Metadata.cpp (original)
+++ llvm/trunk/lib/VMCore/Metadata.cpp Thu Oct 22 12:40:37 2009
@@ -304,13 +304,14 @@
   return &I->second;
 }
 
-/// getHandlerNames - Get handler names. This is used by bitcode
-/// writer and aswm writer.
+/// getHandlerNames - Populate client supplied smallvector using custome
+/// metadata name and ID.
 void MetadataContext::
 getHandlerNames(SmallVectorImpl<std::pair<unsigned, StringRef> >&Names) const {
   for (StringMap<unsigned>::const_iterator I = MDHandlerNames.begin(),
          E = MDHandlerNames.end(); I != E; ++I) 
     Names.push_back(std::make_pair(I->second, I->first()));
+  std::sort(Names.begin(), Names.end());
 }
 
 /// ValueIsCloned - This handler is used to update metadata store





More information about the llvm-commits mailing list