Skip to content
  1. Oct 16, 2009
  2. Sep 16, 2009
  3. Sep 02, 2009
  4. Aug 26, 2009
  5. Aug 23, 2009
  6. Aug 13, 2009
  7. Aug 12, 2009
  8. Aug 11, 2009
  9. Jul 31, 2009
  10. Jul 25, 2009
  11. Jul 22, 2009
  12. Jul 20, 2009
  13. Jul 10, 2009
  14. Jul 03, 2009
  15. Jun 15, 2009
  16. Jun 02, 2009
  17. May 04, 2009
  18. Apr 07, 2009
  19. Mar 27, 2009
  20. Mar 26, 2009
  21. Mar 13, 2009
  22. Mar 12, 2009
    • Duncan Sands's avatar
      Revert commit 66140 since it caused several failures · 1f853d6a
      Duncan Sands authored
      in the Ada testcase.  Reverting this only covers up
      the real problem, which is a nasty conceptual difficulty
      in the phi elimination pass: when eliminating phi nodes
      in landing pads, the register copies need to come before
      the invoke, not at the end of the basic block which is
      too late...  See PR3784.
      
      llvm-svn: 66826
      1f853d6a
  23. Mar 05, 2009
  24. Feb 20, 2009
  25. Feb 13, 2009
  26. Feb 12, 2009
  27. Jan 23, 2009
    • Gabor Greif's avatar
      Simplify the logic of getting hold of a PHI predecessor block. · eb61fcf2
      Gabor Greif authored
      There is now a direct way from value-use-iterator to incoming block in PHINode's API.
      This way we avoid the iterator->index->iterator trip, and especially the costly
      getOperandNo() invocation. Additionally there is now an assertion that the iterator
      really refers to one of the PHI's Uses.
      
      llvm-svn: 62869
      eb61fcf2
  28. Jan 18, 2009
  29. Jan 12, 2009
  30. Jan 05, 2009
  31. Dec 19, 2008
    • Evan Cheng's avatar
      - CodeGenPrepare does not split loop back edges but it only knows about back... · 3b3de7c2
      Evan Cheng authored
      - CodeGenPrepare does not split loop back edges but it only knows about back edges of single block loops. It now does a DFS walk to find loop back edges.
      - Use SplitBlockPredecessors to factor out common predecessors of the critical edge destination. This is disabled for now due to some regressions.
      
      llvm-svn: 61248
      3b3de7c2
  32. Nov 28, 2008
  33. Nov 27, 2008
  34. Nov 26, 2008
    • Chris Lattner's avatar
      Turn on my codegen prepare heuristic by default. It doesn't affect · 397a11cc
      Chris Lattner authored
      performance in most cases on the Grawp tester, but does speed some 
      things up (like shootout/hash by 15%).  This also doesn't impact 
      compile time in a noticable way on the Grawp tester.
      
      It also, of course, gets the testcase it was designed for right :)
      
      llvm-svn: 60120
      397a11cc
    • Chris Lattner's avatar
      teach the new heuristic how to handle inline asm. · fef04acc
      Chris Lattner authored
      llvm-svn: 60088
      fef04acc
    • Chris Lattner's avatar
      Improve ValueAlreadyLiveAtInst with a cheap and dirty, but effective · 6d71b7fb
      Chris Lattner authored
      heuristic: the value is already live at the new memory operation if
      it is used by some other instruction in the memop's block.  This is
      cheap and simple to compute (moreso than full liveness).
      
      This improves the new heuristic even more.  For example, it cuts two
      out of three new instructions out of 255.vortex:DbmFileInGrpHdr, 
      which is one of the functions that the heuristic regressed.  This
      overall eliminates another 40 instructions from 403.gcc and visibly
      reduces register pressure in 255.vortex (though this only actually
      ends up saving the 2 instructions from the whole program).
      
      llvm-svn: 60084
      6d71b7fb
    • Chris Lattner's avatar
      Start rewroking a subpiece of the profitability heuristic to be · e34fe2c5
      Chris Lattner authored
      phrased in terms of liveness instead of as a horrible hack.  :)
      
      In pratice, this doesn't change the generated code for either 
      255.vortex or 403.gcc, but it could cause minor code changes in 
      theory.  This is framework for coming changes.
      
      llvm-svn: 60082
      e34fe2c5
Loading