diff options
author | Jakob Stoklund Olesen <stoklund@2pi.dk> | 2011-03-10 01:21:58 +0000 |
---|---|---|
committer | Jakob Stoklund Olesen <stoklund@2pi.dk> | 2011-03-10 01:21:58 +0000 |
commit | 38f6bd0fc8095ef79a89b3db15ff6dc734ac90e7 (patch) | |
tree | efa693ceeb60b477df8d2442372b45a2e99f5edd /lib/CodeGen/RegAllocBasic.cpp | |
parent | 581d535af91dd55326250986273eabb495e55119 (diff) | |
download | llvm-38f6bd0fc8095ef79a89b3db15ff6dc734ac90e7.tar.gz llvm-38f6bd0fc8095ef79a89b3db15ff6dc734ac90e7.tar.bz2 llvm-38f6bd0fc8095ef79a89b3db15ff6dc734ac90e7.tar.xz |
Make SpillIs an optional pointer. Avoid creating a bunch of temporary SmallVectors.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@127388 91177308-0d34-0410-b5e6-96231b3b80d8
Diffstat (limited to 'lib/CodeGen/RegAllocBasic.cpp')
-rw-r--r-- | lib/CodeGen/RegAllocBasic.cpp | 6 |
1 files changed, 2 insertions, 4 deletions
diff --git a/lib/CodeGen/RegAllocBasic.cpp b/lib/CodeGen/RegAllocBasic.cpp index 6923908a32..81a43d8863 100644 --- a/lib/CodeGen/RegAllocBasic.cpp +++ b/lib/CodeGen/RegAllocBasic.cpp @@ -344,7 +344,7 @@ void RegAllocBase::spillReg(LiveInterval& VirtReg, unsigned PhysReg, unassign(SpilledVReg, PhysReg); // Spill the extracted interval. - spiller().spill(&SpilledVReg, SplitVRegs, PendingSpills); + spiller().spill(&SpilledVReg, SplitVRegs, &PendingSpills); } // After extracting segments, the query's results are invalid. But keep the // contents valid until we're done accessing pendingSpills. @@ -469,9 +469,7 @@ unsigned RABasic::selectOrSplit(LiveInterval &VirtReg, } // No other spill candidates were found, so spill the current VirtReg. DEBUG(dbgs() << "spilling: " << VirtReg << '\n'); - SmallVector<LiveInterval*, 1> pendingSpills; - - spiller().spill(&VirtReg, SplitVRegs, pendingSpills); + spiller().spill(&VirtReg, SplitVRegs, 0); // The live virtual register requesting allocation was spilled, so tell // the caller not to allocate anything during this round. |