Skip to content
  1. Oct 16, 2008
    • Dan Gohman's avatar
      Teach instcombine's visitLoad to scan back several instructions · bc027840
      Dan Gohman authored
      to find opportunities for store-to-load forwarding or load CSE,
      in the same way that visitStore scans back to do DSE. Also, define
      a new helper function for testing whether the addresses of two
      memory accesses are known to have the same value, and use it in
      both visitStore and visitLoad.
      
      These two changes allow instcombine to eliminate loads in code
      produced by front-ends that frequently emit obviously redundant
      addressing for memory references.
      
      llvm-svn: 57608
      bc027840
  2. Oct 14, 2008
  3. Oct 13, 2008
  4. Oct 12, 2008
  5. Oct 11, 2008
  6. Oct 10, 2008
  7. Oct 08, 2008
  8. Oct 07, 2008
  9. Oct 06, 2008
  10. Oct 05, 2008
  11. Oct 01, 2008
  12. Sep 30, 2008
  13. Sep 27, 2008
  14. Sep 25, 2008
    • Devang Patel's avatar
      Large mechanical patch. · 4c758ea3
      Devang Patel authored
      s/ParamAttr/Attribute/g
      s/PAList/AttrList/g
      s/FnAttributeWithIndex/AttributeWithIndex/g
      s/FnAttr/Attribute/g
      
      This sets the stage 
      - to implement function notes as function attributes and 
      - to distinguish between function attributes and return value attributes.
      
      This requires corresponding changes in llvm-gcc and clang.
      
      llvm-svn: 56622
      4c758ea3
  15. Sep 24, 2008
  16. Sep 23, 2008
  17. Sep 22, 2008
  18. Sep 19, 2008
  19. Sep 17, 2008
  20. 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
  21. 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
  22. Sep 12, 2008
  23. Sep 11, 2008
Loading