Home | History | Annotate | Download | only in LoopUnroll
      1 ; RUN: opt -S < %s -loop-unroll -block-freq | FileCheck %s
      2 ; RUN: opt -S < %s -passes='require<opt-remark-emit>,unroll,require<block-freq>' | FileCheck %s
      3 ; Crasher from PR20987.
      4 
      5 ; CHECK: define void @update_loop_info_in_subloops
      6 ; CHECK: entry:
      7 ; CHECK: L:
      8 ; CHECK: L.inner:
      9 ; CHECK: L.inner.latch:
     10 ; CHECK: L.latch:
     11 ; CHECK: L.inner.1:
     12 ; CHECK: L.inner.latch.1:
     13 ; CHECK: L.latch.1:
     14 
     15 define void @update_loop_info_in_subloops() {
     16 entry:
     17   br label %L
     18 
     19 L:
     20   %0 = phi i64 [ 1, %entry ], [ %1, %L.latch ]
     21   br label %L.inner
     22 
     23 L.inner:
     24   br label %L.inner.latch
     25 
     26 L.inner.latch:
     27   br i1 false, label %L.latch, label %L.inner
     28 
     29 L.latch:
     30   %1 = add i64 %0, 1
     31   %2 = icmp eq i64 %1, 3
     32   br i1 %2, label %exit, label %L
     33 
     34 exit:
     35   ret void
     36 }
     37