- 4df98e5 Completely eliminate the intervals_ list. instead, the r2iMap_ maintains by Chris Lattner · 21 years ago
- 7ac2d31 Big change to compute logical value numbers for each LiveRange added to an by Chris Lattner · 21 years ago
- f35fef7 More minor changes: by Chris Lattner · 21 years ago
- a3b8b5c Rename LiveIntervals.(cpp|h) -> LiveIntervalAnalysis.(cpp|h) by Chris Lattner · 21 years ago
- fb449b9 Pull the LiveRange and LiveInterval classes out of LiveIntervals.h (which by Chris Lattner · 21 years ago
- ec2bc64 Improve comments a bit by Chris Lattner · 21 years ago
- fe1630b Force coallescing of live ranges that have a single definition, even if they by Chris Lattner · 21 years ago
- e8850f4 Fix broken -debug printing by Chris Lattner · 21 years ago
- d3014ed Sorting is now handled by both linearscan and iterative scan so live by Alkis Evlogimenos · 21 years ago
- 6beef3e That funny 2-address lowering pass can also cause multiple definitions, by Chris Lattner · 21 years ago
- 7848e68 These files don't need to include <iostream> since they include "Support/Debug.h". by Brian Gaeke · 21 years ago
- 6bd23c0 Remove unneeded functor. LiveInterval has a < operator. by Alkis Evlogimenos · 21 years ago
- 8640f4e Fix a bug that occurs when the last instruction in a range is dead by Chris Lattner · 21 years ago
- cc0d156 When joining intervals, join intervals in deeply nested loops first. This by Chris Lattner · 21 years ago
- 1c5c044 Split joinIntervals into two methods by Chris Lattner · 21 years ago
- 74de8b1 There is no need to store the MBB along with the MI any more, we can now by Chris Lattner · 21 years ago
- 472405e Simplify the interface to LiveVariables::addVirtualRegister(Killed|Dead) by Chris Lattner · 21 years ago
- 8ea13c6 Two changes, both very significant: by Chris Lattner · 21 years ago
- 57eb15e See comments. The live intervals were not coming out of the spiller in sorted by Chris Lattner · 21 years ago
- 6097d13 remove the mbbi2mbbMap_, which was just keeping track of mbb order anyway. by Chris Lattner · 21 years ago
- e1b9536 It looks like physref->virtreg joining is working fine. Enable it by default by Chris Lattner · 21 years ago
- 80b27ce Fix typo. by Alkis Evlogimenos · 21 years ago
- 607baea Improve code comments. by Alkis Evlogimenos · 21 years ago
- 3877652 Disable coalescing. by Alkis Evlogimenos · 21 years ago
- 5de868b Do not crash when joining two intervals of registers of different by Alkis Evlogimenos · 21 years ago
- 230b4fb Revert patches 1.79 and 1.80 which had to do with dead MBB's. Now that they by Chris Lattner · 21 years ago
- 8490f9c Now that MachineFunction/MachineBasicBlock keep a mapping of blocks to ID #'s by Chris Lattner · 21 years ago
- 8ba9771 Start using MBB numbers directly instead of going through the live variables by Chris Lattner · 21 years ago
- 91a350d In line with the previous patch, do not assert out if analyzing a dead basic block. by Chris Lattner · 21 years ago
- 59850a8 Do not dereference end iterators. It hurts when you do that. by Chris Lattner · 21 years ago
- b140762 Made a fix so that you can print out MachineInstrs that belong to a MachineBasicBlock that is not yet attached to a MachineFunction. This change includes changing the third operand (TargetMachine) to a pointer for the MachineInstr::print function. by Tanya Lattner · 21 years ago
- 418da55 Rename Interval class to LiveInterval to avoid conflicting with the already by Chris Lattner · 21 years ago
- 9bcdcd1 Adjust to new TargetMachine interface by Chris Lattner · 21 years ago
- 6924063 Pull Interval class out of LiveIntervals. by Alkis Evlogimenos · 21 years ago
- 26f5a69 When spilling an register, introduce a new temporary for each of its by Alkis Evlogimenos · 21 years ago
- f717a05 Remove defs vector from live intervals. by Alkis Evlogimenos · 21 years ago
- feab248 Remove unneeded header by Alkis Evlogimenos · 21 years ago
- a19eede numeric_limits::infinity() apparently does not work on all systems. As a by Chris Lattner · 21 years ago
- 015959e Operate on the Machine CFG instead of on the LLVM CFG by Chris Lattner · 21 years ago
- 6e4d0d6 Fix bug introduced in previous commit. by Alkis Evlogimenos · 21 years ago
- 43b61f7 Correctly compute spill weights by Alkis Evlogimenos · 21 years ago
- e633352 Print def lists a bit more compactly by Alkis Evlogimenos · 21 years ago
- 9a8b490 Add definition list to each live interval. by Alkis Evlogimenos · 21 years ago
- 39354c9 Change MRegisterInfo::foldMemoryOperand to return the folded by Alkis Evlogimenos · 21 years ago
- 5f37502 Add the long awaited memory operand folding support for linear scan by Alkis Evlogimenos · 21 years ago
- 71e353e Uncomment assertions that register# != 0 on calls to by Alkis Evlogimenos · 21 years ago
- 98e17cf Move LiveIntervals.h up to be the first included header by Alkis Evlogimenos · 21 years ago
- a2f6a40 Move LiveIntervals.h to lib/CodeGen since it shouldn't be exposed to other parts of the compiler by Alkis Evlogimenos · 21 years ago
- 0f338a1 Print basic block boundaries in machine instruction debug output. by Alkis Evlogimenos · 21 years ago
- 7200c6b Abstract merging of ranges away from number of slots per instruction. by Alkis Evlogimenos · 21 years ago
- d6f6d1a Make 'fold' statistic's description the same in both allocators. by Alkis Evlogimenos · 21 years ago
- 007726c Some more statistics improvements. by Alkis Evlogimenos · 21 years ago
- df158c7 Disambiguate statistic descriptions. by Alkis Evlogimenos · 21 years ago
- cea4471 Rename statistic and add another one. by Alkis Evlogimenos · 21 years ago
- 39a0d5c Too many changes in one commit: by Alkis Evlogimenos · 21 years ago
- 23c114f Be more agressive when joining ranges. by Alkis Evlogimenos · 21 years ago
- 99d9923 Fix overly conservative spill interval computation. by Alkis Evlogimenos · 21 years ago
- 355a724 Fix spilled interval update. It was too conservative. by Alkis Evlogimenos · 21 years ago
- 843b160 Eliminate the use of spill (reserved) registers. by Alkis Evlogimenos · 21 years ago
- 6ab5c15 Use std::numeric_limits<float>::infinity() instead of by Alkis Evlogimenos · 21 years ago
- be766c7 Remove getAllocatedRegNum(). Use getReg() instead. by Alkis Evlogimenos · 21 years ago
- c0b9dc5 Change MachineBasicBlock's vector of MachineInstr pointers into an by Alkis Evlogimenos · 22 years ago
- 1cbe4d0 Do not use MachineOperand::isVirtualRegister either! by Chris Lattner · 22 years ago
- 0b8cb2b Change live interval representation. Machine instructions now have two by Alkis Evlogimenos · 22 years ago
- ad48cd6 We don't need to scan the blocks that we are live-in on every by Alkis Evlogimenos · 22 years ago
- b606eac Should be more careful. The previously applied change made all counts by Alkis Evlogimenos · 22 years ago
- b180e3e Change string for joined intervals. by Alkis Evlogimenos · 22 years ago
- b0b0eba Change xor to ^. by Alkis Evlogimenos · 22 years ago
- 676cf8c Missed one silly assert :-) by Alkis Evlogimenos · 22 years ago
- 01e74a2 Simplify joinIntervals() code. by Alkis Evlogimenos · 22 years ago
- 4f67b86 Use MRegisterInfo::isPhysicalRegister and MRegisterInfo::isVirtualRegister. by Alkis Evlogimenos · 22 years ago
- 52220f6 Apply final part of Chris' patch. by Alkis Evlogimenos · 22 years ago
- 02ba13c Be a little smarter on the way we handle physical register defs. by Alkis Evlogimenos · 22 years ago
- 08cec00 Merge safe parts from last night's buggy commit. These do not break by Alkis Evlogimenos · 22 years ago
- 97017de Optimize liveAt() and overlaps(). We now use a binary search instead by Alkis Evlogimenos · 22 years ago
- 4d46e1e Revert last night's changes as they broke some tests. Will remerge parts of the patch. by Alkis Evlogimenos · 22 years ago
- 32bdd4e Several performance enhancements and cleanups from Chris. by Alkis Evlogimenos · 22 years ago
- 79b0c3f Fix failing test cases with joined live intervals. It turns out that by Alkis Evlogimenos · 22 years ago
- e88280a Add option to join live intervals. Two intervals are joined if there by Alkis Evlogimenos · 22 years ago
- 1075ecd Revert previous change. The code was correct... by Alkis Evlogimenos · 22 years ago
- e1a2107 Fix incorrect negatives in LiveIntervals::Interval::liveAt(). by Alkis Evlogimenos · 22 years ago
- 1893a05 Add asserts to previous change. by Alkis Evlogimenos · 22 years ago
- f5f1689 Use a list instead of a vector to store intervals. This will be needed by Alkis Evlogimenos · 22 years ago
- d6e40a6 Properly update #intervals statistic. by Alkis Evlogimenos · 22 years ago
- 9739736 Fix bug in LiveIntervals::Interval::overlaps and by Alkis Evlogimenos · 22 years ago
- af25473 Fix miscomputation of live intervals. The catch is that registers can by Alkis Evlogimenos · 22 years ago
- 1a119e2 Remove allocatable registers vector. It is already provided by LiveVariables. by Alkis Evlogimenos · 22 years ago
- a3a6524 Cleanup debugging output. by Alkis Evlogimenos · 22 years ago
- 63841bc Fix output of live intervals to show correctly its closed, open by Alkis Evlogimenos · 22 years ago
- 19b6486 Correctly compute live variable information for physical registers by Alkis Evlogimenos · 22 years ago
- 80b378c Change implementation of LiveIntervals::overlap(). This results in a by Alkis Evlogimenos · 22 years ago
- 63caedf Remove simple coalescing. by Alkis Evlogimenos · 22 years ago
- 26bfc08 Add coalescing to register allocator. A hint is added to each interval by Alkis Evlogimenos · 22 years ago
- 7a40eaa Do a separate pass to compute spill weights because doing it inline by Alkis Evlogimenos · 22 years ago
- 056063e Fix crash when compiling twolf. by Alkis Evlogimenos · 22 years ago
- 6b4edba Change weight into a float so that we can take into account the by Alkis Evlogimenos · 22 years ago
- 169cfd0 Add support for inactive intervals. This effectively reuses registers by Alkis Evlogimenos · 22 years ago
- 4c08086 Remove TwoAddressInstruction from the public headers and add an ID by Alkis Evlogimenos · 22 years ago
- a71e05a Modify linear scan register allocator to use the two-address by Alkis Evlogimenos · 22 years ago
- 43f692f When a variable is killed and redifined in a basic block only one by Alkis Evlogimenos · 22 years ago