[llvm-commits] [llvm] r165201 - /llvm/trunk/lib/CodeGen/RegAllocPBQP.cpp
Lang Hames
lhames at gmail.com
Wed Oct 3 21:50:53 PDT 2012
Author: lhames
Date: Wed Oct 3 23:50:53 2012
New Revision: 165201
URL: http://llvm.org/viewvc/llvm-project?rev=165201&view=rev
Log:
Fix reg mask slot test, and preserve LiveIntervals and VirtRegMap in the PBQP
allocator. Fixes PR13945.
Modified:
llvm/trunk/lib/CodeGen/RegAllocPBQP.cpp
Modified: llvm/trunk/lib/CodeGen/RegAllocPBQP.cpp
URL: http://llvm.org/viewvc/llvm-project/llvm/trunk/lib/CodeGen/RegAllocPBQP.cpp?rev=165201&r1=165200&r2=165201&view=diff
==============================================================================
--- llvm/trunk/lib/CodeGen/RegAllocPBQP.cpp (original)
+++ llvm/trunk/lib/CodeGen/RegAllocPBQP.cpp Wed Oct 3 23:50:53 2012
@@ -231,7 +231,7 @@
continue;
// vregLI crosses a regmask operand that clobbers preg.
- if (!regMaskOverlaps.empty() && !regMaskOverlaps.test(preg))
+ if (!regMaskOverlaps.empty() && regMaskOverlaps.test(preg))
continue;
// vregLI overlaps fixed regunit interference.
@@ -432,6 +432,7 @@
au.addRequired<SlotIndexes>();
au.addPreserved<SlotIndexes>();
au.addRequired<LiveIntervals>();
+ au.addPreserved<LiveIntervals>();
//au.addRequiredID(SplitCriticalEdgesID);
if (customPassID)
au.addRequiredID(*customPassID);
@@ -443,6 +444,7 @@
au.addRequired<MachineLoopInfo>();
au.addPreserved<MachineLoopInfo>();
au.addRequired<VirtRegMap>();
+ au.addPreserved<VirtRegMap>();
MachineFunctionPass::getAnalysisUsage(au);
}
More information about the llvm-commits
mailing list