projects
/
platform
/
upstream
/
llvm.git
/ commitdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
| commitdiff |
tree
raw
|
patch
| inline |
side by side
(parent:
dd0e833
)
[ExecutionDomainFix] Optimize a binary search insertion
author
Fangrui Song
<maskray@google.com>
Sat, 20 Apr 2019 13:00:50 +0000
(13:00 +0000)
committer
Fangrui Song
<maskray@google.com>
Sat, 20 Apr 2019 13:00:50 +0000
(13:00 +0000)
llvm-svn: 358815
llvm/lib/CodeGen/ExecutionDomainFix.cpp
patch
|
blob
|
history
diff --git
a/llvm/lib/CodeGen/ExecutionDomainFix.cpp
b/llvm/lib/CodeGen/ExecutionDomainFix.cpp
index
fed9278
..
c350ede
100644
(file)
--- 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);
}