1 ; RUN: llc < %s -mtriple=x86_64-apple-darwin10
3 define i32 @main(i32 %argc, i8** nocapture %argv) nounwind ssp {
5 br i1 undef, label %bb, label %bb1
11 br i1 undef, label %bb3, label %bb2
17 br i1 undef, label %bb.i18, label %quantum_getwidth.exit
19 bb.i18: ; preds = %bb.i18, %bb3
20 br i1 undef, label %bb.i18, label %quantum_getwidth.exit
22 quantum_getwidth.exit: ; preds = %bb.i18, %bb3
23 br i1 undef, label %bb4, label %bb6.preheader
25 bb4: ; preds = %quantum_getwidth.exit
28 bb6.preheader: ; preds = %quantum_getwidth.exit
29 br i1 undef, label %bb.i1, label %bb1.i2
31 bb.i1: ; preds = %bb6.preheader
34 bb1.i2: ; preds = %bb6.preheader
35 br i1 undef, label %bb2.i, label %bb3.i4
37 bb2.i: ; preds = %bb1.i2
40 bb3.i4: ; preds = %bb1.i2
41 br i1 undef, label %quantum_new_qureg.exit, label %bb4.i
43 bb4.i: ; preds = %bb3.i4
46 quantum_new_qureg.exit: ; preds = %bb3.i4
47 br i1 undef, label %bb9, label %bb11.thread
49 bb11.thread: ; preds = %quantum_new_qureg.exit
50 %.cast.i = zext i32 undef to i64 ; <i64> [#uses=1]
53 bb9: ; preds = %quantum_new_qureg.exit
56 bb.i37: ; preds = %bb.i37, %bb11.thread
57 %0 = load i64* undef, align 8 ; <i64> [#uses=1]
58 %1 = shl i64 %0, %.cast.i ; <i64> [#uses=1]
59 store i64 %1, i64* undef, align 8
60 br i1 undef, label %bb.i37, label %quantum_addscratch.exit
62 quantum_addscratch.exit: ; preds = %bb.i37
63 br i1 undef, label %bb12.preheader, label %bb14
65 bb12.preheader: ; preds = %quantum_addscratch.exit
68 bb14: ; preds = %quantum_addscratch.exit
69 br i1 undef, label %bb17, label %bb.nph
71 bb.nph: ; preds = %bb14
75 br i1 undef, label %bb1.i7, label %quantum_measure.exit
77 bb1.i7: ; preds = %bb17
78 br label %quantum_measure.exit
80 quantum_measure.exit: ; preds = %bb1.i7, %bb17
81 switch i32 undef, label %bb21 [
86 bb18: ; preds = %quantum_measure.exit
89 bb20: ; preds = %quantum_measure.exit
92 bb21: ; preds = %quantum_measure.exit
93 br i1 undef, label %quantum_frac_approx.exit, label %bb1.i
95 bb1.i: ; preds = %bb21
98 quantum_frac_approx.exit: ; preds = %bb21
99 br i1 undef, label %bb25, label %bb26
101 bb25: ; preds = %quantum_frac_approx.exit
104 bb26: ; preds = %quantum_frac_approx.exit
105 br i1 undef, label %quantum_gcd.exit, label %bb.i
107 bb.i: ; preds = %bb.i, %bb26
108 br i1 undef, label %quantum_gcd.exit, label %bb.i
110 quantum_gcd.exit: ; preds = %bb.i, %bb26
111 br i1 undef, label %bb32, label %bb33
113 bb32: ; preds = %quantum_gcd.exit
114 br i1 undef, label %bb.i.i, label %quantum_delete_qureg.exit
116 bb.i.i: ; preds = %bb32
119 quantum_delete_qureg.exit: ; preds = %bb32
122 bb33: ; preds = %quantum_gcd.exit