Skip to content
  1. Sep 10, 2003
  2. Sep 09, 2003
  3. Sep 08, 2003
  4. Aug 31, 2003
  5. Aug 27, 2003
  6. Aug 24, 2003
  7. Aug 23, 2003
  8. Aug 22, 2003
  9. Aug 19, 2003
  10. Aug 18, 2003
  11. Aug 14, 2003
  12. Aug 13, 2003
  13. Aug 12, 2003
  14. Aug 05, 2003
  15. Aug 02, 2003
  16. Jul 24, 2003
    • Chris Lattner's avatar
      Instcombine: (A >> c1) << c2 for signed integers · ab780dfa
      Chris Lattner authored
      llvm-svn: 7295
      ab780dfa
    • Chris Lattner's avatar
      Reorganization of code, no functional changes. · 3204d4ed
      Chris Lattner authored
      Now it shoudl be a bit more efficient
      
      llvm-svn: 7292
      3204d4ed
    • Chris Lattner's avatar
      Allow folding several instructions into casts, which can simplify a lot · dfae8be3
      Chris Lattner authored
      of codes.  For example,
      short kernel (short t1) {
        t1 >>= 8; t1 <<= 8;
        return t1;
      }
      
      became:
      
      short %kernel(short %t1.1) {
              %tmp.3 = shr short %t1.1, ubyte 8               ; <short> [#uses=1]
              %tmp.5 = cast short %tmp.3 to int               ; <int> [#uses=1]
              %tmp.7 = shl int %tmp.5, ubyte 8                ; <int> [#uses=1]
              %tmp.8 = cast int %tmp.7 to short               ; <short> [#uses=1]
              ret short %tmp.8
      }
      
      before, now it becomes:
      short %kernel(short %t1.1) {
              %tmp.3 = shr short %t1.1, ubyte 8               ; <short> [#uses=1]
              %tmp.8 = shl short %tmp.3, ubyte 8              ; <short> [#uses=1]
              ret short %tmp.8
      }
      
      which will become:
      short %kernel(short %t1.1) {
              %tmp.3 = and short %t1.1, 0xFF00
              ret short %tmp.3
      }
      
      This implements cast-set.ll:test4 and test5
      
      llvm-svn: 7290
      dfae8be3
  17. Jul 23, 2003
Loading