- Dec 03, 2008
-
-
Dan Gohman authored
llvm-svn: 60487
-
- Nov 26, 2008
-
-
Dan Gohman authored
and the LiveInterval.h top-level comment and accordingly. This fixes blocks having spurious live-in registers in boundary cases. llvm-svn: 60092
-
- Nov 21, 2008
-
-
Devang Patel authored
llvm-svn: 59841
-
- Nov 13, 2008
-
-
Dan Gohman authored
BitVector, instead of manually testing each bit. llvm-svn: 59246
-
- Nov 12, 2008
-
-
Dan Gohman authored
coalescing as a separate pass rather than inside of LiveIntervalAnalysis. llvm-svn: 59146
-
- Oct 29, 2008
-
-
Evan Cheng authored
- Create and update spill slot live intervals. - Lots of bug fixes. llvm-svn: 58367
-
- Oct 27, 2008
-
-
David Greene authored
Fix PR2634. Create new virtual registers from spills early so that we can give it the same stack slot as the spilled interval if it is folded. This prevents the fold/unfold code from pointing to the wrong register. llvm-svn: 58255
-
- Oct 24, 2008
-
-
Evan Cheng authored
llvm-svn: 58068
-
- Oct 18, 2008
-
-
Evan Cheng authored
llvm-svn: 57766
-
Evan Cheng authored
llvm-svn: 57765
-
- Oct 07, 2008
-
-
Owen Anderson authored
llvm-svn: 57259
-
- Oct 03, 2008
-
-
Dan Gohman authored
isReg, etc., from isRegister, etc. llvm-svn: 57006
-
- Oct 01, 2008
-
-
Owen Anderson authored
Fix a simple error in renumbering kill markaers, that took an inordinant amount of time to track down. llvm-svn: 56889
-
- Sep 30, 2008
-
-
Evan Cheng authored
llvm-svn: 56848
-
Duncan Sands authored
"If a re-materializable instruction has a register operand, the spiller will change the register operand's spill weight to HUGE_VAL to avoid it being spilled. However, if the operand is already in the queue ready to be spilled, avoid re-materializing it". llvm-svn: 56837
-
Evan Cheng authored
If a re-materializable instruction has a register operand, the spiller will change the register operand's spill weight to HUGE_VAL to avoid it being spilled. However, if the operand is already in the queue ready to be spilled, avoid re-materializing it. llvm-svn: 56835
-
- Sep 24, 2008
-
-
Dale Johannesen authored
RA problem by expanding the live interval of an earlyclobber def back one slot. Remove overlap-earlyclobber throughout. Remove earlyclobber bits and their handling from live internals. llvm-svn: 56539
-
- Sep 21, 2008
-
-
Owen Anderson authored
correct in the presence of things like EH labels. llvm-svn: 56410
-
- Sep 19, 2008
-
-
Dale Johannesen authored
and redo as linked list walk. Logic moved into RA. Per review feedback. llvm-svn: 56326
-
- Sep 17, 2008
-
-
Dale Johannesen authored
with an earlyclobber operand elsewhere. Propagate this bit and the earlyclobber bit through SDISel. Change linear-scan RA not to allocate regs in a way that conflicts with an earlyclobber. See also comments. llvm-svn: 56290
-
- Sep 16, 2008
-
-
Owen Anderson authored
Live intervals for live-in registers should begin at the beginning of a basic block, not at the first instruction. Also, their valno's should have an unknown def. This has no effect currently, but was causing issues when StrongPHIElimination was enabled. llvm-svn: 56231
-
- Sep 13, 2008
-
-
Dan Gohman authored
isImmediate(), isRegister(), and friends, to avoid confusion about having two different names with the same meaning. I'm not attached to the longer names, and would be ok with changing to the shorter names if others prefer it. llvm-svn: 56189
-
- Aug 20, 2008
-
-
Owen Anderson authored
llvm-svn: 55012
-
- Aug 19, 2008
-
-
Owen Anderson authored
With this patch, all of MultiSource/Applications and all of SPEC2000/2006 pass with the SimpleSpiller and this fast-path enabled. llvm-svn: 55000
-
Owen Anderson authored
llvm-svn: 54958
-
Owen Anderson authored
1) Assign stack slots to new temporaries. 2) Don't insert an interval into the return vector more than once. llvm-svn: 54956
-
- Aug 18, 2008
-
-
Owen Anderson authored
1) Remove an incorrect assertion. 2) Set the stack slot weight properly. 3) Resize the VirtRegMap when needed. llvm-svn: 54949
-
Owen Anderson authored
llvm-svn: 54939
-
Owen Anderson authored
llvm-svn: 54930
-
Owen Anderson authored
Resurrect some ancient code to add spill ranges without attempting folding, remat, or splitting. This code has been updated to current APIs in so far as it compiles and, in theory, works, but does not take advantage of recent advancements. For instance, it could be improved by using MachineRegisterInfo::use_iterator. llvm-svn: 54924
-
- Aug 14, 2008
-
-
Owen Anderson authored
llvm-svn: 54766
-
Owen Anderson authored
llvm-svn: 54765
-
- Aug 13, 2008
-
-
Owen Anderson authored
Make the allocation of LiveIntervals explicit, rather than holding them in the r2iMap_ by value. This will prevent references to them from being invalidated if the map is changed. llvm-svn: 54763
-
- Aug 06, 2008
-
-
Owen Anderson authored
llvm-svn: 54425
-
Owen Anderson authored
llvm-svn: 54420
-
- Jul 30, 2008
-
-
Owen Anderson authored
llvm-svn: 54218
-
Owen Anderson authored
llvm-svn: 54186
-
- Jul 29, 2008
-
-
Owen Anderson authored
llvm-svn: 54173
-
- Jul 28, 2008
-
-
Dan Gohman authored
a new ilist_node class, and remove them. Unlike alist_node, ilist_node doesn't attempt to manage storage itself, so it avoids the associated problems, including being opaque in gdb. Adjust the Recycler class so that it doesn't depend on alist_node. Also, change it to use explicit Size and Align parameters, allowing it to work when the largest-sized node doesn't have the greatest alignment requirement. Change MachineInstr's MachineMemOperand list from a pool-backed alist to a std::list for now. llvm-svn: 54146
-
Dan Gohman authored
llvm-svn: 54136
-