Skip to content
  1. Sep 10, 2012
  2. Sep 06, 2012
  3. Sep 03, 2012
  4. Aug 22, 2012
  5. Aug 04, 2012
    • Jakob Stoklund Olesen's avatar
      Add an experimental -early-live-intervals option. · 1c465892
      Jakob Stoklund Olesen authored
      This option runs LiveIntervals before TwoAddressInstructionPass which
      will eventually learn to exploit and update the analysis.
      
      Eventually, LiveIntervals will run before PHIElimination, and we can get
      rid of LiveVariables.
      
      llvm-svn: 161270
      1c465892
  6. Aug 03, 2012
    • Jakob Stoklund Olesen's avatar
      Completely eliminate VNInfo flags. · daae19f7
      Jakob Stoklund Olesen authored
      The 'unused' state of a value number can be represented as an invalid
      def SlotIndex. This also exposed code that shouldn't have been looking
      at unused value VNInfos.
      
      llvm-svn: 161258
      daae19f7
    • Jakob Stoklund Olesen's avatar
      Eliminate the VNInfo::hasPHIKill() flag. · 9f565e19
      Jakob Stoklund Olesen authored
      The only real user of the flag was removeCopyByCommutingDef(), and it
      has been switched to LiveIntervals::hasPHIKill().
      
      All the code changed by this patch was only concerned with computing and
      propagating the flag.
      
      llvm-svn: 161255
      9f565e19
    • Jakob Stoklund Olesen's avatar
      Make the hasPHIKills flag a computed property. · 06d6a536
      Jakob Stoklund Olesen authored
      The VNInfo::HAS_PHI_KILL is only half supported. We precompute it in
      LiveIntervalAnalysis, but it isn't properly updated by live range
      splitting and functions like shrinkToUses().
      
      It is only used in one place: RegisterCoalescer::removeCopyByCommutingDef().
      
      This patch changes that function to use a new LiveIntervals::hasPHIKill()
      function that computes the flag for a given value number.
      
      llvm-svn: 161254
      06d6a536
  7. Jul 27, 2012
  8. Jun 22, 2012
  9. Jun 21, 2012
  10. Jun 20, 2012
  11. Jun 06, 2012
    • Jakob Stoklund Olesen's avatar
      Remove dead debug option -disable-rematerialization. · f435b186
      Jakob Stoklund Olesen authored
      Remat has been stable for years, and it isn't done by
      LiveIntervalAnalysis any longer. (See LiveRangeEdit).
      
      llvm-svn: 158079
      f435b186
    • Matt Beaumont-Gay's avatar
      Suppress -Wunused-variable in -Asserts build · 7ba769be
      Matt Beaumont-Gay authored
      llvm-svn: 158037
      7ba769be
    • Jakob Stoklund Olesen's avatar
      Simplify LiveInterval::print(). · f3f7d6f6
      Jakob Stoklund Olesen authored
      Don't print out the register number and spill weight, making the TRI
      argument unnecessary.
      
      This allows callers to interpret the reg field. It can currently be a
      virtual register, a physical register, a spill slot, or a register unit.
      
      llvm-svn: 158031
      f3f7d6f6
    • Jakob Stoklund Olesen's avatar
      Add experimental support for register unit liveness. · 12e03dae
      Jakob Stoklund Olesen authored
      Instead of computing a live interval per physreg, LiveIntervals can
      compute live intervals per register unit. This makes impossible the
      confusing situation where aliasing registers could have overlapping live
      intervals. It should also make fixed interferernce checking cheaper
      since registers have fewer register units than aliases.
      
      Live intervals for regunits are computed on demand, using MRI use-def
      chains and the new LiveRangeCalc class. Only regunits live in to ABI
      blocks are precomputed during LiveIntervals::runOnMachineFunction().
      
      The regunit liveness computations don't depend on LiveVariables.
      
      llvm-svn: 158029
      12e03dae
  12. Jun 05, 2012
  13. May 29, 2012
  14. May 20, 2012
  15. Apr 18, 2012
  16. Mar 21, 2012
  17. Mar 04, 2012
  18. Mar 01, 2012
  19. Feb 21, 2012
Loading