Skip to content
  1. Jul 24, 2004
    • Chris Lattner's avatar
      Big change to compute logical value numbers for each LiveRange added to an · 7efcdb7c
      Chris Lattner authored
      Interval.  This generalizes the isDefinedOnce mechanism that we used before
      to help us coallesce ranges that overlap.  As part of this, every logical
      range with a different value is assigned a different number in the interval.
      For example, for code that looks like this:
      
      0  X = ...
      4  X += ...
        ...
      N    = X
      
      We now generate a live interval that contains two ranges: [2,6:0),[6,?:1)
      reflecting the fact that there are two different values in the range at
      different positions in the code.
      
      Currently we are not using this information at all, so this just slows down
      liveintervals.  In the future, this will change.
      
      Note that this change also substantially refactors the joinIntervalsInMachineBB
      method to merge the cases for virt-virt and phys-virt joining into a single
      case, adds comments, and makes the code a bit easier to follow.
      
      llvm-svn: 15154
      7efcdb7c
    • Chris Lattner's avatar
      Add a new differingRegisterClasses method · d7b9e293
      Chris Lattner authored
      make overlapsAliases take pointers instead of references
      fix indentation
      
      llvm-svn: 15153
      d7b9e293
    • Chris Lattner's avatar
      Little stuff: · 038747f5
      Chris Lattner authored
      * Fix comment typeo
      * add dump() methods
      * add a few new methods like getLiveRangeContaining, removeRange & joinable
        (which is currently the same as overlaps)
      * Remove the unused operator==
      
      Bigger change:
      
      * In LiveInterval, instead of using a boolean isDefinedOnce to keep track of
        if there are > 1 definitions in a particular interval, keep a counter,
        NumValues to keep track of exactly how many there are.
      * In LiveRange, add a new ValId element to indicate which of the numbered
        values each LiveRange belongs to.   We now no longer merge LiveRanges if
        they are of differing value ID's even if they are neighbors.
      
      llvm-svn: 15152
      038747f5
    • Misha Brukman's avatar
      Running list of bugs, unimplemented features, currently broken tests, until we · 8930d4f2
      Misha Brukman authored
      have a nightly tester set up for PowerPC.
      
      llvm-svn: 15147
      8930d4f2
    • Misha Brukman's avatar
      Eliminate spurious empty space; make code easier to page through. · c150bdb5
      Misha Brukman authored
      llvm-svn: 15146
      c150bdb5
  2. Jul 23, 2004
  3. Jul 22, 2004
Loading