; ModuleID = 'my_module' declare double @putchard(double %char) define double @printstar(double %n) { entry: br label %loop loop: ; preds = %ifcont, %entry %i = phi double [ 1.000000e+00, %entry ], [ %nextvar, %ifcont ] %lttmp = fcmp ult double %i, 5.000000e+00 %booltmp = uitofp i1 %lttmp to double %ifcond = fcmp one double %booltmp, 0.000000e+00 br i1 %ifcond, label %then, label %else then: ; preds = %loop %calltmp = call double @putchard(double 4.200000e+01) br label %ifcont else: ; preds = %loop %calltmp1 = call double @putchard(double 4.300000e+01) br label %ifcont ifcont: ; preds = %else, %then %iftmp = phi double [ %calltmp, %then ], [ %calltmp1, %else ] %nextvar = fadd double %i, 1.000000e+00 %lttmp2 = fcmp ult double %i, %n %booltmp3 = uitofp i1 %lttmp2 to double %loopcond = fcmp one double %booltmp3, 0.000000e+00 br i1 %loopcond, label %loop, label %afterloop afterloop: ; preds = %ifcont ret double 0.000000e+00 } define double @"0"() { entry: %calltmp = call double @printstar(double 1.000000e+02) ret double %calltmp }