1 ; RUN: llvm-upgrade < %s | llvm-as | llvm-dis > %t1.ll
2 ; RUN: llvm-as %t1.ll -o - | llvm-dis > %t2.ll
3 ; RUN: diff %t1.ll %t2.ll
7 ;; This is an irreducible flow graph
10 void "irreducible"(bool %cond)
12 br bool %cond, label %X, label %Y
20 ;; This is a pair of loops that share the same header
22 void "sharedheader"(bool %cond)
26 br bool %cond, label %X, label %Y
34 ;; This is a simple nested loop
35 void "nested"(bool %cond1, bool %cond2, bool %cond3)
46 br bool %cond3, label %Loop3, label %L3Exit
49 br bool %cond2, label %Loop2, label %L2Exit
52 br bool %cond1, label %Loop1, label %L1Exit