[llvm-commits] CVS: llvm/lib/CodeGen/LiveInterval.cpp

2007-04-17 Thread Evan Cheng
Changes in directory llvm/lib/CodeGen: LiveInterval.cpp updated: 1.43 -> 1.44 --- Log message: Add a register allocation preference field; add a method to compute size of a live interval. --- Diffs of the changes: (+9 -0) LiveInterval.cpp |9 + 1 files changed, 9 insertions(+)

Re: [llvm-commits] CVS: llvm/lib/CodeGen/LiveInterval.cpp MachineBasicBlock.cpp MachineInstr.cpp

2006-12-16 Thread Chris Lattner
On Dec 15, 2006, at 6:11 PM, Jeff Cohen wrote: > I got it to work... I'll be committing shortly. I'm not sure what > the problem was, but it seems to have something to do with > resolving the overload of operator<< and almost certainly is a VC++ > bug. It won't accept a forward declared t

[llvm-commits] CVS: llvm/lib/CodeGen/LiveInterval.cpp MachineBasicBlock.cpp MachineInstr.cpp

2006-12-15 Thread Jeff Cohen
Changes in directory llvm/lib/CodeGen: LiveInterval.cpp updated: 1.41 -> 1.42 MachineBasicBlock.cpp updated: 1.37 -> 1.38 MachineInstr.cpp updated: 1.139 -> 1.140 --- Log message: The best unbreakage yet, addressing Bill's concerns. --- Diffs of the changes: (+30 -49) LiveInterval.cpp

Re: [llvm-commits] CVS: llvm/lib/CodeGen/LiveInterval.cpp MachineBasicBlock.cpp MachineInstr.cpp

2006-12-15 Thread Jeff Cohen
I got it to work... I'll be committing shortly. I'm not sure what the problem was, but it seems to have something to do with resolving the overload of operator<< and almost certainly is a VC++ bug. It won't accept a forward declared type when it ought to. Chris Lattner wrote: > > On Dec 15, 2

Re: [llvm-commits] CVS: llvm/lib/CodeGen/LiveInterval.cpp MachineBasicBlock.cpp MachineInstr.cpp

