Skip to content
  1. Apr 05, 2011
  2. Mar 30, 2011
  3. Mar 28, 2011
  4. Mar 17, 2011
  5. Feb 15, 2011
  6. Feb 02, 2011
  7. Jan 21, 2011
  8. Jan 16, 2011
  9. Dec 22, 2010
  10. Dec 20, 2010
  11. Dec 19, 2010
  12. Nov 29, 2010
  13. Nov 23, 2010
  14. Nov 22, 2010
  15. Nov 13, 2010
    • Duncan Sands's avatar
      Generalize the reassociation transform in SimplifyCommutative (now renamed to · 641baf16
      Duncan Sands authored
      SimplifyAssociativeOrCommutative) "(A op C1) op C2" -> "A op (C1 op C2)",
      which previously was only done if C1 and C2 were constants, to occur whenever
      "C1 op C2" simplifies (a la InstructionSimplify).  Since the simplifying operand
      combination can no longer be assumed to be the right-hand terms, consider all of
      the possible permutations.  When compiling "gcc as one big file", transform 2
      (i.e. using right-hand operands) fires about 4000 times but it has to be said
      that most of the time the simplifying operands are both constants.  Transforms
      3, 4 and 5 each fired once.  Transform 6, which is an existing transform that
      I didn't change, never fired.  With this change, the testcase is now optimized
      perfectly with one run of instcombine (previously it required instcombine +
      reassociate + instcombine, and it may just have been luck that this worked).
      
      llvm-svn: 119002
      641baf16
  16. Oct 23, 2010
  17. Oct 08, 2010
  18. Oct 07, 2010
  19. Jul 22, 2010
  20. Jul 09, 2010
  21. Jun 24, 2010
  22. May 27, 2010
  23. Apr 17, 2010
  24. Apr 16, 2010
  25. Apr 15, 2010
  26. Feb 16, 2010
Loading