From: Andrew Trick Date: Thu, 15 Nov 2012 02:32:22 +0000 (+0000) Subject: Fix an obvious merge bug in -join-globalcopies (disabled). X-Git-Url: http://plrg.eecs.uci.edu/git/?a=commitdiff_plain;h=c6d6aeb95feca2efc6ee652555dbb29f0a3d41c8;p=oota-llvm.git Fix an obvious merge bug in -join-globalcopies (disabled). Jakub Staszak spotted this in review. I don't notice these things until I manually rerun benchmarks. But reducing unit tests is a very high priority. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@168021 91177308-0d34-0410-b5e6-96231b3b80d8 --- diff --git a/lib/CodeGen/RegisterCoalescer.cpp b/lib/CodeGen/RegisterCoalescer.cpp index df679752860..5d6e0f00adb 100644 --- a/lib/CodeGen/RegisterCoalescer.cpp +++ b/lib/CodeGen/RegisterCoalescer.cpp @@ -2080,8 +2080,10 @@ void RegisterCoalescer::joinAllIntervals() { unsigned CurrDepth = UINT_MAX; for (unsigned i = 0, e = MBBs.size(); i != e; ++i) { // Try coalescing the collected local copies for deeper loops. - if (JoinGlobalCopies && MBBs[i].Depth < CurrDepth) + if (JoinGlobalCopies && MBBs[i].Depth < CurrDepth) { coalesceLocals(); + CurrDepth = MBBs[i].Depth; + } copyCoalesceInMBB(MBBs[i].MBB); } coalesceLocals();