2009-09-12 02:01:28 +08:00
|
|
|
; RUN: opt < %s -adce -disable-output
|
2016-12-14 00:42:18 +08:00
|
|
|
; RUN: opt < %s -adce -adce-remove-loops -disable-output
|
2003-06-16 20:05:38 +08:00
|
|
|
|
2008-03-01 17:15:35 +08:00
|
|
|
@G = external global i32* ; <i32**> [#uses=1]
|
2003-06-16 20:05:38 +08:00
|
|
|
|
2008-03-01 17:15:35 +08:00
|
|
|
declare void @Fn(i32*)
|
2003-06-16 20:05:38 +08:00
|
|
|
|
2008-03-01 17:15:35 +08:00
|
|
|
define i32 @main(i32 %argc.1, i8** %argv.1) {
|
|
|
|
entry:
|
|
|
|
br label %endif.42
|
2003-06-16 20:05:38 +08:00
|
|
|
|
2008-03-01 17:15:35 +08:00
|
|
|
endif.42: ; preds = %shortcirc_done.12, %then.66, %endif.42, %entry
|
|
|
|
br i1 false, label %endif.65, label %endif.42
|
2003-06-16 20:05:38 +08:00
|
|
|
|
2008-03-01 17:15:35 +08:00
|
|
|
then.66: ; preds = %shortcirc_done.12
|
|
|
|
call void @Fn( i32* %tmp.2846 )
|
|
|
|
br label %endif.42
|
2003-06-16 20:05:38 +08:00
|
|
|
|
2008-03-01 17:15:35 +08:00
|
|
|
endif.65: ; preds = %endif.42
|
2015-02-28 05:17:42 +08:00
|
|
|
%tmp.2846 = load i32*, i32** @G ; <i32*> [#uses=1]
|
2008-03-01 17:15:35 +08:00
|
|
|
br i1 false, label %shortcirc_next.12, label %shortcirc_done.12
|
2003-06-16 20:05:38 +08:00
|
|
|
|
2008-03-01 17:15:35 +08:00
|
|
|
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
|
2003-06-16 20:05:38 +08:00
|
|
|
}
|
2008-03-01 17:15:35 +08:00
|
|
|
|