2006-12-15 Thread Chris Lattner
On Dec 15, 2006, at 3:58 PM, Jeff Cohen wrote: > I'll look into making this change. > > Part of the problem is that VC++ doesn't like *OS.stream() in a header > file when isn't included, even if the declaration of > std::basic_ostream shouldn't be needed (but doesn't have a problem > with > it

Re: [llvm-commits] CVS: llvm/lib/CodeGen/LiveInterval.cpp MachineBasicBlock.cpp MachineInstr.cpp

2006-12-15 Thread Jeff Cohen
I'll look into making this change. Part of the problem is that VC++ doesn't like *OS.stream() in a header file when isn't included, even if the declaration of std::basic_ostream shouldn't be needed (but doesn't have a problem with it in a .cpp file, probably because it isn't inlined then). Th

Re: [llvm-commits] CVS: llvm/lib/CodeGen/LiveInterval.cpp MachineBasicBlock.cpp MachineInstr.cpp

2006-12-15 Thread Chris Lattner
On Dec 15, 2006, at 3:31 PM, Bill Wendling wrote: > That's reasonable. So then a better solution would be to keep > everything in the .h file, but change operator<<(OStream&) to call > the "print()" function directly. So something like this: > > #include > > // ... > > OStream& operator<<(OStrea

Re: [llvm-commits] CVS: llvm/lib/CodeGen/LiveInterval.cpp MachineBasicBlock.cpp MachineInstr.cpp

2006-12-15 Thread Bill Wendling
That's reasonable. So then a better solution would be to keep everything in the .h file, but change operator<<(OStream&) to call the "print()" function directly. So something like this: #include // ... OStream& operator<<(OStream &OS, const MachineBasicBlock &MBB) { if (*OS.stream()) MBB

Re: [llvm-commits] CVS: llvm/lib/CodeGen/LiveInterval.cpp MachineBasicBlock.cpp MachineInstr.cpp

2006-12-15 Thread Jeff Cohen
Chris asked me to not include from header files, and to move stuff out of the header files if possible to make it so. Bill Wendling wrote: > Hold on. If you make these non-inlined, then the only chance for the > compiler to remove potentially dead code (when o.stream() == 0) is > through link

Re: [llvm-commits] CVS: llvm/lib/CodeGen/LiveInterval.cpp MachineBasicBlock.cpp MachineInstr.cpp

2006-12-15 Thread Bill Wendling
Hold on. If you make these non-inlined, then the only chance for the compiler to remove potentially dead code (when o.stream() == 0) is through link time optimizations. Because this is still compiled by GCC right now, this won't be done and debug outputs will still be in the code. That is,

[llvm-commits] CVS: llvm/lib/CodeGen/LiveInterval.cpp MachineBasicBlock.cpp MachineInstr.cpp

2006-12-15 Thread Jeff Cohen
Changes in directory llvm/lib/CodeGen: LiveInterval.cpp updated: 1.40 -> 1.41 MachineBasicBlock.cpp updated: 1.36 -> 1.37 MachineInstr.cpp updated: 1.138 -> 1.139 --- Log message: An even better unbreakage... --- Diffs of the changes: (+24 -0) LiveInterval.cpp |7 +++ MachineBa

[llvm-commits] CVS: llvm/lib/CodeGen/LiveInterval.cpp

2006-11-27 Thread Bill Wendling
Changes in directory llvm/lib/CodeGen: LiveInterval.cpp updated: 1.37 -> 1.38 --- Log message: Put the #include for a module first. --- Diffs of the changes: (+1 -1) LiveInterval.cpp |2 +- 1 files changed, 1 insertion(+), 1 deletion(-) Index: llvm/lib/CodeGen/LiveInterval.cpp diff -

[llvm-commits] CVS: llvm/lib/CodeGen/LiveInterval.cpp LiveIntervalAnalysis.cpp

2006-09-01 Thread Chris Lattner
Changes in directory llvm/lib/CodeGen: LiveInterval.cpp updated: 1.34 -> 1.35 LiveIntervalAnalysis.cpp updated: 1.179 -> 1.180 --- Log message: When joining two intervals where the RHS is really simple, use a light-weight method for joining the live ranges instead of the fully-general one. --

[llvm-commits] CVS: llvm/lib/CodeGen/LiveInterval.cpp LiveIntervalAnalysis.cpp

2006-08-30 Thread Chris Lattner
Changes in directory llvm/lib/CodeGen: LiveInterval.cpp updated: 1.33 -> 1.34 LiveIntervalAnalysis.cpp updated: 1.173 -> 1.174 --- Log message: avoid calling the virtual isMoveInstr method endlessly by caching its results. --- Diffs of the changes: (+73 -75) LiveInterval.cpp | 24

[llvm-commits] CVS: llvm/lib/CodeGen/LiveInterval.cpp LiveIntervalAnalysis.cpp

2006-08-30 Thread Chris Lattner
Changes in directory llvm/lib/CodeGen: LiveInterval.cpp updated: 1.32 -> 1.33 LiveIntervalAnalysis.cpp updated: 1.171 -> 1.172 --- Log message: Teach the coallescer to coallesce live intervals joined by an arbitrary number of copies, potentially defining live ranges that appear to have differi

[llvm-commits] CVS: llvm/lib/CodeGen/LiveInterval.cpp LiveIntervalAnalysis.cpp

2006-08-25 Thread Chris Lattner
Changes in directory llvm/lib/CodeGen: LiveInterval.cpp updated: 1.31 -> 1.32 LiveIntervalAnalysis.cpp updated: 1.168 -> 1.169 --- Log message: Simplifications to liveinterval analysis, no functionality change. --- Diffs of the changes: (+36 -37) LiveInterval.cpp | 26 +++

[llvm-commits] CVS: llvm/lib/CodeGen/LiveInterval.cpp LiveIntervalAnalysis.cpp

2006-08-25 Thread Chris Lattner
Changes in directory llvm/lib/CodeGen: LiveInterval.cpp updated: 1.30 -> 1.31 LiveIntervalAnalysis.cpp updated: 1.167 -> 1.168 --- Log message: Completely change the way that joining with physregs is implemented. This paves the way for future changes, increases coallescing opportunities (in th

[llvm-commits] CVS: llvm/lib/CodeGen/LiveInterval.cpp

2006-08-24 Thread Chris Lattner
Changes in directory llvm/lib/CodeGen: LiveInterval.cpp updated: 1.29 -> 1.30 --- Log message: When replacing value numbers, make sure to compactify the value # space. --- Diffs of the changes: (+12 -0) LiveInterval.cpp | 12 1 files changed, 12 insertions(+) Index: llvm/l

[llvm-commits] CVS: llvm/lib/CodeGen/LiveInterval.cpp LiveIntervalAnalysis.cpp VirtRegMap.cpp

2006-08-24 Thread Chris Lattner
Changes in directory llvm/lib/CodeGen: LiveInterval.cpp updated: 1.28 -> 1.29 LiveIntervalAnalysis.cpp updated: 1.166 -> 1.167 VirtRegMap.cpp updated: 1.70 -> 1.71 --- Log message: Take advantage of the recent improvements to the liveintervals set (tracking instructions which define each value#

[llvm-commits] CVS: llvm/lib/CodeGen/LiveInterval.cpp LiveIntervalAnalysis.cpp

2006-08-22 Thread Chris Lattner
Changes in directory llvm/lib/CodeGen: LiveInterval.cpp updated: 1.27 -> 1.28 LiveIntervalAnalysis.cpp updated: 1.165 -> 1.166 --- Log message: Improve the LiveInterval class to keep track of which machine instruction defines each value# tracked by the interval. This will be used to improve co