Skip to content
  1. Oct 31, 2009
  2. Oct 30, 2009
  3. Oct 28, 2009
  4. Oct 26, 2009
    • David Goodwin's avatar
      Break anti-dependence breaking out into its own class. · 8370485d
      David Goodwin authored
      llvm-svn: 85127
      8370485d
    • Dan Gohman's avatar
      Make LSR's OptimizeShadowIV ignore induction variables with negative · d632f895
      Dan Gohman authored
      strides for now, because it doesn't handle them correctly. This fixes a
      miscompile of SingleSource/Benchmarks/Misc-C++/ray.
      
      This problem was usually hidden because indvars transforms such induction
      variables into negations of canonical induction variables.
      
      llvm-svn: 85118
      d632f895
    • 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
    • Chris Lattner's avatar
      fix PR5295 where the .ll parser didn't reject a function after a global · e38317f4
      Chris Lattner authored
      or global after a function with conflicting names.  Update some testcases
      that were accidentally depending on this behavior.
      
      llvm-svn: 85081
      e38317f4
  5. Oct 23, 2009
  6. Oct 22, 2009
    • Dan Gohman's avatar
      Revert the main portion of r31856. It was causing BranchFolding · ff97acd8
      Dan Gohman authored
      to break up CFG diamonds by banishing one of the blocks to the end of
      the function, which is bad for code density and branch size.
      
      This does pessimize MultiSource/Benchmarks/Ptrdist/yacr2, the
      benchmark cited as the reason for the change, however I've examined
      the code and it looks more like a case of gaming a particular
      branch than of being generally applicable.
      
      llvm-svn: 84803
      ff97acd8
  7. Oct 21, 2009
  8. Oct 20, 2009
  9. Oct 19, 2009
  10. Oct 18, 2009
  11. Oct 17, 2009
  12. Oct 16, 2009
  13. Oct 15, 2009
  14. Oct 14, 2009
  15. Oct 12, 2009
  16. Oct 09, 2009
  17. Oct 08, 2009
  18. Oct 06, 2009
  19. Oct 01, 2009
  20. Sep 30, 2009
Loading