; RUN: opt < %s -adce -disable-output ; RUN: opt < %s -adce -adce-remove-loops -disable-output @G = external global i32* ; [#uses=1] declare void @Fn(i32*) define i32 @main(i32 %argc.1, i8** %argv.1) { entry: br label %endif.42 endif.42: ; preds = %shortcirc_done.12, %then.66, %endif.42, %entry br i1 false, label %endif.65, label %endif.42 then.66: ; preds = %shortcirc_done.12 call void @Fn( i32* %tmp.2846 ) br label %endif.42 endif.65: ; preds = %endif.42 %tmp.2846 = load i32*, i32** @G ; [#uses=1] br i1 false, label %shortcirc_next.12, label %shortcirc_done.12 shortcirc_next.12: ; preds = %endif.65 br label %shortcirc_done.12 shortcirc_done.12: ; preds = %shortcirc_next.12, %endif.65 br i1 false, label %then.66, label %endif.42 }