From d3b2682351184c8a2aacb40ae0b62888ff847478 Mon Sep 17 00:00:00 2001 From: Fangrui Song Date: Sat, 20 Apr 2019 13:00:50 +0000 Subject: [PATCH] [ExecutionDomainFix] Optimize a binary search insertion llvm-svn: 358815 --- llvm/lib/CodeGen/ExecutionDomainFix.cpp | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/llvm/lib/CodeGen/ExecutionDomainFix.cpp b/llvm/lib/CodeGen/ExecutionDomainFix.cpp index fed9278..c350ede 100644 --- a/llvm/lib/CodeGen/ExecutionDomainFix.cpp +++ b/llvm/lib/CodeGen/ExecutionDomainFix.cpp @@ -336,9 +336,9 @@ void ExecutionDomainFix::visitSoftInstr(MachineInstr *mi, unsigned mask) { } // Sorted insertion. // Enables giving priority to the latest domains during merging. - auto I = llvm::upper_bound(Regs, rx, [&](int LHS, const int RHS) { - return RDA->getReachingDef(mi, RC->getRegister(LHS)) < - RDA->getReachingDef(mi, RC->getRegister(RHS)); + const int Def = RDA->getReachingDef(mi, RC->getRegister(rx)); + auto I = llvm::bsearch(Regs, [&](int I) { + return Def < RDA->getReachingDef(mi, RC->getRegister(I)); }); Regs.insert(I, rx); } -- 2.7.4