Skip to content
  1. Oct 26, 2009
    • David Goodwin's avatar
      Break anti-dependence breaking out into its own class. · 8370485d
      David Goodwin authored
      llvm-svn: 85127
      8370485d
    • Evan Cheng's avatar
      - Revert some changes from 85044, 85045, and 85047 that broke x86_64 tests and · b81cb2a9
      Evan Cheng authored
        bootstrapping. It's not safe to leave identity subreg_to_reg and insert_subreg
        around.
      - Relax register scavenging to allow use of partially "not-live" registers. It's
        common for targets to operate on registers where the top bits are undef. e.g.
        s0 =
        d0 = insert_subreg d0<undef>, s0, 1
        ...
           = d0
        When the insert_subreg is eliminated by the coalescer, the scavenger used to
        complain. The previous fix was to keep to insert_subreg around. But that's
        brittle and it's overly conservative when we want to use the scavenger to 
        allocate registers. It's actually legal and desirable for other instructions
        to use the "undef" part of d0. e.g.
        s0 =
        d0 = insert_subreg d0<undef>, s0, 1
        ...
        s1 =
           = s1
           = d0
        We probably need add a "partial-undef" marker on machine operand so the
        machine verifier would not complain.
      
      llvm-svn: 85091
      b81cb2a9
    • Chandler Carruth's avatar
      Move DataTypes.h to include/llvm/System, update all users. This breaks the last · 56869f22
      Chandler Carruth authored
      direct inclusion edge from System to Support.
      
      llvm-svn: 85086
      56869f22
  2. Oct 25, 2009
  3. Oct 24, 2009
  4. Oct 23, 2009
  5. Oct 22, 2009
  6. Oct 21, 2009
  7. Oct 20, 2009
  8. Oct 19, 2009
  9. Oct 18, 2009
    • Evan Cheng's avatar
      Spill slots cannot alias. · f0236e01
      Evan Cheng authored
      llvm-svn: 84432
      f0236e01
    • Evan Cheng's avatar
      -Revert parts of 84326 and 84411. Distinquishing between fixed and non-fixed · 0e9d9ca8
      Evan Cheng authored
      stack slots and giving them different PseudoSourceValue's did not fix the
      problem of post-alloc scheduling miscompiling llvm itself.
      - Apply Dan's conservative workaround by assuming any non fixed stack slots can
      alias other memory locations. This means a load from spill slot #1 cannot 
      move above a store of spill slot #2. 
      - Enable post-alloc scheduling for x86 at optimization leverl Default and above.
      
      llvm-svn: 84424
      0e9d9ca8
Loading