Skip to content
  1. Jul 02, 2009
  2. May 06, 2009
  3. Nov 27, 2008
  4. Sep 04, 2008
  5. Jun 12, 2008
  6. Jun 11, 2008
  7. May 23, 2008
  8. May 16, 2008
  9. May 15, 2008
  10. May 13, 2008
  11. Apr 21, 2008
  12. Apr 14, 2008
  13. Apr 13, 2008
  14. Mar 22, 2008
  15. Dec 29, 2007
  16. Nov 04, 2007
  17. May 06, 2007
  18. May 03, 2007
  19. May 02, 2007
  20. May 01, 2007
  21. Feb 06, 2007
  22. Dec 19, 2006
  23. Dec 06, 2006
  24. Nov 26, 2006
  25. Sep 27, 2006
  26. Sep 10, 2006
  27. Sep 07, 2006
    • Chris Lattner's avatar
      Throttle back tail duplication to avoid creating really ugly sequences of code. · c465046e
      Chris Lattner authored
      For Transforms/TailDup/if-tail-dup.ll, f.e., it produces:
      
      _foo:
              movl 8(%esp), %eax
              movl 4(%esp), %ecx
              testl $1, %ecx
              je LBB1_2       #cond_next
      LBB1_1: #cond_true
              movl $1, (%eax)
      LBB1_2: #cond_next
              testl $2, %ecx
              je LBB1_4       #cond_next10
      LBB1_3: #cond_true6
              movl $1, 4(%eax)
      LBB1_4: #cond_next10
              testl $4, %ecx
              je LBB1_6       #cond_next18
      LBB1_5: #cond_true14
              movl $1, 8(%eax)
      LBB1_6: #cond_next18
              testl $8, %ecx
              je LBB1_8       #return
      LBB1_7: #cond_true22
              movl $1, 12(%eax)
              ret
      LBB1_8: #return
              ret
      
      instead of:
      
      _foo:
              movl 4(%esp), %eax
              testl $2, %eax
              sete %cl
              movl 8(%esp), %edx
              testl $1, %eax
              je LBB1_2       #cond_next
      LBB1_1: #cond_true
              movl $1, (%edx)
              testb %cl, %cl
              jne LBB1_4      #cond_next10
              jmp LBB1_3      #cond_true6
      LBB1_2: #cond_next
              testb %cl, %cl
              jne LBB1_4      #cond_next10
      LBB1_3: #cond_true6
              movl $1, 4(%edx)
              testl $4, %eax
              je LBB1_6       #cond_next18
              jmp LBB1_5      #cond_true14
      LBB1_4: #cond_next10
              testl $4, %eax
              je LBB1_6       #cond_next18
      LBB1_5: #cond_true14
              movl $1, 8(%edx)
              testl $8, %eax
              je LBB1_8       #return
              jmp LBB1_7      #cond_true22
      LBB1_6: #cond_next18
              testl $8, %eax
              je LBB1_8       #return
      LBB1_7: #cond_true22
              movl $1, 12(%edx)
              ret
      LBB1_8: #return
              ret
      
      llvm-svn: 30158
      c465046e
  28. Aug 28, 2006
  29. Jan 23, 2006
  30. Apr 22, 2005
  31. Nov 22, 2004
  32. 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
  33. Oct 06, 2004
  34. Sep 20, 2004
  35. Sep 15, 2004
  36. Sep 02, 2004
    • Reid Spencer's avatar
      Changes For Bug 352 · 7c16caa3
      Reid Spencer authored
      Move include/Config and include/Support into include/llvm/Config,
      include/llvm/ADT and include/llvm/Support. From here on out, all LLVM
      public header files must be under include/llvm/.
      
      llvm-svn: 16137
      7c16caa3
  37. Jul 29, 2004
  38. May 25, 2004
  39. Apr 18, 2004
Loading