Lines Matching full:volatile
4 volatile int i, j, k;
5 volatile int ar[5];
6 volatile char c;
8 volatile _Complex int ci;
9 volatile struct S {
11 void operator =(volatile struct S&o) volatile;
16 //void operator =(volatile struct S&o1, volatile struct S&o2) volatile;
29 // CHECK-NEXT: load volatile [[INT]]* getelementptr inbounds ([[CINT]]* @ci, i32 0, i32 0)
30 // CHECK-NEXT: load volatile [[INT]]* getelementptr inbounds ([[CINT]]* @ci, i32 0, i32 1)
40 // CHECK-NEXT: [[R:%.*]] = load volatile [[INT]]* getelementptr inbounds ([[CINT]]* @ci, i32 0, i32 0)
41 // CHECK-NEXT: [[I:%.*]] = load volatile [[INT]]* getelementptr inbounds ([[CINT]]* @ci, i32 0, i32 1)
42 // CHECK-NEXT: store volatile [[INT]] [[R]], [[INT]]* getelementptr inbounds ([[CINT]]* @ci, i32 0, i32 0)
43 // CHECK-NEXT: store volatile [[INT]] [[I]], [[INT]]* getelementptr inbounds ([[CINT]]* @ci, i32 0, i32 1)
46 // CHECK-NEXT: [[T:%.*]] = load volatile [[INT]]* @j
47 // CHECK-NEXT: store volatile [[INT]] [[T]], [[INT]]* @i
50 // CHECK-NEXT: [[R1:%.*]] = load volatile [[INT]]* getelementptr inbounds ([[CINT]]* @ci, i32 0, i32 0)
51 // CHECK-NEXT: [[I1:%.*]] = load volatile [[INT]]* getelementptr inbounds ([[CINT]]* @ci, i32 0, i32 1)
52 // CHECK-NEXT: [[R2:%.*]] = load volatile [[INT]]* getelementptr inbounds ([[CINT]]* @ci, i32 0, i32 0)
53 // CHECK-NEXT: [[I2:%.*]] = load volatile [[INT]]* getelementptr inbounds ([[CINT]]* @ci, i32 0, i32 1)
57 // CHECK-NEXT: store volatile [[INT]] [[R]], [[INT]]* getelementptr inbounds ([[CINT]]* @ci, i32 0, i32 0)
58 // CHECK-NEXT: store volatile [[INT]] [[I]], [[INT]]* getelementptr inbounds ([[CINT]]* @ci, i32 0, i32 1)
60 // Note that C++ requires an extra load volatile over C from the LHS of the '+'.
62 // CHECK-NEXT: [[R1:%.*]] = load volatile [[INT]]* getelementptr inbounds ([[CINT]]* @ci, i32 0, i32 0)
63 // CHECK-NEXT: [[I1:%.*]] = load volatile [[INT]]* getelementptr inbounds ([[CINT]]* @ci, i32 0, i32 1)
64 // CHECK-NEXT: [[R2:%.*]] = load volatile [[INT]]* getelementptr inbounds ([[CINT]]* @ci, i32 0, i32 0)
65 // CHECK-NEXT: [[I2:%.*]] = load volatile [[INT]]* getelementptr inbounds ([[CINT]]* @ci, i32 0, i32 1)
68 // CHECK-NEXT: store volatile [[INT]] [[R]], [[INT]]* getelementptr inbounds ([[CINT]]* @ci, i32 0, i32 0)
69 // CHECK-NEXT: store volatile [[INT]] [[I]], [[INT]]* getelementptr inbounds ([[CINT]]* @ci, i32 0, i32 1)
70 // CHECK-NEXT: [[R1:%.*]] = load volatile [[INT]]* getelementptr inbounds ([[CINT]]* @ci, i32 0, i32 0)
71 // CHECK-NEXT: [[I1:%.*]] = load volatile [[INT]]* getelementptr inbounds ([[CINT]]* @ci, i32 0, i32 1)
72 // CHECK-NEXT: [[R2:%.*]] = load volatile [[INT]]* getelementptr inbounds ([[CINT]]* @ci, i32 0, i32 0)
73 // CHECK-NEXT: [[I2:%.*]] = load volatile [[INT]]* getelementptr inbounds ([[CINT]]* @ci, i32 0, i32 1)
80 // Extra load volatile in C++.
82 // CHECK-NEXT: load volatile
83 // CHECK-NEXT: load volatile
85 // CHECK-NEXT: store volatile
86 // CHECK-NEXT: load volatile
87 // CHECK-NEXT: load volatile
92 // Extra load volatile in C++.
94 // CHECK-NEXT: load volatile
95 // CHECK-NEXT: load volatile
97 // CHECK-NEXT: store volatile
98 // CHECK-NEXT: load volatile
104 // CHECK-NEXT: load volatile
105 // CHECK-NEXT: load volatile
106 // CHECK-NEXT: load volatile
107 // CHECK-NEXT: load volatile
114 // CHECK-NEXT: load volatile
115 // CHECK-NEXT: load volatile
120 // CHECK-NEXT: load volatile
121 // CHECK-NEXT: store volatile
124 // CHECK-NEXT: load volatile
125 // CHECK-NEXT: store volatile
126 // CHECK-NEXT: load volatile
132 // CHECK-NEXT: load volatile
133 // CHECK-NEXT: store volatile
135 // Extra load volatile in C++.
137 // CHECK-NEXT: load volatile
138 // CHECK-NEXT: store volatile
139 // CHECK-NEXT: load volatile
140 // CHECK-NEXT: store volatile
143 // CHECK-NEXT: load volatile
144 // CHECK-NEXT: store volatile
147 // CHECK-NEXT: load volatile
150 // CHECK: load volatile
151 // CHECK-NEXT: store volatile
153 // CHECK: load volatile
154 // CHECK-NEXT: store volatile
159 // CHECK-NEXT: load volatile
160 // CHECK-NEXT: store volatile
163 // CHECK-NEXT: load volatile [[INT]]* @i
164 // CHECK-NEXT: store volatile {{.*}}, [[INT]]* @i
167 // CHECK-NEXT: load volatile [[INT]]* @j
168 // CHECK-NEXT: store volatile {{.*}}, [[INT]]* @i
169 // CHECK-NEXT: load volatile [[INT]]* @j
170 // CHECK-NEXT: store volatile {{.*}}, [[INT]]* @k
173 // CHECK-NEXT: load volatile [[INT]]* @j
174 // CHECK-NEXT: store volatile {{.*}}, [[INT]]* @i
180 // CHECK-NEXT: load volatile
182 // CHECK-NEXT: store volatile
183 // CHECK-NEXT: load volatile
185 // CHECK-NEXT: store volatile
188 // CHECK-NEXT: load volatile
189 // CHECK-NEXT: load volatile
191 // CHECK-NEXT: store volatile
198 // CHECK-NEXT: load volatile {{.*}} @ci, i32 0, i32 0
199 // CHECK-NEXT: load volatile {{.*}} @ci, i32 0, i32 1
202 // CHECK-NEXT: load volatile {{.*}} @ci, i32 0, i32 0
203 // CHECK-NEXT: load volatile {{.*}} @ci, i32 0, i32 1
209 // CHECK-NEXT: load volatile
210 // CHECK-NEXT: load volatile
211 // CHECK-NEXT: store volatile
212 // CHECK-NEXT: store volatile
218 // CHECK-NEXT: load volatile
219 // CHECK-NEXT: load volatile
220 // CHECK-NEXT: store volatile
221 // CHECK-NEXT: store volatile
222 // CHECK-NEXT: load volatile
223 // CHECK-NEXT: load volatile
224 // CHECK-NEXT: store volatile
225 // CHECK-NEXT: store volatile
228 // CHECK-NEXT: [[T:%.*]] = load volatile [[INT]]* getelementptr inbounds ([[CINT]]* @ci, i32 0, i32 1)
229 // CHECK-NEXT: store volatile [[INT]] [[T]], [[INT]]* getelementptr inbounds ([[CINT]]* @ci, i32 0, i32 1)
230 // CHECK-NEXT: [[T:%.*]] = load volatile [[INT]]* getelementptr inbounds ([[CINT]]* @ci, i32 0, i32 1)
231 // CHECK-NEXT: store volatile [[INT]] [[T]], [[INT]]* getelementptr inbounds ([[CINT]]* @ci, i32 0, i32 1)
234 // CHECK-NEXT: load volatile
235 // CHECK-NEXT: store volatile
261 // CHECK-NEXT: load volatile
262 // CHECK-NEXT: store volatile
266 // CHECK-NEXT: load volatile
267 // CHECK-NEXT: load volatile
268 // CHECK-NEXT: store volatile
269 // CHECK-NEXT: store volatile
270 // CHECK-NEXT: load volatile
271 // CHECK-NEXT: load volatile
275 // bug due to tree folding ignoring volatile.
277 // CHECK-NEXT: load volatile
278 // CHECK-NEXT: load volatile
279 // CHECK-NEXT: store volatile
280 // CHECK-NEXT: store volatile
281 // CHECK-NEXT: load volatile
282 // CHECK-NEXT: load volatile
286 // CHECK-NEXT: load volatile
287 // CHECK-NEXT: store volatile
288 // CHECK-NEXT: load volatile
292 // folding ignoring volatile.
294 // CHECK-NEXT: load volatile
295 // CHECK-NEXT: store volatile
296 // CHECK-NEXT: load volatile
300 // CHECK-NEXT: load volatile
301 // CHECK-NEXT: store volatile
302 // CHECK-NEXT: load volatile
306 // folding ignoring volatile.
308 // CHECK-NEXT: load volatile
309 // CHECK-NEXT: store volatile
310 // CHECK-NEXT: load volatile
313 // folding ignoring volatile.
315 // CHECK-NEXT: load volatile
316 // CHECK-NEXT: load volatile
317 // CHECK-NEXT: store volatile
318 // CHECK-NEXT: store volatile
322 // CHECK-NEXT: load volatile
327 // CHECK-NEXT: load volatile
328 // CHECK-NEXT: store volatile
329 // CHECK-NEXT: load volatile
330 // CHECK-NEXT: load volatile
334 // folding ignoring volatile.
336 // CHECK-NEXT: load volatile
337 // CHECK-NEXT: store volatile
338 // CHECK-NEXT: load volatile
342 // CHECK-NEXT: load volatile [[INT]]* @k
343 // CHECK-NEXT: store volatile {{.*}}, [[INT]]* @j
346 // CHECK-NEXT: load volatile [[INT]]* @i
347 // CHECK-NEXT: load volatile [[INT]]* @k
348 // CHECK-NEXT: store volatile {{.*}}, [[INT]]* @j
349 // CHECK-NEXT: store volatile {{.*}}, [[INT]]* @i