; RUN: opt < %s -simplifycfg -disable-output ; rdar://5882392 target datalayout = "e-p:64:64:64-i1:8:8-i8:8:8-i16:16:16-i32:32:32-i64:64:64-f32:32:32-f64:64:64-v64:64:64-v128:128:128-a0:0:64-s0:64:64-f80:128:128" target triple = "x86_64-apple-darwin9" %struct.Py_complex = type { double, double } define %struct.Py_complex @_Py_c_pow(double %a.0, double %a.1, double %b.0, double %b.1) nounwind { entry: %tmp7 = fcmp une double %b.0, 0.000000e+00 ; [#uses=1] %tmp11 = fcmp une double %b.1, 0.000000e+00 ; [#uses=1] %bothcond = or i1 %tmp7, %tmp11 ; [#uses=1] br i1 %bothcond, label %bb15, label %bb53 bb15: ; preds = %entry %tmp18 = fcmp une double %a.0, 0.000000e+00 ; [#uses=1] %tmp24 = fcmp une double %a.1, 0.000000e+00 ; [#uses=1] %bothcond1 = or i1 %tmp18, %tmp24 ; [#uses=1] br i1 %bothcond1, label %bb29, label %bb27 bb27: ; preds = %bb15 %tmp28 = call i32* @__error( ) nounwind ; [#uses=1] store i32 33, i32* %tmp28, align 4 ret double undef, double undef bb29: ; preds = %bb15 %tmp36 = fcmp une double %b.1, 0.000000e+00 ; [#uses=1] br i1 %tmp36, label %bb39, label %bb47 bb39: ; preds = %bb29 br label %bb47 bb47: ; preds = %bb39, %bb29 ret double undef, double undef bb53: ; preds = %entry ret double undef, double undef } declare i32* @__error() declare double @pow(double, double) nounwind readonly declare double @cos(double) nounwind readonly