Revert "[llvm-tapi-diff] Apply stable sorting to output"
authorCyndy Ishida <cyndy_ishida@apple.com>
Wed, 9 Jun 2021 20:45:13 +0000 (13:45 -0700)
committerCyndy Ishida <cyndy_ishida@apple.com>
Wed, 9 Jun 2021 20:48:09 +0000 (13:48 -0700)
This reverts commit 90a26a41e9ce16a4d471d25c2f7b36b5538fb4ce.
This failed to fix ubuntu failures.

llvm/tools/llvm-tapi-diff/DiffEngine.cpp

index 837ddb42bb251861198ec1526782af0a3e854cdd..bc9ee626d8fcd3fc91caa6e6f74c862ce60ba3ec 100644 (file)
@@ -439,15 +439,6 @@ T *castValues(const std::unique_ptr<AttributeDiff> &RawAttr) {
   return CastAttr;
 }
 
-template <typename T> void sortTargetValues(std::vector<T> &TargValues) {
-  llvm::sort(TargValues, [](const auto &ValA, const auto &ValB) {
-    return ValA.getOrder() < ValB.getOrder();
-  });
-  llvm::sort(TargValues, [](const auto &ValA, const auto &ValB) {
-    return ValA.getOrder() == ValB.getOrder() && ValA.getVal() < ValB.getVal();
-  });
-}
-
 template <typename T>
 void printVecVal(std::string Indent, const DiffOutput &Attr, raw_ostream &OS) {
   if (Attr.Values.empty())
@@ -464,8 +455,10 @@ void printVecVal(std::string Indent, const DiffOutput &Attr, raw_ostream &OS) {
   });
 
   for (auto *Vec : SortedAttrs) {
-    sortTargetValues<DiffScalarVal<StringRef, AD_Diff_Scalar_Str>>(
-        Vec->TargValues);
+    llvm::sort(Vec->TargValues, [](const auto &ValA, const auto &ValB) {
+      return ValA.getOrder() == ValB.getOrder() &&
+             ValA.getVal() < ValB.getVal();
+    });
     OS << Indent << "\t" << getTargetTripleName(Vec->Targ) << "\n";
     for (auto &Item : Vec->TargValues)
       Item.print(OS, Indent);
@@ -489,7 +482,10 @@ void printVecVal<DiffSymVec>(std::string Indent, const DiffOutput &Attr,
     return ValA->Targ < ValB->Targ;
   });
   for (auto *SymVec : SortedAttrs) {
-    sortTargetValues<SymScalar>(SymVec->TargValues);
+    llvm::sort(SymVec->TargValues, [](const auto &ValA, const auto &ValB) {
+      return ValA.getOrder() == ValB.getOrder() &&
+             ValA.getVal() < ValB.getVal();
+    });
     OS << Indent << "\t" << getTargetTripleName(SymVec->Targ) << "\n";
     for (auto &Item : SymVec->TargValues)
       Item.print(OS, Indent, SymVec->Targ);