Home | History | Annotate | Download | only in SCCP
      1 ; RUN: opt < %s -sccp -S | grep undef | count 1
      2 ; PR1938
      3 
      4 define i32 @main() {
      5 entry:
      6 	br label %bb
      7 
      8 bb:
      9 	%indvar = phi i32 [ 0, %entry ], [ %k, %bb.backedge ]
     10 	%k = add i32 %indvar, 1
     11 	br i1 undef, label %cond_true, label %cond_false
     12 
     13 cond_true:
     14 	%tmp97 = icmp slt i32 %k, 10
     15 	br i1 %tmp97, label %bb.backedge, label %bb12
     16 
     17 bb.backedge:
     18 	br label %bb
     19 
     20 cond_false:
     21 	%tmp9 = icmp slt i32 %k, 10
     22 	br i1 %tmp9, label %bb.backedge, label %bb12
     23 
     24 bb12:
     25 	%tmp14 = icmp eq i32 %k, 10
     26 	br i1 %tmp14, label %cond_next18, label %cond_true17
     27 
     28 cond_true17:
     29 	tail call void @abort( )
     30 	unreachable
     31 
     32 cond_next18:
     33 	ret i32 0
     34 }
     35 
     36 declare void @abort()
     37