Skip to content
  1. Dec 09, 2004
  2. Dec 08, 2004
  3. Dec 07, 2004
    • Reid Spencer's avatar
      For PR387:\ · 9273d480
      Reid Spencer authored
      Add doInitialization method to avoid overloaded virtuals
      
      llvm-svn: 18602
      9273d480
  4. Dec 02, 2004
  5. Nov 30, 2004
  6. Nov 29, 2004
  7. Nov 28, 2004
  8. Nov 27, 2004
  9. Nov 26, 2004
  10. Nov 22, 2004
  11. Nov 19, 2004
  12. Nov 18, 2004
  13. Nov 16, 2004
  14. Nov 15, 2004
  15. Nov 14, 2004
  16. Nov 13, 2004
    • Chris Lattner's avatar
      Simplify handling of shifts to be the same as we do for adds. Add support · 8c3e7b92
      Chris Lattner authored
      for (X * C1) + (X * C2) (where * can be mul or shl), allowing us to fold:
      
         Y+Y+Y+Y+Y+Y+Y+Y
      
      into
               %tmp.8 = shl long %Y, ubyte 3           ; <long> [#uses=1]
      
      instead of
      
              %tmp.4 = shl long %Y, ubyte 2           ; <long> [#uses=1]
              %tmp.12 = shl long %Y, ubyte 2          ; <long> [#uses=1]
              %tmp.8 = add long %tmp.4, %tmp.12               ; <long> [#uses=1]
      
      This implements add.ll:test25
      
      Also add support for (X*C1)-(X*C2) -> X*(C1-C2), implementing sub.ll:test18
      
      llvm-svn: 17704
      8c3e7b92
    • Chris Lattner's avatar
      Fold: · 4efe20a1
      Chris Lattner authored
         (X + (X << C2)) --> X * ((1 << C2) + 1)
         ((X << C2) + X) --> X * ((1 << C2) + 1)
      
      This means that we now canonicalize "Y+Y+Y" into:
      
              %tmp.2 = mul long %Y, 3         ; <long> [#uses=1]
      
      instead of:
      
              %tmp.10 = shl long %Y, ubyte 1          ; <long> [#uses=1]
              %tmp.6 = add long %Y, %tmp.10               ; <long> [#uses=1]
      
      llvm-svn: 17701
      4efe20a1
    • Chris Lattner's avatar
      Lazily create the abort message, so only translation units that use unwind · 2858e175
      Chris Lattner authored
      will actually get it.
      
      llvm-svn: 17700
      2858e175
  17. Nov 12, 2004
  18. Nov 07, 2004
  19. Nov 05, 2004
  20. Nov 02, 2004
    • Chris Lattner's avatar
      * Rearrange code slightly · 96f66164
      Chris Lattner authored
      * Disable broken transforms for simplifying (setcc (cast X to larger), CI)
        where CC is not != or ==
      
      llvm-svn: 17422
      96f66164
  21. Nov 01, 2004
    • Chris Lattner's avatar
      Speed up the tail duplication pass on the testcase below from 68.2s to 1.23s: · 8af74249
      Chris Lattner authored
      #define CL0(a) case a: f(); goto c;
       #define CL1(a) CL0(a##0) CL0(a##1) CL0(a##2) CL0(a##3) CL0(a##4) CL0(a##5) \
       CL0(a##6) CL0(a##7) CL0(a##8) CL0(a##9)
       #define CL2(a) CL1(a##0) CL1(a##1) CL1(a##2) CL1(a##3) CL1(a##4) CL1(a##5) \
       CL1(a##6) CL1(a##7) CL1(a##8) CL1(a##9)
       #define CL3(a) CL2(a##0) CL2(a##1) CL2(a##2) CL2(a##3) CL2(a##4) CL2(a##5) \
       CL2(a##6) CL2(a##7) CL2(a##8) CL2(a##9)
       #define CL4(a) CL3(a##0) CL3(a##1) CL3(a##2) CL3(a##3) CL3(a##4) CL3(a##5) \
       CL3(a##6) CL3(a##7) CL3(a##8) CL3(a##9)
      
       void f();
      
       void a() {
           int b;
        c: switch (b) {
               CL4(1)
           }
       }
      
      This comes from GCC PR 15524
      
      llvm-svn: 17390
      8af74249
  22. Oct 28, 2004
Loading