summaryrefslogtreecommitdiffstats
path: root/test/Analysis/ScalarEvolution/pointer-sign-bits.ll
blob: 05cb81b3ba6bfe4dcf2bc9ad2868e5e85227eea7 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
; RUN: llvm-as < %s | opt -analyze -scalar-evolution -disable-output

target datalayout = "e-p:32:32:32-i1:8:8-i8:8:8-i16:16:16-i32:32:32-i64:32:64-f32:32:32-f64:32:64-v64:64:64-v128:128:128-a0:0:64-f80:32:32"
  %JavaObject = type { [0 x i32 (...)*]*, i8* }

define void @JnJVM_antlr_CSharpCodeGenerator_genBitSet__Lantlr_collections_impl_BitSet_2I(%JavaObject*, %JavaObject*, i32) {
start:
  br i1 undef, label %"stack overflow", label %"no stack overflow"

"GOTO or IF*2":         ; preds = %"true verifyAndComputePtr89", %verifyNullCont84
  unreachable

"GOTO or IF*5":         ; preds = %"true verifyAndComputePtr127", %"GOTO or IF*6"
  unreachable

"GOTO or IF*6":         ; preds = %"true verifyAndComputePtr131.GOTO or IF*6_crit_edge", %"true verifyAndComputePtr89"
  %indvar = phi i32 [ %indvar.next, %"true verifyAndComputePtr131.GOTO or IF*6_crit_edge" ], [ 0, %"true verifyAndComputePtr89" ]               ; <i32> [#uses=2]
  %.0.in = add i32 %indvar, 0           ; <i32> [#uses=1]
  %.0 = add i32 %.0.in, 1               ; <i32> [#uses=1]
  %3 = icmp slt i32 %.0, %4             ; <i1> [#uses=1]
  br i1 %3, label %verifyNullCont126, label %"GOTO or IF*5"

end:            ; preds = %"no exception block35"
  ret void

"stack overflow":               ; preds = %start
  ret void

"no stack overflow":            ; preds = %start
  br i1 undef, label %verifyNullCont, label %"no stack overflow.end_crit_edge"

"no stack overflow.end_crit_edge":              ; preds = %"no stack overflow"
  ret void

verifyNullCont:         ; preds = %"no stack overflow"
  br i1 undef, label %verifyNullCont9, label %verifyNullCont.end_crit_edge

verifyNullCont.end_crit_edge:           ; preds = %verifyNullCont
  ret void

verifyNullCont9:                ; preds = %verifyNullCont
  br i1 undef, label %verifyNullCont12, label %verifyNullCont9.end_crit_edge

verifyNullCont9.end_crit_edge:          ; preds = %verifyNullCont9
  ret void

verifyNullCont12:               ; preds = %verifyNullCont9
  br i1 undef, label %"no exception block13", label %verifyNullCont12.end_crit_edge

verifyNullCont12.end_crit_edge:         ; preds = %verifyNullCont12
  ret void

"no exception block13":         ; preds = %verifyNullCont12
  br i1 undef, label %verifyNullExit14, label %verifyNullCont15

verifyNullExit14:               ; preds = %"no exception block13"
  ret void

verifyNullCont15:               ; preds = %"no exception block13"
  br i1 undef, label %"no exception block16", label %verifyNullCont15.end_crit_edge

verifyNullCont15.end_crit_edge:         ; preds = %verifyNullCont15
  ret void

"no exception block16":         ; preds = %verifyNullCont15
  br i1 undef, label %verifyNullExit17, label %verifyNullCont18

verifyNullExit17:               ; preds = %"no exception block16"
  ret void

verifyNullCont18:               ; preds = %"no exception block16"
  br i1 undef, label %"no exception block19", label %verifyNullCont18.end_crit_edge

verifyNullCont18.end_crit_edge:         ; preds = %verifyNullCont18
  ret void

"no exception block19":         ; preds = %verifyNullCont18
  br i1 undef, label %verifyNullExit20, label %verifyNullCont21

verifyNullExit20:               ; preds = %"no exception block19"
  ret void

verifyNullCont21:               ; preds = %"no exception block19"
  br i1 undef, label %verifyNullCont24, label %verifyNullCont21.end_crit_edge

verifyNullCont21.end_crit_edge:         ; preds = %verifyNullCont21
  ret void

verifyNullCont24:               ; preds = %verifyNullCont21
  br i1 undef, label %verifyNullCont27, label %verifyNullCont24.end_crit_edge

verifyNullCont24.end_crit_edge:         ; preds = %verifyNullCont24
  ret void

verifyNullCont27:               ; preds = %verifyNullCont24
  br i1 undef, label %verifyNullCont32, label %verifyNullCont27.end_crit_edge

verifyNullCont27.end_crit_edge:         ; preds = %verifyNullCont27
  ret void

verifyNullCont32:               ; preds = %verifyNullCont27
  br i1 undef, label %verifyNullExit33, label %verifyNullCont34

verifyNullExit33:               ; preds = %verifyNullCont32
  ret void

verifyNullCont34:               ; preds = %verifyNullCont32
  br i1 undef, label %"no exception block35", label %verifyNullCont34.end_crit_edge

verifyNullCont34.end_crit_edge:         ; preds = %verifyNullCont34
  ret void

"no exception block35":         ; preds = %verifyNullCont34
  br i1 undef, label %end, label %verifyNullCont60

verifyNullCont60:               ; preds = %"no exception block35"
  br i1 undef, label %verifyNullCont63, label %verifyNullCont60.end_crit_edge

verifyNullCont60.end_crit_edge:         ; preds = %verifyNullCont60
  ret void

verifyNullCont63:               ; preds = %verifyNullCont60
  br i1 undef, label %"no exception block64", label %verifyNullCont63.end_crit_edge

verifyNullCont63.end_crit_edge:         ; preds = %verifyNullCont63
  ret void

"no exception block64":         ; preds = %verifyNullCont63
  br i1 undef, label %verifyNullExit65, label %verifyNullCont66

verifyNullExit65:               ; preds = %"no exception block64"
  ret void

verifyNullCont66:               ; preds = %"no exception block64"
  br i1 undef, label %"no exception block67", label %verifyNullCont66.end_crit_edge

verifyNullCont66.end_crit_edge:         ; preds = %verifyNullCont66
  ret void

"no exception block67":         ; preds = %verifyNullCont66
  br i1 undef, label %verifyNullExit68, label %verifyNullCont69

verifyNullExit68:               ; preds = %"no exception block67"
  ret void

verifyNullCont69:               ; preds = %"no exception block67"
  br i1 undef, label %"no exception block70", label %verifyNullCont69.end_crit_edge

verifyNullCont69.end_crit_edge:         ; preds = %verifyNullCont69
  ret void

"no exception block70":         ; preds = %verifyNullCont69
  br i1 undef, label %verifyNullExit71, label %verifyNullCont72

verifyNullExit71:               ; preds = %"no exception block70"
  ret void

verifyNullCont72:               ; preds = %"no exception block70"
  br i1 undef, label %verifyNullCont75, label %verifyNullCont72.end_crit_edge

verifyNullCont72.end_crit_edge:         ; preds = %verifyNullCont72
  ret void

verifyNullCont75:               ; preds = %verifyNullCont72
  br i1 undef, label %verifyNullCont78, label %verifyNullCont75.end_crit_edge

verifyNullCont75.end_crit_edge:         ; preds = %verifyNullCont75
  ret void

verifyNullCont78:               ; preds = %verifyNullCont75
  br i1 undef, label %"verifyNullCont78.GOTO or IF*4_crit_edge", label %verifyNullCont78.end_crit_edge

"verifyNullCont78.GOTO or IF*4_crit_edge":              ; preds = %verifyNullCont78
  br i1 undef, label %verifyNullExit80, label %verifyNullCont81

verifyNullCont78.end_crit_edge:         ; preds = %verifyNullCont78
  ret void

verifyNullExit80:               ; preds = %"verifyNullCont78.GOTO or IF*4_crit_edge"
  ret void

verifyNullCont81:               ; preds = %"verifyNullCont78.GOTO or IF*4_crit_edge"
  %4 = ptrtoint i8* undef to i32                ; <i32> [#uses=2]
  %5 = icmp slt i32 0, %4               ; <i1> [#uses=1]
  br i1 %5, label %verifyNullCont84, label %verifyNullCont172

verifyNullCont84:               ; preds = %verifyNullCont81
  br i1 undef, label %"GOTO or IF*2", label %verifyNullCont86

verifyNullCont86:               ; preds = %verifyNullCont84
  br i1 undef, label %"true verifyAndComputePtr", label %"false verifyAndComputePtr"

"true verifyAndComputePtr":             ; preds = %verifyNullCont86
  br i1 undef, label %"true verifyAndComputePtr89", label %"false verifyAndComputePtr90"

"false verifyAndComputePtr":            ; preds = %verifyNullCont86
  ret void

"true verifyAndComputePtr89":           ; preds = %"true verifyAndComputePtr"
  br i1 undef, label %"GOTO or IF*6", label %"GOTO or IF*2"

"false verifyAndComputePtr90":          ; preds = %"true verifyAndComputePtr"
  ret void

verifyNullCont126:              ; preds = %"GOTO or IF*6"
  br i1 undef, label %"true verifyAndComputePtr127", label %"false verifyAndComputePtr128"

"true verifyAndComputePtr127":          ; preds = %verifyNullCont126
  br i1 undef, label %"true verifyAndComputePtr131.GOTO or IF*6_crit_edge", label %"GOTO or IF*5"

"false verifyAndComputePtr128":         ; preds = %verifyNullCont126
  ret void

"true verifyAndComputePtr131.GOTO or IF*6_crit_edge":           ; preds = %"true verifyAndComputePtr127"
  %indvar.next = add i32 %indvar, 1             ; <i32> [#uses=1]
  br label %"GOTO or IF*6"

verifyNullCont172:              ; preds = %verifyNullCont81
  unreachable
}
OpenPOWER on IntegriCloud