In some rare cases, the register allocator can spill registers but end up not utilizi...
[llvm/msp430.git] / test / Transforms / Reassociate / shifttest.ll
blobfd49e7d3f22320965a863d004a1464a65e61fee1
1 ; With shl->mul reassociation, we can see that this is (shl A, 9) * A
3 ; RUN: llvm-as < %s | opt -reassociate -instcombine | llvm-dis |\
4 ; RUN:    grep {shl .*, 9}
6 define i32 @test(i32 %A, i32 %B) {
7         %X = shl i32 %A, 5              ; <i32> [#uses=1]
8         %Y = shl i32 %A, 4              ; <i32> [#uses=1]
9         %Z = mul i32 %Y, %X             ; <i32> [#uses=1]
10         ret i32 %Z