From 7c727072168c55493ec362e254af1cd740d7eaf2 Mon Sep 17 00:00:00 2001 From: Jakob Stoklund Olesen Date: Tue, 21 Sep 2010 20:16:12 +0000 Subject: [PATCH] Refix MSVC9 and upper_bound. It actually needs a fully symmetric comparator. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@114469 91177308-0d34-0410-b5e6-96231b3b80d8 --- lib/CodeGen/LiveInterval.cpp | 12 +++++------- 1 file changed, 5 insertions(+), 7 deletions(-) diff --git a/lib/CodeGen/LiveInterval.cpp b/lib/CodeGen/LiveInterval.cpp index fd5fe787b6b..44101ffee7a 100644 --- a/lib/CodeGen/LiveInterval.cpp +++ b/lib/CodeGen/LiveInterval.cpp @@ -30,20 +30,18 @@ #include using namespace llvm; -// CompEnd - Compare LiveRange end to Pos. +// CompEnd - Compare LiveRange ends. namespace { struct CompEnd { - bool operator()(SlotIndex Pos, const LiveRange &LR) const { - return Pos < LR.end; - } - bool operator()(const LiveRange &LR, SlotIndex Pos) const { - return LR.end < Pos; + bool operator()(const LiveRange &A, const LiveRange &B) const { + return A.end < B.end; } }; } LiveInterval::iterator LiveInterval::find(SlotIndex Pos) { - return std::upper_bound(begin(), end(), Pos, CompEnd()); + return std::upper_bound(begin(), end(), LiveRange(SlotIndex(), Pos, 0), + CompEnd()); } /// killedInRange - Return true if the interval has kills in [Start,End). -- 2.34.1