1. 233a60e The Indexes Patch. by Lang Hames · 15 years ago
  2. f5a86f4 Remove includes of Support/Compiler.h that are no longer needed after the by Nick Lewycky · 15 years ago
  3. 6726b6d Remove VISIBILITY_HIDDEN from class/struct found inside anonymous namespaces. by Nick Lewycky · 15 years ago
  4. 6cc91e3 Oops. Renamed remaining MachineInstrIndex references. by Lang Hames · 15 years ago
  5. cc3b065 Renamed MachineInstrIndex to LiveIndex. by Lang Hames · 15 years ago
  6. 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
  7. 8651125 Replaces uses of unsigned for indexes in LiveInterval and VNInfo with by Lang Hames · 15 years ago
  8. bbbfa99 remove a few DOUTs here and there. by Chris Lattner · 15 years ago
  9. 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
  10. 845012e Use setPreservesAll and setPreservesCFG in CodeGen passes. by Dan Gohman · 15 years ago
  11. ffd1326 Improved tracking of value number kills. VN kills are now represented by Lang Hames · 15 years ago
  12. 857c4e0 VNInfo cleanup. by Lang Hames · 15 years ago
  13. f41538d Update to in-place spilling framework. Includes live interval scaling and trivial rewriter. by Lang Hames · 15 years ago
  14. d55fccd Fix a bug in live-in detection that caused lost-copy problems to show up. by Owen Anderson · 16 years ago
  15. 0304b87 Fix compilation error on MSVC. by Argyrios Kyrtzidis · 16 years ago
  16. d735b80 Switch the MachineOperand accessors back to the short names like by Dan Gohman · 16 years ago
  17. 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
  18. 05472ee Mark merged-in VNInfo's as being PHIKilled. by Owen Anderson · 16 years ago
  19. 082d351 We don't need to insert copies for implicit_def's. by Owen Anderson · 16 years ago
  20. f835f84 Fix off-by-one error when updating live intervals. by Owen Anderson · 16 years ago
  21. fae86ed Add initial support for inserting last minute copies. by Owen Anderson · 16 years ago
  22. e04cec0 Significant improvements to the logic for merging live intervals. This code can't by Owen Anderson · 16 years ago
  23. ae73dc1 Tidy up several unbeseeming casts from pointer to intptr_t. by Dan Gohman · 16 years ago
  24. a8c763b Use empty() instead of begin() == end(). by Dan Gohman · 16 years ago
  25. 3276795 Get rid of unused variable. by Owen Anderson · 16 years ago
  26. 27d6681 1) Merge entire live intervals instead of parts of them. by Owen Anderson · 16 years ago
  27. 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
  28. 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
  29. 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
  30. 9b49120 Only trim a live interval if the register is not used after the PHI node. by Owen Anderson · 16 years ago
  31. 71ac0be Oops, we were already checking for dead phis. Handle this the proper way, then. by Owen Anderson · 16 years ago
  32. e7b8205 We don't need to update live intervals for dead PHIs. by Owen Anderson · 16 years ago
  33. d723f72 Use existing LiveInterval methods to simplify live interval merging. Thanks to Evan for pointing these out. by Owen Anderson · 16 years ago
  34. 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
  35. 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
  36. 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
  37. 020decc In order to avoid reprocessing a register more than once, we need to add it by Owen Anderson · 16 years ago
  38. 55c6435 Remove live interval entries for an interval if we're eliminating its only VN. by Owen Anderson · 16 years ago
  39. 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
  40. 417dc2f Remove debugging code. by Owen Anderson · 16 years ago
  41. a9efb26 Use the newly created helper on LiveIntervals. by Owen Anderson · 16 years ago
  42. 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
  43. 3094a4c We need to subtract one from this index because live ranges are open at the end. by Owen Anderson · 16 years ago
  44. 3947e4d Preserve the register coallescer, and update live intervals more correctly by triggering a renumbering after phi elimination. by Owen Anderson · 16 years ago
  45. 6ddba2b Change class' public PassInfo variables to by initialized with the by Dan Gohman · 16 years ago
  46. 844731a Clean up the use of static and anonymous namespaces. This turned up by Dan Gohman · 16 years ago
  47. 52b1733 In some situations, we need to check for local interferences between the PHI by Owen Anderson · 16 years ago
  48. 59df878 Correctly mark a valno that was previous defined by a PHI node as having an by Owen Anderson · 16 years ago
  49. 78216bc Don't dereference MBB->end(). by Owen Anderson · 16 years ago
  50. bc91bd3 Fix a major bug in the DFS calculation. Thanks for Christopher Lamb for pointing this out. by Owen Anderson · 16 years ago
  51. 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
  52. d382f8a Dead PHI instructions need to be handled specially. by Owen Anderson · 16 years ago
  53. e4ded89 Remove some debugging code. by Owen Anderson · 16 years ago
  54. 403dad6 StrongPHIElimination doesn't support swapping live intervals like the coalescer does. by Owen Anderson · 16 years ago
  55. 9a31444 Remove #include<iostream>, which I was using for debugging. by Owen Anderson · 16 years ago
  56. e46611e Be sure to remove intervals after we've joined them. Also, remove some duplicated code. by Owen Anderson · 16 years ago
  57. 755ebab A first attempt at updating live intervals, with code lifted from by Owen Anderson · 16 years ago
  58. dfd07ea We also need to collect the VN IDs for the PHI instructions for later updating. by Owen Anderson · 17 years ago
  59. 0031671 When we're determining what registers to coallesce, track the VNInfo IDs for the definitions that by Owen Anderson · 17 years ago
  60. eb37ecc Move StrongPHIElimination after live interval analysis. This will make things happier down the road. by Owen Anderson · 17 years ago
  61. 2cf36e0 some more spelling changes by Gabor Greif · 17 years ago
  62. 6130f66 Refactor code. Remove duplicated functions that basically do the same thing as by Evan Cheng · 17 years ago
  63. 97ca75e Fix an iterator invalidation issue. by Owen Anderson · 17 years ago
  64. a6b1926 Clarify a deviation from the original algorithm. by Owen Anderson · 17 years ago
  65. 3b48952 Improve a few comments. by Owen Anderson · 17 years ago
  66. ddd060f Get rid of all uses of LiveVariables::VarInfo::DefInst in favor of the equivalent API from by Owen Anderson · 17 years ago
  67. 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
  68. b199cbe Get rid of the isKillInst predicate. LiveVariables already provides this information. by Owen Anderson · 17 years ago
  69. 9c2efa8 Copies need to be inserted before the first terminator, not at the end of the block. by Owen Anderson · 17 years ago
  70. ec1213f Clean up StrongPHIElimination a bit, and add some more comments to the internal structures. There's by Owen Anderson · 17 years ago
  71. 864e3a3 StrongPHIElim: Now with even fewer trivial bugs! by Owen Anderson · 17 years ago
  72. 719fef6 Fix an infinite recursion bug in InsertCopies. by Owen Anderson · 17 years ago
  73. cb7d949 Fix some simple bugs. StrongPHIElimination now does not crash on 164.gzip. by Owen Anderson · 17 years ago
  74. 0c5714b Rename registers that do not need copies. by Owen Anderson · 17 years ago
  75. 0d893b4 Actually insert copies now! by Owen Anderson · 17 years ago
  76. 0b4825c Oops, missed one. by Owen Anderson · 17 years ago
  77. 9e54920 Make some predicates static. by Owen Anderson · 17 years ago
  78. 84bc542 Rename SSARegMap -> MachineRegisterInfo in keeping with the idea by Chris Lattner · 17 years ago
  79. 8aa797a Add new shorter predicates for testing machine operands for various types: by Chris Lattner · 17 years ago
  80. 4ee451d Remove attribution from file headers, per discussion on llvmdev. by Chris Lattner · 17 years ago
  81. f1519e8 Flesh out the Briggs implementation a little bit more, fix a few FIXMEs. by Owen Anderson · 17 years ago
  82. efbcebc Sketch out an implementation of Briggs' copy placement algorithm. by Owen Anderson · 17 years ago
  83. cae8d8d Note what still needs doing. by Owen Anderson · 17 years ago
  84. 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
  85. 87a702b Break local interferences in StrongPHIElimination. One step closer... by Owen Anderson · 17 years ago
  86. 965b467 A few more comments. by Owen Anderson · 17 years ago
  87. 62d67dd Add register pairs to the list to check for local interferences. by Owen Anderson · 17 years ago
  88. 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
  89. ed2ffa2 Forgot to remove a register from the PHI-union after I'd determined that it by Owen Anderson · 17 years ago
  90. d525f66 More progress on StrongPHIElimination. Now we actually USE the DomForest! by Owen Anderson · 17 years ago
  91. afc6de0 A little more progress on StrongPHIElimination, now that I have a better sense of by Owen Anderson · 17 years ago
  92. 42f9e96 Run computeDomForest() on the set of registers that need to be tested for by Owen Anderson · 17 years ago
  93. 17b1418 Preserve LiveVariables when doing critical edge splitting. by Owen Anderson · 17 years ago
  94. 35e2dba Break critical edges coming into blocks with PHI nodes. by Owen Anderson · 17 years ago
  95. fe0c882 As Chris and Evan pointed out, BreakCriticalMachineEdges doesn't really need by Owen Anderson · 17 years ago
  96. 14b3fb7 Take another stab at getting isLiveIn() and isLiveOut() right. by Owen Anderson · 17 years ago
  97. 60a877d Add some more of StrongPHIElim. by Owen Anderson · 17 years ago
  98. 8b96b9f Add a few comments. by Owen Anderson · 17 years ago
  99. ee49b53 DomForest is a forest of registers, not instructions. by Owen Anderson · 17 years ago
  100. a4ad2e7 StrongPHIElimination requires LiveVariables. by Owen Anderson · 17 years ago