xref: /aosp_15_r20/external/llvm/test/Transforms/SimplifyCFG/2004-12-10-SimplifyCFGCrash.ll (revision 9880d6810fe72a1726cb53787c6711e909410d58)
1*9880d681SAndroid Build Coastguard Worker; RUN: opt < %s -simplifycfg -disable-output
2*9880d681SAndroid Build Coastguard Worker
3*9880d681SAndroid Build Coastguard Workerdefine void @symhash_add() {
4*9880d681SAndroid Build Coastguard Workerentry:
5*9880d681SAndroid Build Coastguard Worker	br i1 undef, label %then.0, label %UnifiedReturnBlock
6*9880d681SAndroid Build Coastguard Workerthen.0:		; preds = %entry
7*9880d681SAndroid Build Coastguard Worker	br i1 undef, label %loopentry.2, label %loopentry.1.preheader
8*9880d681SAndroid Build Coastguard Workerloopentry.1.preheader:		; preds = %then.0
9*9880d681SAndroid Build Coastguard Worker	br label %loopentry.1.outer
10*9880d681SAndroid Build Coastguard Workerloopentry.1.outer:		; preds = %loopexit.1, %loopentry.1.preheader
11*9880d681SAndroid Build Coastguard Worker	br label %loopentry.1
12*9880d681SAndroid Build Coastguard Workerloopentry.1:		; preds = %endif.1, %then.4, %then.3, %then.1, %loopentry.1.outer
13*9880d681SAndroid Build Coastguard Worker	br i1 undef, label %loopexit.1, label %no_exit.1
14*9880d681SAndroid Build Coastguard Workerno_exit.1:		; preds = %loopentry.1
15*9880d681SAndroid Build Coastguard Worker	br i1 undef, label %then.1, label %else.0
16*9880d681SAndroid Build Coastguard Workerthen.1:		; preds = %no_exit.1
17*9880d681SAndroid Build Coastguard Worker	br label %loopentry.1
18*9880d681SAndroid Build Coastguard Workerelse.0:		; preds = %no_exit.1
19*9880d681SAndroid Build Coastguard Worker	br i1 undef, label %then.2, label %else.1
20*9880d681SAndroid Build Coastguard Workerthen.2:		; preds = %else.0
21*9880d681SAndroid Build Coastguard Worker	br i1 undef, label %then.3, label %endif.1
22*9880d681SAndroid Build Coastguard Workerthen.3:		; preds = %then.2
23*9880d681SAndroid Build Coastguard Worker	br label %loopentry.1
24*9880d681SAndroid Build Coastguard Workerelse.1:		; preds = %else.0
25*9880d681SAndroid Build Coastguard Worker	br i1 undef, label %endif.1, label %then.4
26*9880d681SAndroid Build Coastguard Workerthen.4:		; preds = %else.1
27*9880d681SAndroid Build Coastguard Worker	br label %loopentry.1
28*9880d681SAndroid Build Coastguard Workerendif.1:		; preds = %else.1, %then.2
29*9880d681SAndroid Build Coastguard Worker	br label %loopentry.1
30*9880d681SAndroid Build Coastguard Workerloopexit.1:		; preds = %loopentry.1
31*9880d681SAndroid Build Coastguard Worker	br i1 undef, label %loopentry.1.outer, label %loopentry.2
32*9880d681SAndroid Build Coastguard Workerloopentry.2:		; preds = %no_exit.2, %loopexit.1, %then.0
33*9880d681SAndroid Build Coastguard Worker	br i1 undef, label %loopexit.2, label %no_exit.2
34*9880d681SAndroid Build Coastguard Workerno_exit.2:		; preds = %loopentry.2
35*9880d681SAndroid Build Coastguard Worker	br label %loopentry.2
36*9880d681SAndroid Build Coastguard Workerloopexit.2:		; preds = %loopentry.2
37*9880d681SAndroid Build Coastguard Worker	ret void
38*9880d681SAndroid Build Coastguard WorkerUnifiedReturnBlock:		; preds = %entry
39*9880d681SAndroid Build Coastguard Worker	ret void
40*9880d681SAndroid Build Coastguard Worker}
41