Handle logical shift right (at least I hope so :) )
[llvm/msp430.git] / test / CodeGen / PowerPC / and_add.ll
blobf103e7c0df06340bcf27319a976be371e3fae0fc
1 ; RUN: llvm-as < %s | llc -march=ppc32 -o %t -f
2 ; RUN: grep slwi %t
3 ; RUN: not grep addi %t
4 ; RUN: not grep rlwinm %t
6 define i32 @test(i32 %A) {
7         ;; shift
8         %B = mul i32 %A, 8              ; <i32> [#uses=1]
9         ;; dead, no demanded bits.
10         %C = add i32 %B, 7              ; <i32> [#uses=1]
11         ;; dead once add is gone.
12         %D = and i32 %C, -8             ; <i32> [#uses=1]
13         ret i32 %D