• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
1; Check that the call doesn't get removed even if
2; it has no uses. It could have side-effects.
3; RUN: opt -loop-unswitch -enable-new-pm=0 -S %s | FileCheck %s
4; RUN: opt -loop-unswitch -enable-new-pm=0 -enable-mssa-loop-dependency=true -verify-memoryssa -S %s | FileCheck %s
5
6; CHECK-LABEL: @tinky
7define i32 @tinkywinky(i8 %patatino) {
8  %cmp1 = icmp slt i8 %patatino, 5
9  br label %body
10body:
11  %i = select i1 %cmp1, i8 6, i8 undef
12  br i1 true, label %body, label %end
13end:
14  %split = phi i8 [ %i, %body ]
15  %conv4 = sext i8 %split to i32
16; CHECK: tail call fastcc i32 @fn5(
17  %call = tail call fastcc i32 @fn5(i32 %conv4)
18  ret i32 0
19}
20declare fastcc i32 @fn5(i32 returned) unnamed_addr
21