Skip to content
  1. Mar 16, 2006
    • Evan Cheng's avatar
      For each loop, keep track of all the IV expressions inserted indexed by · 3df447d3
      Evan Cheng authored
      stride. For a set of uses of the IV of a stride which is a multiple
      of another stride, do not insert a new IV expression. Rather, reuse the
      previous IV and rewrite the uses as uses of IV expression multiplied by
      the factor.
      
      e.g.
      x = 0 ...; x ++
      y = 0 ...; y += 4
      then use of y can be rewritten as use of 4*x for x86.
      
      llvm-svn: 26803
      3df447d3
  2. Mar 14, 2006
  3. Mar 08, 2006
  4. Mar 07, 2006
  5. Mar 06, 2006
  6. Mar 05, 2006
  7. Mar 04, 2006
  8. Mar 03, 2006
  9. Mar 02, 2006
  10. Feb 28, 2006
  11. Feb 27, 2006
    • Chris Lattner's avatar
      Merge two almost-identical pieces of code. · c7bfed0f
      Chris Lattner authored
      Make this code more powerful by using ComputeMaskedBits instead of looking
      for an AND operand.  This lets us fold this:
      
      int %test23(int %a) {
              %tmp.1 = and int %a, 1
              %tmp.2 = seteq int %tmp.1, 0
              %tmp.3 = cast bool %tmp.2 to int  ;; xor tmp1, 1
              ret int %tmp.3
      }
      
      into: xor (and a, 1), 1
      llvm-svn: 26396
      c7bfed0f
    • Chris Lattner's avatar
      Fold (A^B) == A -> B == 0 · f5c8a0b8
      Chris Lattner authored
      and  (A-B) == A  ->  B == 0
      
      llvm-svn: 26394
      f5c8a0b8
  12. Feb 26, 2006
  13. Feb 24, 2006
    • Chris Lattner's avatar
      Fix a problem that Nate noticed that boils down to an over conservative check · b580d26e
      Chris Lattner authored
      in the code that does "select C, (X+Y), (X-Y) --> (X+(select C, Y, (-Y)))".
      We now compile this loop:
      
      LBB1_1: ; no_exit
              add r6, r2, r3
              subf r3, r2, r3
              cmpwi cr0, r2, 0
              addi r7, r5, 4
              lwz r2, 0(r5)
              addi r4, r4, 1
              blt cr0, LBB1_4 ; no_exit
      LBB1_3: ; no_exit
              mr r3, r6
      LBB1_4: ; no_exit
              cmpwi cr0, r4, 16
              mr r5, r7
              bne cr0, LBB1_1 ; no_exit
      
      into this instead:
      
      LBB1_1: ; no_exit
              srawi r6, r2, 31
              add r2, r2, r6
              xor r6, r2, r6
              addi r7, r5, 4
              lwz r2, 0(r5)
              addi r4, r4, 1
              add r3, r3, r6
              cmpwi cr0, r4, 16
              mr r5, r7
              bne cr0, LBB1_1 ; no_exit
      
      llvm-svn: 26356
      b580d26e
  14. Feb 23, 2006
  15. Feb 22, 2006
  16. Feb 18, 2006
  17. Feb 17, 2006
  18. Feb 16, 2006
  19. Feb 15, 2006
Loading