Home | History | Annotate | Download | only in ADCE
      1 ; RUN: opt < %s -adce -disable-output
      2 ; RUN: opt < %s -adce -adce-remove-loops -disable-output
      3 
      4 @G = external global i32*               ; <i32**> [#uses=1]
      5 
      6 declare void @Fn(i32*)
      7 
      8 define i32 @main(i32 %argc.1, i8** %argv.1) {
      9 entry:
     10         br label %endif.42
     11 
     12 endif.42:               ; preds = %shortcirc_done.12, %then.66, %endif.42, %entry
     13         br i1 false, label %endif.65, label %endif.42
     14 
     15 then.66:                ; preds = %shortcirc_done.12
     16         call void @Fn( i32* %tmp.2846 )
     17         br label %endif.42
     18 
     19 endif.65:               ; preds = %endif.42
     20         %tmp.2846 = load i32*, i32** @G               ; <i32*> [#uses=1]
     21         br i1 false, label %shortcirc_next.12, label %shortcirc_done.12
     22 
     23 shortcirc_next.12:              ; preds = %endif.65
     24         br label %shortcirc_done.12
     25 
     26 shortcirc_done.12:              ; preds = %shortcirc_next.12, %endif.65
     27         br i1 false, label %then.66, label %endif.42
     28 }
     29 
     30