@@ -113,16 +113,18 @@ class MatcherTableEmitter {
113
113
// Sort ComplexPatterns by usage.
114
114
std::vector<std::pair<const ComplexPattern *, unsigned >> ComplexPatternList (
115
115
ComplexPatternUsage.begin (), ComplexPatternUsage.end ());
116
- sort (ComplexPatternList,
117
- [](const auto &A, const auto &B) { return A.second > B.second ; });
116
+ stable_sort (ComplexPatternList, [](const auto &A, const auto &B) {
117
+ return A.second > B.second ;
118
+ });
118
119
for (const auto &ComplexPattern : ComplexPatternList)
119
120
ComplexPatterns.push_back (ComplexPattern.first );
120
121
121
122
// Sort PatternPredicates by usage.
122
123
std::vector<std::pair<std::string, unsigned >> PatternPredicateList (
123
124
PatternPredicateUsage.begin (), PatternPredicateUsage.end ());
124
- sort (PatternPredicateList,
125
- [](const auto &A, const auto &B) { return A.second > B.second ; });
125
+ stable_sort (PatternPredicateList, [](const auto &A, const auto &B) {
126
+ return A.second > B.second ;
127
+ });
126
128
for (const auto &PatternPredicate : PatternPredicateList)
127
129
PatternPredicates.push_back (PatternPredicate.first );
128
130
}
0 commit comments