Skip to content
  1. Jul 24, 2010
    • Evan Cheng's avatar
      Add an ILP scheduler. This is a register pressure aware scheduler that's · 37b740c4
      Evan Cheng authored
      appropriate for targets without detailed instruction iterineries.
      The scheduler schedules for increased instruction level parallelism in
      low register pressure situation; it schedules to reduce register pressure
      when the register pressure becomes high.
      
      On x86_64, this is a win for all tests in CFP2000. It also sped up 256.bzip2
      by 16%.
      
      llvm-svn: 109300
      37b740c4
    • Jim Grosbach's avatar
      Remove too-strict assertion. We may want the vreg copy of the physical register · ba4b1909
      Jim Grosbach authored
      to be of a different register class. For example, in Thumb1 if the live-in is
      a high register, we want the vreg to be a low register. rdar://8224931
      
      llvm-svn: 109291
      ba4b1909
    • Devang Patel's avatar
      Revert r109262. · 28499f76
      Devang Patel authored
      llvm-svn: 109285
      28499f76
    • Evan Cheng's avatar
      - Allow target to specify when is register pressure "too high". In most cases, · df907f45
      Evan Cheng authored
        it's too late to start backing off aggressive latency scheduling when most
        of the registers are in use so the threshold should be a bit tighter.
      - Correctly handle live out's and extract_subreg etc.
      - Enable register pressure aware scheduling by default for hybrid scheduler.
        For ARM, this is almost always a win on # of instructions. It's runtime
        neutral for most of the tests. But for some kernels with high register
        pressure it can be a huge win. e.g. 464.h264ref reduced number of spills by
        54 and sped up by 20%.
      
      llvm-svn: 109279
      df907f45
  2. Jul 23, 2010
  3. Jul 22, 2010
  4. Jul 21, 2010
  5. Jul 20, 2010
  6. Jul 19, 2010
    • Evan Cheng's avatar
      Teach computeRegisterProperties() to compute "representative" register class... · 7a135510
      Evan Cheng authored
      Teach computeRegisterProperties() to compute "representative" register class for legal value types. A "representative" register class is the largest legal super-reg register class for a value type. e.g. On i386, GR32 is the rep register class for i8 / i16 / i32; on x86_64 it would be GR64.
      
      This property will be used by the register pressure tracking instruction scheduler.
      
      llvm-svn: 108735
      7a135510
Loading