[ARM] Adjust how NEON shifts are lowered
[llvm-core.git] / test / Transforms / NewGVN / bitcast-of-call.ll
blob2b817fbcd01c151578fc75ea4b6b1b538835428f
1 ; NOTE: Assertions have been autogenerated by utils/update_test_checks.py
2 ; RUN: opt < %s -newgvn -S | FileCheck %s
3 ; PR2213
5 define i32* @f(i8* %x) {
6 ; CHECK-LABEL: @f(
7 ; CHECK-NEXT:  entry:
8 ; CHECK-NEXT:    [[TMP:%.*]] = call i8* @m(i32 12)
9 ; CHECK-NEXT:    [[TMP1:%.*]] = bitcast i8* [[TMP]] to i32*
10 ; CHECK-NEXT:    ret i32* [[TMP1]]
12 entry:
13   %tmp = call i8* @m( i32 12 )            ; <i8*> [#uses=2]
14   %tmp1 = bitcast i8* %tmp to i32*                ; <i32*> [#uses=0]
15   %tmp3 = bitcast i32* %tmp1 to i8*
16   %tmp2 = bitcast i8* %tmp3 to i32*                ; <i32*> [#uses=0]
17   ret i32* %tmp2
20 declare i8* @m(i32)