xref: /aosp_15_r20/external/llvm/test/Transforms/GVN/2007-07-25-NestedLoop.ll (revision 9880d6810fe72a1726cb53787c6711e909410d58)
1*9880d681SAndroid Build Coastguard Worker; RUN: opt < %s -gvn | llvm-dis
2*9880d681SAndroid Build Coastguard Worker
3*9880d681SAndroid Build Coastguard Worker	%struct.TypHeader = type { i32, %struct.TypHeader**, [3 x i8], i8 }
4*9880d681SAndroid Build Coastguard Worker
5*9880d681SAndroid Build Coastguard Workerdefine %struct.TypHeader* @LtRec(%struct.TypHeader* %hdL, %struct.TypHeader* %hdR) {
6*9880d681SAndroid Build Coastguard Workerentry:
7*9880d681SAndroid Build Coastguard Worker	br i1 false, label %bb556.preheader, label %bb534.preheader
8*9880d681SAndroid Build Coastguard Worker
9*9880d681SAndroid Build Coastguard Workerbb534.preheader:		; preds = %entry
10*9880d681SAndroid Build Coastguard Worker	ret %struct.TypHeader* null
11*9880d681SAndroid Build Coastguard Worker
12*9880d681SAndroid Build Coastguard Workerbb556.preheader:		; preds = %entry
13*9880d681SAndroid Build Coastguard Worker	%tmp56119 = getelementptr %struct.TypHeader, %struct.TypHeader* %hdR, i32 0, i32 0		; <i32*> [#uses=1]
14*9880d681SAndroid Build Coastguard Worker	%tmp56220 = load i32, i32* %tmp56119		; <i32> [#uses=0]
15*9880d681SAndroid Build Coastguard Worker	br i1 false, label %bb.nph23, label %bb675.preheader
16*9880d681SAndroid Build Coastguard Worker
17*9880d681SAndroid Build Coastguard Workerbb.nph23:		; preds = %bb556.preheader
18*9880d681SAndroid Build Coastguard Worker	ret %struct.TypHeader* null
19*9880d681SAndroid Build Coastguard Worker
20*9880d681SAndroid Build Coastguard Workerbb656:		; preds = %bb675.outer, %bb656
21*9880d681SAndroid Build Coastguard Worker	%tmp678 = load i32, i32* %tmp677		; <i32> [#uses=0]
22*9880d681SAndroid Build Coastguard Worker	br i1 false, label %bb684, label %bb656
23*9880d681SAndroid Build Coastguard Worker
24*9880d681SAndroid Build Coastguard Workerbb684:		; preds = %bb675.outer, %bb656
25*9880d681SAndroid Build Coastguard Worker	br i1 false, label %bb924.preheader, label %bb675.outer
26*9880d681SAndroid Build Coastguard Worker
27*9880d681SAndroid Build Coastguard Workerbb675.outer:		; preds = %bb675.preheader, %bb684
28*9880d681SAndroid Build Coastguard Worker	%tmp67812 = load i32, i32* %tmp67711		; <i32> [#uses=0]
29*9880d681SAndroid Build Coastguard Worker	br i1 false, label %bb684, label %bb656
30*9880d681SAndroid Build Coastguard Worker
31*9880d681SAndroid Build Coastguard Workerbb675.preheader:		; preds = %bb556.preheader
32*9880d681SAndroid Build Coastguard Worker	%tmp67711 = getelementptr %struct.TypHeader, %struct.TypHeader* %hdR, i32 0, i32 0		; <i32*> [#uses=1]
33*9880d681SAndroid Build Coastguard Worker	%tmp677 = getelementptr %struct.TypHeader, %struct.TypHeader* %hdR, i32 0, i32 0		; <i32*> [#uses=1]
34*9880d681SAndroid Build Coastguard Worker	br label %bb675.outer
35*9880d681SAndroid Build Coastguard Worker
36*9880d681SAndroid Build Coastguard Workerbb924.preheader:		; preds = %bb684
37*9880d681SAndroid Build Coastguard Worker	ret %struct.TypHeader* null
38*9880d681SAndroid Build Coastguard Worker}
39