- 233a60e The Indexes Patch. by Lang Hames · 15 years ago
- f5a86f4 Remove includes of Support/Compiler.h that are no longer needed after the by Nick Lewycky · 15 years ago
- 6726b6d Remove VISIBILITY_HIDDEN from class/struct found inside anonymous namespaces. by Nick Lewycky · 15 years ago
- 6cc91e3 Oops. Renamed remaining MachineInstrIndex references. by Lang Hames · 15 years ago
- cc3b065 Renamed MachineInstrIndex to LiveIndex. by Lang Hames · 15 years ago
- 9647994 Removed static qualifier from a few index related methods. These methods may require a LiveIntervals instance in future. by Lang Hames · 15 years ago
- 8651125 Replaces uses of unsigned for indexes in LiveInterval and VNInfo with by Lang Hames · 15 years ago
- bbbfa99 remove a few DOUTs here and there. by Chris Lattner · 15 years ago
- 52c1afc 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 · 15 years ago
- 845012e Use setPreservesAll and setPreservesCFG in CodeGen passes. by Dan Gohman · 15 years ago
- ffd1326 Improved tracking of value number kills. VN kills are now represented by Lang Hames · 15 years ago
- 857c4e0 VNInfo cleanup. by Lang Hames · 15 years ago
- f41538d Update to in-place spilling framework. Includes live interval scaling and trivial rewriter. by Lang Hames · 15 years ago
- d55fccd Fix a bug in live-in detection that caused lost-copy problems to show up. by Owen Anderson · 16 years ago
- 0304b87 Fix compilation error on MSVC. by Argyrios Kyrtzidis · 16 years ago
- d735b80 Switch the MachineOperand accessors back to the short names like by Dan Gohman · 16 years ago
- 8481ee7 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 · 16 years ago
- 05472ee Mark merged-in VNInfo's as being PHIKilled. by Owen Anderson · 16 years ago
- 082d351 We don't need to insert copies for implicit_def's. by Owen Anderson · 16 years ago
- f835f84 Fix off-by-one error when updating live intervals. by Owen Anderson · 16 years ago
- fae86ed Add initial support for inserting last minute copies. by Owen Anderson · 16 years ago
- e04cec0 Significant improvements to the logic for merging live intervals. This code can't by Owen Anderson · 16 years ago
- ae73dc1 Tidy up several unbeseeming casts from pointer to intptr_t. by Dan Gohman · 16 years ago
- a8c763b Use empty() instead of begin() == end(). by Dan Gohman · 16 years ago
- 3276795 Get rid of unused variable. by Owen Anderson · 16 years ago
- 27d6681 1) Merge entire live intervals instead of parts of them. by Owen Anderson · 16 years ago
- 724acf1 Do a dominator walk when scheduling copies, rather than a DFS on the CFG. Also, fix a few problems when creating by Owen Anderson · 16 years ago
- 883771f Correct handle cases where two phis are coalesced together, and correct break up the case where two different by Owen Anderson · 16 years ago
- 9860b71 We don't need to try to coalesce input vregs that are the same as the output vreg. by Owen Anderson · 16 years ago
- 9b49120 Only trim a live interval if the register is not used after the PHI node. by Owen Anderson · 16 years ago
- 71ac0be Oops, we were already checking for dead phis. Handle this the proper way, then. by Owen Anderson · 16 years ago
- e7b8205 We don't need to update live intervals for dead PHIs. by Owen Anderson · 16 years ago
- d723f72 Use existing LiveInterval methods to simplify live interval merging. Thanks to Evan for pointing these out. by Owen Anderson · 16 years ago
- b9fb8d1 When merging live intervals, we also need to merge in any live ranges that are inputs to two-address instructions by Owen Anderson · 16 years ago
- 83ea1f8 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 · 16 years ago
- a279a89 Fix the issues originally addressed in r54070. After thinking about it some more, I realized that the right thing to do by Owen Anderson · 16 years ago
- 020decc In order to avoid reprocessing a register more than once, we need to add it by Owen Anderson · 16 years ago
- 55c6435 Remove live interval entries for an interval if we're eliminating its only VN. by Owen Anderson · 16 years ago
- c12417e Store the predecessor MBB in the PHIUnion, rather than an index, since the indices will change after renumbering. by Owen Anderson · 16 years ago
- 417dc2f Remove debugging code. by Owen Anderson · 16 years ago
- a9efb26 Use the newly created helper on LiveIntervals. by Owen Anderson · 16 years ago
- 38b4250 Correctly construct live intervals for the copies we inserted into the predecessors of a block containing a PHI. by Owen Anderson · 16 years ago
- 3094a4c We need to subtract one from this index because live ranges are open at the end. by Owen Anderson · 16 years ago
- 3947e4d Preserve the register coallescer, and update live intervals more correctly by triggering a renumbering after phi elimination. by Owen Anderson · 16 years ago
- 6ddba2b Change class' public PassInfo variables to by initialized with the by Dan Gohman · 16 years ago
- 844731a Clean up the use of static and anonymous namespaces. This turned up by Dan Gohman · 16 years ago
- 52b1733 In some situations, we need to check for local interferences between the PHI by Owen Anderson · 16 years ago
- 59df878 Correctly mark a valno that was previous defined by a PHI node as having an by Owen Anderson · 16 years ago
- 78216bc Don't dereference MBB->end(). by Owen Anderson · 16 years ago
- bc91bd3 Fix a major bug in the DFS calculation. Thanks for Christopher Lamb for pointing this out. by Owen Anderson · 16 years ago
- c7c0036 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 · 16 years ago
- d382f8a Dead PHI instructions need to be handled specially. by Owen Anderson · 16 years ago
- e4ded89 Remove some debugging code. by Owen Anderson · 16 years ago
- 403dad6 StrongPHIElimination doesn't support swapping live intervals like the coalescer does. by Owen Anderson · 16 years ago
- 9a31444 Remove #include<iostream>, which I was using for debugging. by Owen Anderson · 16 years ago
- e46611e Be sure to remove intervals after we've joined them. Also, remove some duplicated code. by Owen Anderson · 16 years ago
- 755ebab A first attempt at updating live intervals, with code lifted from by Owen Anderson · 16 years ago
- dfd07ea We also need to collect the VN IDs for the PHI instructions for later updating. by Owen Anderson · 17 years ago
- 0031671 When we're determining what registers to coallesce, track the VNInfo IDs for the definitions that by Owen Anderson · 17 years ago
- eb37ecc Move StrongPHIElimination after live interval analysis. This will make things happier down the road. by Owen Anderson · 17 years ago
- 2cf36e0 some more spelling changes by Gabor Greif · 17 years ago
- 6130f66 Refactor code. Remove duplicated functions that basically do the same thing as by Evan Cheng · 17 years ago
- 97ca75e Fix an iterator invalidation issue. by Owen Anderson · 17 years ago
- a6b1926 Clarify a deviation from the original algorithm. by Owen Anderson · 17 years ago
- 3b48952 Improve a few comments. by Owen Anderson · 17 years ago
- ddd060f Get rid of all uses of LiveVariables::VarInfo::DefInst in favor of the equivalent API from by Owen Anderson · 17 years ago
- dc4d655 Add more comments explaining the basics of how the decision of when to rename and when to insert by Owen Anderson · 17 years ago
- b199cbe Get rid of the isKillInst predicate. LiveVariables already provides this information. by Owen Anderson · 17 years ago
- 9c2efa8 Copies need to be inserted before the first terminator, not at the end of the block. by Owen Anderson · 17 years ago
- ec1213f Clean up StrongPHIElimination a bit, and add some more comments to the internal structures. There's by Owen Anderson · 17 years ago
- 864e3a3 StrongPHIElim: Now with even fewer trivial bugs! by Owen Anderson · 17 years ago
- 719fef6 Fix an infinite recursion bug in InsertCopies. by Owen Anderson · 17 years ago
- cb7d949 Fix some simple bugs. StrongPHIElimination now does not crash on 164.gzip. by Owen Anderson · 17 years ago
- 0c5714b Rename registers that do not need copies. by Owen Anderson · 17 years ago
- 0d893b4 Actually insert copies now! by Owen Anderson · 17 years ago
- 0b4825c Oops, missed one. by Owen Anderson · 17 years ago
- 9e54920 Make some predicates static. by Owen Anderson · 17 years ago
- 84bc542 Rename SSARegMap -> MachineRegisterInfo in keeping with the idea by Chris Lattner · 17 years ago
- 8aa797a Add new shorter predicates for testing machine operands for various types: by Chris Lattner · 17 years ago
- 4ee451d Remove attribution from file headers, per discussion on llvmdev. by Chris Lattner · 17 years ago
- f1519e8 Flesh out the Briggs implementation a little bit more, fix a few FIXMEs. by Owen Anderson · 17 years ago
- efbcebc Sketch out an implementation of Briggs' copy placement algorithm. by Owen Anderson · 17 years ago
- cae8d8d Note what still needs doing. by Owen Anderson · 17 years ago
- 22c43b2 Remove critical edge breaking. It won't be necessary as long as we are very careful when inserting copies. by Owen Anderson · 17 years ago
- 87a702b Break local interferences in StrongPHIElimination. One step closer... by Owen Anderson · 17 years ago
- 965b467 A few more comments. by Owen Anderson · 17 years ago
- 62d67dd Add register pairs to the list to check for local interferences. by Owen Anderson · 17 years ago
- 4ba08ec 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 · 17 years ago
- ed2ffa2 Forgot to remove a register from the PHI-union after I'd determined that it by Owen Anderson · 17 years ago
- d525f66 More progress on StrongPHIElimination. Now we actually USE the DomForest! by Owen Anderson · 17 years ago
- afc6de0 A little more progress on StrongPHIElimination, now that I have a better sense of by Owen Anderson · 17 years ago
- 42f9e96 Run computeDomForest() on the set of registers that need to be tested for by Owen Anderson · 17 years ago
- 17b1418 Preserve LiveVariables when doing critical edge splitting. by Owen Anderson · 17 years ago
- 35e2dba Break critical edges coming into blocks with PHI nodes. by Owen Anderson · 17 years ago
- fe0c882 As Chris and Evan pointed out, BreakCriticalMachineEdges doesn't really need by Owen Anderson · 17 years ago
- 14b3fb7 Take another stab at getting isLiveIn() and isLiveOut() right. by Owen Anderson · 17 years ago
- 60a877d Add some more of StrongPHIElim. by Owen Anderson · 17 years ago
- 8b96b9f Add a few comments. by Owen Anderson · 17 years ago
- ee49b53 DomForest is a forest of registers, not instructions. by Owen Anderson · 17 years ago
- a4ad2e7 StrongPHIElimination requires LiveVariables. by Owen Anderson · 17 years ago