Taints the non-acquire RMW's store address with the load part
[oota-llvm.git] / test / Transforms / GVN / 2007-07-25-NestedLoop.ll
1 ; RUN: opt < %s -gvn | llvm-dis
2
3         %struct.TypHeader = type { i32, %struct.TypHeader**, [3 x i8], i8 }
4
5 define %struct.TypHeader* @LtRec(%struct.TypHeader* %hdL, %struct.TypHeader* %hdR) {
6 entry:
7         br i1 false, label %bb556.preheader, label %bb534.preheader
8
9 bb534.preheader:                ; preds = %entry
10         ret %struct.TypHeader* null
11
12 bb556.preheader:                ; preds = %entry
13         %tmp56119 = getelementptr %struct.TypHeader, %struct.TypHeader* %hdR, i32 0, i32 0              ; <i32*> [#uses=1]
14         %tmp56220 = load i32, i32* %tmp56119            ; <i32> [#uses=0]
15         br i1 false, label %bb.nph23, label %bb675.preheader
16
17 bb.nph23:               ; preds = %bb556.preheader
18         ret %struct.TypHeader* null
19
20 bb656:          ; preds = %bb675.outer, %bb656
21         %tmp678 = load i32, i32* %tmp677                ; <i32> [#uses=0]
22         br i1 false, label %bb684, label %bb656
23
24 bb684:          ; preds = %bb675.outer, %bb656
25         br i1 false, label %bb924.preheader, label %bb675.outer
26
27 bb675.outer:            ; preds = %bb675.preheader, %bb684
28         %tmp67812 = load i32, i32* %tmp67711            ; <i32> [#uses=0]
29         br i1 false, label %bb684, label %bb656
30
31 bb675.preheader:                ; preds = %bb556.preheader
32         %tmp67711 = getelementptr %struct.TypHeader, %struct.TypHeader* %hdR, i32 0, i32 0              ; <i32*> [#uses=1]
33         %tmp677 = getelementptr %struct.TypHeader, %struct.TypHeader* %hdR, i32 0, i32 0                ; <i32*> [#uses=1]
34         br label %bb675.outer
35
36 bb924.preheader:                ; preds = %bb684
37         ret %struct.TypHeader* null
38 }