Home | History | Annotate | Download | only in ADCE
      1 ; RUN: opt < %s -adce -disable-output
      2 target datalayout = "e-p:32:32"
      3 	%struct..CppObjTypeDesc = type { i32, i16, i16 }
      4 	%struct..TypeToken = type { i32, i16, i16 }
      5 
      6 define i32 @C_ReFaxToDb() {
      7 entry:
      8 	br i1 false, label %endif.0, label %then.0
      9 
     10 then.0:		; preds = %entry
     11 	ret i32 0
     12 
     13 endif.0:		; preds = %entry
     14 	br i1 false, label %then.11, label %then.4
     15 
     16 then.4:		; preds = %endif.0
     17 	ret i32 0
     18 
     19 then.11:		; preds = %endif.0
     20 	br i1 false, label %loopentry.0, label %else.2
     21 
     22 loopentry.0:		; preds = %loopentry.1, %endif.14, %then.11
     23 	br i1 false, label %endif.14, label %loopexit.0
     24 
     25 endif.14:		; preds = %loopentry.0
     26 	br i1 false, label %loopentry.1, label %loopentry.0
     27 
     28 loopentry.1:		; preds = %then.53, %endif.14
     29 	%SubArrays.10 = phi i32* [ %SubArrays.8, %then.53 ], [ null, %endif.14 ]		; <i32*> [#uses=3]
     30 	br i1 false, label %no_exit.1, label %loopentry.0
     31 
     32 no_exit.1:		; preds = %loopentry.1
     33 	switch i32 0, label %label.17 [
     34 		 i32 2, label %label.11
     35 		 i32 19, label %label.10
     36 	]
     37 
     38 label.10:		; preds = %no_exit.1
     39 	br i1 false, label %then.43, label %endif.43
     40 
     41 then.43:		; preds = %label.10
     42 	br i1 false, label %then.44, label %endif.44
     43 
     44 then.44:		; preds = %then.43
     45 	br i1 false, label %shortcirc_next.4, label %endif.45
     46 
     47 shortcirc_next.4:		; preds = %then.44
     48 	br i1 false, label %no_exit.2, label %loopexit.2
     49 
     50 no_exit.2:		; preds = %shortcirc_next.4
     51 	%tmp.897 = getelementptr i32* %SubArrays.10, i64 0		; <i32*> [#uses=1]
     52 	%tmp.899 = load i32* %tmp.897		; <i32> [#uses=1]
     53 	store i32 %tmp.899, i32* null
     54 	ret i32 0
     55 
     56 loopexit.2:		; preds = %shortcirc_next.4
     57 	ret i32 0
     58 
     59 endif.45:		; preds = %then.44
     60 	ret i32 0
     61 
     62 endif.44:		; preds = %then.43
     63 	ret i32 0
     64 
     65 endif.43:		; preds = %label.10
     66 	ret i32 0
     67 
     68 label.11:		; preds = %no_exit.1
     69 	ret i32 0
     70 
     71 label.17:		; preds = %no_exit.1
     72 	br i1 false, label %then.53, label %shortcirc_next.7
     73 
     74 shortcirc_next.7:		; preds = %label.17
     75 	br i1 false, label %then.53, label %shortcirc_next.8
     76 
     77 shortcirc_next.8:		; preds = %shortcirc_next.7
     78 	ret i32 0
     79 
     80 then.53:		; preds = %shortcirc_next.7, %label.17
     81 	%SubArrays.8 = phi i32* [ %SubArrays.10, %shortcirc_next.7 ], [ %SubArrays.10, %label.17 ]		; <i32*> [#uses=1]
     82 	%tmp.1023 = load i32* null		; <i32> [#uses=1]
     83 	switch i32 %tmp.1023, label %loopentry.1 [
     84 	]
     85 
     86 loopexit.0:		; preds = %loopentry.0
     87 	ret i32 0
     88 
     89 else.2:		; preds = %then.11
     90 	ret i32 0
     91 }
     92