Skip to content
  1. Sep 24, 2008
  2. Sep 23, 2008
  3. Sep 22, 2008
  4. Sep 20, 2008
  5. Sep 19, 2008
  6. Sep 17, 2008
  7. Sep 16, 2008
    • Dan Gohman's avatar
      Improve instcombine's handling of integer min and max in two ways: · dafa9c6e
      Dan Gohman authored
       - Recognize expressions like "x > -1 ? x : 0" as min/max and turn them
         into expressions like "x < 0 ? 0 : x", which is easily recognizable
         as a min/max operation.
       - Refrain from folding expression like "y/2 < 1" to "y < 2" when the
         comparison is being used as part of a min or max idiom, like
         "y/2 < 1 ? 1 : y/2". In that case, the division has another use, so
         folding doesn't eliminate it, and obfuscates the min/max, making it
         harder to recognize as a min/max operation.
      
      These benefit ScalarEvolution, CodeGen, and anything else that wants to
      recognize integer min and max.
      
      llvm-svn: 56246
      dafa9c6e
  8. Sep 15, 2008
    • Dan Gohman's avatar
      Teach LSR to optimize away SMAX operations for tripcounts in common · 68e7735a
      Dan Gohman authored
      cases.  See the comment above OptimizeSMax for the full story, and
      the testcase for an example. This cancels out a pessimization
      commonly attributed to indvars, and will allow us to lift some of
      the artificial throttles in indvars, rather than add new ones.
      
      llvm-svn: 56230
      68e7735a
  9. Sep 12, 2008
  10. Sep 11, 2008
  11. Sep 10, 2008
  12. Sep 09, 2008
  13. Sep 08, 2008
  14. Sep 07, 2008
  15. Sep 06, 2008
  16. Sep 05, 2008
    • Devang Patel's avatar
      Remove unused map. · d94269f9
      Devang Patel authored
      llvm-svn: 55861
      d94269f9
    • Duncan Sands's avatar
      Delete the removeCallEdgeTo callgraph method, · 9e236028
      Duncan Sands authored
      because it does not maintain a correct list
      of callsites.  I discovered (see following
      commit) that the inliner will create a wrong
      callgraph if it is fed a callgraph with
      correct edges but incorrect callsites.  These
      were created by Prune-EH, and while it wasn't
      done via removeCallEdgeTo, it could have been
      done via removeCallEdgeTo, which is an accident
      waiting to happen.  Use removeCallEdgeFor
      instead.
      
      llvm-svn: 55859
      9e236028
Loading