[ARM] Adjust how NEON shifts are lowered
[llvm-core.git] / test / Transforms / IPConstantProp / solve-after-each-resolving-undefs-for-function.ll
blob5e7c323641d3c4696c7e0133057c31aec8ebd0b8
1 ; RUN: opt < %s -ipsccp -S | FileCheck %s
3 ; CHECK-LABEL: @testf(
4 ; CHECK:         ret i32 undef
6 define internal i32 @testf() {
7 entry:
8   br i1 undef, label %if.then, label %if.end
10 if.then:                                          ; preds = %entry, %if.then
11   br label %if.end
13 if.end:                                          ; preds = %if.then1, %entry
14   ret i32 10
17 ; CHECK-LABEL: @test1(
18 ; CHECK:         ret i32 undef
20 define internal i32 @test1() {
21 entry:
22   br label %if.then
24 if.then:                                          ; preds = %entry, %if.then
25   %call = call i32 @testf()
26   %res = icmp eq i32 %call, 10
27   br i1 %res, label %ret1, label %ret2
29 ret1:                                           ; preds = %if.then, %entry
30   ret i32 99
32 ret2:                                           ; preds = %if.then, %entry
33   ret i32 0
36 ; CHECK-LABEL: @main(
37 ; CHECK-NEXT:    %res = call i32 @test1()
38 ; CHECK-NEXT:    ret i32 99
40 define i32 @main() {
41   %res = call i32 @test1()
42   ret i32 %res