- 05fb963 The Indexes Patch. by Lang Hames · 16 years ago
- 974e12b Remove includes of Support/Compiler.h that are no longer needed after the by Nick Lewycky · 16 years ago
- 02d5f77 Remove VISIBILITY_HIDDEN from class/struct found inside anonymous namespaces. by Nick Lewycky · 16 years ago
- a778090 Oops. Renamed remaining MachineInstrIndex references. by Lang Hames · 16 years ago
- 920301e Renamed MachineInstrIndex to LiveIndex. by Lang Hames · 16 years ago
- 6b81770 Removed static qualifier from a few index related methods. These methods may require a LiveIntervals instance in future. by Lang Hames · 16 years ago
- 3fffe62 Replaces uses of unsigned for indexes in LiveInterval and VNInfo with by Lang Hames · 16 years ago
- 4dc3edd remove a few DOUTs here and there. by Chris Lattner · 16 years ago
- 3b90d97 Modified VNInfo. The "copy" member is now a union which holds the copy for a register interval, or the defining register for a stack interval. Access is via getCopy/setCopy and getReg/setReg. by Lang Hames · 16 years ago
- 0402315 Use setPreservesAll and setPreservesCFG in CodeGen passes. by Dan Gohman · 16 years ago
- dab7b06 Improved tracking of value number kills. VN kills are now represented by Lang Hames · 16 years ago
- 16cab19 VNInfo cleanup. by Lang Hames · 16 years ago
- fc968ef Update to in-place spilling framework. Includes live interval scaling and trivial rewriter. by Lang Hames · 17 years ago
- fe1f3d6 Fix a bug in live-in detection that caused lost-copy problems to show up. by Owen Anderson · 17 years ago
- 68fec88 Fix compilation error on MSVC. by Argyrios Kyrtzidis · 17 years ago
- 0d1e9a8 Switch the MachineOperand accessors back to the short names like by Dan Gohman · 17 years ago
- c5b45fe Use a multimap rather than a map for holding the list of copies to insert, so we don't lose copies when two of them have by Owen Anderson · 17 years ago
- 15e6be8 Mark merged-in VNInfo's as being PHIKilled. by Owen Anderson · 17 years ago
- a381313 We don't need to insert copies for implicit_def's. by Owen Anderson · 17 years ago
- 4ef4b1a Fix off-by-one error when updating live intervals. by Owen Anderson · 17 years ago
- 4cdc18a Add initial support for inserting last minute copies. by Owen Anderson · 17 years ago
- 9736465 Significant improvements to the logic for merging live intervals. This code can't by Owen Anderson · 17 years ago
- a79db30 Tidy up several unbeseeming casts from pointer to intptr_t. by Dan Gohman · 17 years ago
- 8de6d22 Use empty() instead of begin() == end(). by Dan Gohman · 17 years ago
- ef96ac4 Get rid of unused variable. by Owen Anderson · 17 years ago
- 65fce4d 1) Merge entire live intervals instead of parts of them. by Owen Anderson · 17 years ago
- d172c15 Do a dominator walk when scheduling copies, rather than a DFS on the CFG. Also, fix a few problems when creating by Owen Anderson · 17 years ago
- 8a8d6f0 Correct handle cases where two phis are coalesced together, and correct break up the case where two different by Owen Anderson · 17 years ago
- 987b505 We don't need to try to coalesce input vregs that are the same as the output vreg. by Owen Anderson · 17 years ago
- f9fca2f Only trim a live interval if the register is not used after the PHI node. by Owen Anderson · 17 years ago
- d9b88a8 Oops, we were already checking for dead phis. Handle this the proper way, then. by Owen Anderson · 17 years ago
- d4ffa4e We don't need to update live intervals for dead PHIs. by Owen Anderson · 17 years ago
- c818c01 Use existing LiveInterval methods to simplify live interval merging. Thanks to Evan for pointing these out. by Owen Anderson · 17 years ago
- 1aebe49 When merging live intervals, we also need to merge in any live ranges that are inputs to two-address instructions by Owen Anderson · 17 years ago
- 6b1cc46 When merging a PHI operand's live interval into the PHI's live interval, we need to merge over all liveranges in by Owen Anderson · 17 years ago
- 54912b3 Fix the issues originally addressed in r54070. After thinking about it some more, I realized that the right thing to do by Owen Anderson · 17 years ago
- 0346aba In order to avoid reprocessing a register more than once, we need to add it by Owen Anderson · 17 years ago
- d9c8711 Remove live interval entries for an interval if we're eliminating its only VN. by Owen Anderson · 17 years ago
- 79b6696 Store the predecessor MBB in the PHIUnion, rather than an index, since the indices will change after renumbering. by Owen Anderson · 17 years ago
- 05d1cd99 Remove debugging code. by Owen Anderson · 18 years ago
- 65dc2b2 Use the newly created helper on LiveIntervals. by Owen Anderson · 18 years ago
- 3a69777 Correctly construct live intervals for the copies we inserted into the predecessors of a block containing a PHI. by Owen Anderson · 18 years ago
- c777d9e We need to subtract one from this index because live ranges are open at the end. by Owen Anderson · 18 years ago
- e785fb6 Preserve the register coallescer, and update live intervals more correctly by triggering a renumbering after phi elimination. by Owen Anderson · 18 years ago
- 0479aa5 Change class' public PassInfo variables to by initialized with the by Dan Gohman · 18 years ago
- d78c400 Clean up the use of static and anonymous namespaces. This turned up by Dan Gohman · 18 years ago
- 2412158 In some situations, we need to check for local interferences between the PHI by Owen Anderson · 18 years ago
- edfc2eb Correctly mark a valno that was previous defined by a PHI node as having an by Owen Anderson · 18 years ago
- 49dd9f1 Don't dereference MBB->end(). by Owen Anderson · 18 years ago
- f28fc71 Fix a major bug in the DFS calculation. Thanks for Christopher Lamb for pointing this out. by Owen Anderson · 18 years ago
- 8b22873 Remove some unneeded code for LiveInterval joining, and fix a bug in the Phi elimination algorithm where we were accidentally reasoning about by Owen Anderson · 18 years ago
- 5d2d177 Dead PHI instructions need to be handled specially. by Owen Anderson · 18 years ago
- 9f12931 Remove some debugging code. by Owen Anderson · 18 years ago
- 1d46d45 StrongPHIElimination doesn't support swapping live intervals like the coalescer does. by Owen Anderson · 18 years ago
- e270776 Remove #include<iostream>, which I was using for debugging. by Owen Anderson · 18 years ago
- 200e578 Be sure to remove intervals after we've joined them. Also, remove some duplicated code. by Owen Anderson · 18 years ago
- 488e645 A first attempt at updating live intervals, with code lifted from by Owen Anderson · 18 years ago
- 944b1c7 We also need to collect the VN IDs for the PHI instructions for later updating. by Owen Anderson · 18 years ago
- 70aaab6 When we're determining what registers to coallesce, track the VNInfo IDs for the definitions that by Owen Anderson · 18 years ago
- 75d0481 Move StrongPHIElimination after live interval analysis. This will make things happier down the road. by Owen Anderson · 18 years ago
- 636ab19 some more spelling changes by Gabor Greif · 18 years ago
- 6325446 Refactor code. Remove duplicated functions that basically do the same thing as by Evan Cheng · 18 years ago
- 7fe0bb2 Fix an iterator invalidation issue. by Owen Anderson · 18 years ago
- 7fb6241 Clarify a deviation from the original algorithm. by Owen Anderson · 18 years ago
- d990b4f Improve a few comments. by Owen Anderson · 18 years ago
- 4f45cef Get rid of all uses of LiveVariables::VarInfo::DefInst in favor of the equivalent API from by Owen Anderson · 18 years ago
- 51b8e20 Add more comments explaining the basics of how the decision of when to rename and when to insert by Owen Anderson · 18 years ago
- 8958a78 Get rid of the isKillInst predicate. LiveVariables already provides this information. by Owen Anderson · 18 years ago
- 1c8152b Copies need to be inserted before the first terminator, not at the end of the block. by Owen Anderson · 18 years ago
- 436db42 Clean up StrongPHIElimination a bit, and add some more comments to the internal structures. There's by Owen Anderson · 18 years ago
- 4de0c39 StrongPHIElim: Now with even fewer trivial bugs! by Owen Anderson · 18 years ago
- 77c3fe4 Fix an infinite recursion bug in InsertCopies. by Owen Anderson · 18 years ago
- e0fd9bd Fix some simple bugs. StrongPHIElimination now does not crash on 164.gzip. by Owen Anderson · 18 years ago
- 1b0d5c7 Rename registers that do not need copies. by Owen Anderson · 18 years ago
- 812e1ea Actually insert copies now! by Owen Anderson · 18 years ago
- 4729948 Oops, missed one. by Owen Anderson · 18 years ago
- bbc6352 Make some predicates static. by Owen Anderson · 18 years ago
- a10fff5 Rename SSARegMap -> MachineRegisterInfo in keeping with the idea by Chris Lattner · 18 years ago
- a5bb370 Add new shorter predicates for testing machine operands for various types: by Chris Lattner · 18 years ago
- f3ebc3f Remove attribution from file headers, per discussion on llvmdev. by Chris Lattner · 18 years ago
- bccb8c4 Flesh out the Briggs implementation a little bit more, fix a few FIXMEs. by Owen Anderson · 18 years ago
- e110199 Sketch out an implementation of Briggs' copy placement algorithm. by Owen Anderson · 18 years ago
- 5a4c05d Note what still needs doing. by Owen Anderson · 18 years ago
- 4534100 Remove critical edge breaking. It won't be necessary as long as we are very careful when inserting copies. by Owen Anderson · 18 years ago
- 7b8a741 Break local interferences in StrongPHIElimination. One step closer... by Owen Anderson · 18 years ago
- ccb3981 A few more comments. by Owen Anderson · 18 years ago
- 53b677e Add register pairs to the list to check for local interferences. by Owen Anderson · 18 years ago
- 1f93edd Remove ugly and horrible code. It's not necessary for correctness, and can be added back later if it causes code quality issues. by Owen Anderson · 18 years ago
- 499e5bf Forgot to remove a register from the PHI-union after I'd determined that it by Owen Anderson · 18 years ago
- f24dd1c More progress on StrongPHIElimination. Now we actually USE the DomForest! by Owen Anderson · 18 years ago
- ba61806 A little more progress on StrongPHIElimination, now that I have a better sense of by Owen Anderson · 18 years ago
- d8167ab Run computeDomForest() on the set of registers that need to be tested for by Owen Anderson · 18 years ago
- 569ef71 Preserve LiveVariables when doing critical edge splitting. by Owen Anderson · 18 years ago
- c520c4b Break critical edges coming into blocks with PHI nodes. by Owen Anderson · 18 years ago
- a1cd452 As Chris and Evan pointed out, BreakCriticalMachineEdges doesn't really need by Owen Anderson · 18 years ago
- bfbc129 Take another stab at getting isLiveIn() and isLiveOut() right. by Owen Anderson · 18 years ago
- c6a5387 Add some more of StrongPHIElim. by Owen Anderson · 18 years ago
- d378cea Add a few comments. by Owen Anderson · 18 years ago
- eb964eb DomForest is a forest of registers, not instructions. by Owen Anderson · 18 years ago
- a9057f0 StrongPHIElimination requires LiveVariables. by Owen Anderson · 18 years ago