TableGen/AsmMatcherEmitter: Trust that stable_sort works

A debug build of AsmMatcherEmitter would use a quadratic algorithm to
check whether std::stable_sort() actually sorted. Let's hope the authors
of our C++ standard library did that testing for us. Removing the check
gives a 3x speedup in the X86 case.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@288655 91177308-0d34-0410-b5e6-96231b3b80d8
This commit is contained in:
Matthias Braun 2016-12-05 08:15:57 +00:00
parent 2b86a875bf
commit 25801f0f22

View File

@ -2719,16 +2719,6 @@ void AsmMatcherEmitter::run(raw_ostream &OS) {
const std::unique_ptr<MatchableInfo> &b){ const std::unique_ptr<MatchableInfo> &b){
return *a < *b;}); return *a < *b;});
#ifndef NDEBUG
// Verify that the table is now sorted
for (auto I = Info.Matchables.begin(), E = Info.Matchables.end(); I != E;
++I) {
for (auto J = I; J != E; ++J) {
assert(!(**J < **I));
}
}
#endif // NDEBUG
DEBUG_WITH_TYPE("instruction_info", { DEBUG_WITH_TYPE("instruction_info", {
for (const auto &MI : Info.Matchables) for (const auto &MI : Info.Matchables)
MI->dump(); MI->dump();