[NFC][RemoveDIs] Prefer iterators over inst-pointers in InstCombine
[llvm-project.git] / llvm / test / CodeGen / NVPTX / APIntLoadStore.ll
blobaaa4109c2102514a9df840150e2226cf6a8b87e2
1 ; RUN: llc -march=nvptx  < %s > %t
2 ; RUN: llc -march=nvptx64  < %s > %t
4 @i1_l = external global i1              ; <ptr> [#uses=1]
5 @i1_s = external global i1              ; <ptr> [#uses=1]
6 @i2_l = external global i2              ; <ptr> [#uses=1]
7 @i2_s = external global i2              ; <ptr> [#uses=1]
8 @i3_l = external global i3              ; <ptr> [#uses=1]
9 @i3_s = external global i3              ; <ptr> [#uses=1]
10 @i4_l = external global i4              ; <ptr> [#uses=1]
11 @i4_s = external global i4              ; <ptr> [#uses=1]
12 @i5_l = external global i5              ; <ptr> [#uses=1]
13 @i5_s = external global i5              ; <ptr> [#uses=1]
14 @i6_l = external global i6              ; <ptr> [#uses=1]
15 @i6_s = external global i6              ; <ptr> [#uses=1]
16 @i7_l = external global i7              ; <ptr> [#uses=1]
17 @i7_s = external global i7              ; <ptr> [#uses=1]
18 @i8_l = external global i8              ; <ptr> [#uses=1]
19 @i8_s = external global i8              ; <ptr> [#uses=1]
20 @i9_l = external global i9              ; <ptr> [#uses=1]
21 @i9_s = external global i9              ; <ptr> [#uses=1]
22 @i10_l = external global i10            ; <ptr> [#uses=1]
23 @i10_s = external global i10            ; <ptr> [#uses=1]
24 @i11_l = external global i11            ; <ptr> [#uses=1]
25 @i11_s = external global i11            ; <ptr> [#uses=1]
26 @i12_l = external global i12            ; <ptr> [#uses=1]
27 @i12_s = external global i12            ; <ptr> [#uses=1]
28 @i13_l = external global i13            ; <ptr> [#uses=1]
29 @i13_s = external global i13            ; <ptr> [#uses=1]
30 @i14_l = external global i14            ; <ptr> [#uses=1]
31 @i14_s = external global i14            ; <ptr> [#uses=1]
32 @i15_l = external global i15            ; <ptr> [#uses=1]
33 @i15_s = external global i15            ; <ptr> [#uses=1]
34 @i16_l = external global i16            ; <ptr> [#uses=1]
35 @i16_s = external global i16            ; <ptr> [#uses=1]
36 @i17_l = external global i17            ; <ptr> [#uses=1]
37 @i17_s = external global i17            ; <ptr> [#uses=1]
38 @i18_l = external global i18            ; <ptr> [#uses=1]
39 @i18_s = external global i18            ; <ptr> [#uses=1]
40 @i19_l = external global i19            ; <ptr> [#uses=1]
41 @i19_s = external global i19            ; <ptr> [#uses=1]
42 @i20_l = external global i20            ; <ptr> [#uses=1]
43 @i20_s = external global i20            ; <ptr> [#uses=1]
44 @i21_l = external global i21            ; <ptr> [#uses=1]
45 @i21_s = external global i21            ; <ptr> [#uses=1]
46 @i22_l = external global i22            ; <ptr> [#uses=1]
47 @i22_s = external global i22            ; <ptr> [#uses=1]
48 @i23_l = external global i23            ; <ptr> [#uses=1]
49 @i23_s = external global i23            ; <ptr> [#uses=1]
50 @i24_l = external global i24            ; <ptr> [#uses=1]
51 @i24_s = external global i24            ; <ptr> [#uses=1]
52 @i25_l = external global i25            ; <ptr> [#uses=1]
53 @i25_s = external global i25            ; <ptr> [#uses=1]
54 @i26_l = external global i26            ; <ptr> [#uses=1]
55 @i26_s = external global i26            ; <ptr> [#uses=1]
56 @i27_l = external global i27            ; <ptr> [#uses=1]
57 @i27_s = external global i27            ; <ptr> [#uses=1]
58 @i28_l = external global i28            ; <ptr> [#uses=1]
59 @i28_s = external global i28            ; <ptr> [#uses=1]
60 @i29_l = external global i29            ; <ptr> [#uses=1]
61 @i29_s = external global i29            ; <ptr> [#uses=1]
62 @i30_l = external global i30            ; <ptr> [#uses=1]
63 @i30_s = external global i30            ; <ptr> [#uses=1]
64 @i31_l = external global i31            ; <ptr> [#uses=1]
65 @i31_s = external global i31            ; <ptr> [#uses=1]
66 @i32_l = external global i32            ; <ptr> [#uses=1]
67 @i32_s = external global i32            ; <ptr> [#uses=1]
68 @i33_l = external global i33            ; <ptr> [#uses=1]
69 @i33_s = external global i33            ; <ptr> [#uses=1]
70 @i34_l = external global i34            ; <ptr> [#uses=1]
71 @i34_s = external global i34            ; <ptr> [#uses=1]
72 @i35_l = external global i35            ; <ptr> [#uses=1]
73 @i35_s = external global i35            ; <ptr> [#uses=1]
74 @i36_l = external global i36            ; <ptr> [#uses=1]
75 @i36_s = external global i36            ; <ptr> [#uses=1]
76 @i37_l = external global i37            ; <ptr> [#uses=1]
77 @i37_s = external global i37            ; <ptr> [#uses=1]
78 @i38_l = external global i38            ; <ptr> [#uses=1]
79 @i38_s = external global i38            ; <ptr> [#uses=1]
80 @i39_l = external global i39            ; <ptr> [#uses=1]
81 @i39_s = external global i39            ; <ptr> [#uses=1]
82 @i40_l = external global i40            ; <ptr> [#uses=1]
83 @i40_s = external global i40            ; <ptr> [#uses=1]
84 @i41_l = external global i41            ; <ptr> [#uses=1]
85 @i41_s = external global i41            ; <ptr> [#uses=1]
86 @i42_l = external global i42            ; <ptr> [#uses=1]
87 @i42_s = external global i42            ; <ptr> [#uses=1]
88 @i43_l = external global i43            ; <ptr> [#uses=1]
89 @i43_s = external global i43            ; <ptr> [#uses=1]
90 @i44_l = external global i44            ; <ptr> [#uses=1]
91 @i44_s = external global i44            ; <ptr> [#uses=1]
92 @i45_l = external global i45            ; <ptr> [#uses=1]
93 @i45_s = external global i45            ; <ptr> [#uses=1]
94 @i46_l = external global i46            ; <ptr> [#uses=1]
95 @i46_s = external global i46            ; <ptr> [#uses=1]
96 @i47_l = external global i47            ; <ptr> [#uses=1]
97 @i47_s = external global i47            ; <ptr> [#uses=1]
98 @i48_l = external global i48            ; <ptr> [#uses=1]
99 @i48_s = external global i48            ; <ptr> [#uses=1]
100 @i49_l = external global i49            ; <ptr> [#uses=1]
101 @i49_s = external global i49            ; <ptr> [#uses=1]
102 @i50_l = external global i50            ; <ptr> [#uses=1]
103 @i50_s = external global i50            ; <ptr> [#uses=1]
104 @i51_l = external global i51            ; <ptr> [#uses=1]
105 @i51_s = external global i51            ; <ptr> [#uses=1]
106 @i52_l = external global i52            ; <ptr> [#uses=1]
107 @i52_s = external global i52            ; <ptr> [#uses=1]
108 @i53_l = external global i53            ; <ptr> [#uses=1]
109 @i53_s = external global i53            ; <ptr> [#uses=1]
110 @i54_l = external global i54            ; <ptr> [#uses=1]
111 @i54_s = external global i54            ; <ptr> [#uses=1]
112 @i55_l = external global i55            ; <ptr> [#uses=1]
113 @i55_s = external global i55            ; <ptr> [#uses=1]
114 @i56_l = external global i56            ; <ptr> [#uses=1]
115 @i56_s = external global i56            ; <ptr> [#uses=1]
116 @i57_l = external global i57            ; <ptr> [#uses=1]
117 @i57_s = external global i57            ; <ptr> [#uses=1]
118 @i58_l = external global i58            ; <ptr> [#uses=1]
119 @i58_s = external global i58            ; <ptr> [#uses=1]
120 @i59_l = external global i59            ; <ptr> [#uses=1]
121 @i59_s = external global i59            ; <ptr> [#uses=1]
122 @i60_l = external global i60            ; <ptr> [#uses=1]
123 @i60_s = external global i60            ; <ptr> [#uses=1]
124 @i61_l = external global i61            ; <ptr> [#uses=1]
125 @i61_s = external global i61            ; <ptr> [#uses=1]
126 @i62_l = external global i62            ; <ptr> [#uses=1]
127 @i62_s = external global i62            ; <ptr> [#uses=1]
128 @i63_l = external global i63            ; <ptr> [#uses=1]
129 @i63_s = external global i63            ; <ptr> [#uses=1]
130 @i64_l = external global i64            ; <ptr> [#uses=1]
131 @i64_s = external global i64            ; <ptr> [#uses=1]
133 define void @i1_ls() nounwind  {
134         %tmp = load i1, ptr @i1_l               ; <i1> [#uses=1]
135         store i1 %tmp, ptr @i1_s
136         ret void
139 define void @i2_ls() nounwind  {
140         %tmp = load i2, ptr @i2_l               ; <i2> [#uses=1]
141         store i2 %tmp, ptr @i2_s
142         ret void
145 define void @i3_ls() nounwind  {
146         %tmp = load i3, ptr @i3_l               ; <i3> [#uses=1]
147         store i3 %tmp, ptr @i3_s
148         ret void
151 define void @i4_ls() nounwind  {
152         %tmp = load i4, ptr @i4_l               ; <i4> [#uses=1]
153         store i4 %tmp, ptr @i4_s
154         ret void
157 define void @i5_ls() nounwind  {
158         %tmp = load i5, ptr @i5_l               ; <i5> [#uses=1]
159         store i5 %tmp, ptr @i5_s
160         ret void
163 define void @i6_ls() nounwind  {
164         %tmp = load i6, ptr @i6_l               ; <i6> [#uses=1]
165         store i6 %tmp, ptr @i6_s
166         ret void
169 define void @i7_ls() nounwind  {
170         %tmp = load i7, ptr @i7_l               ; <i7> [#uses=1]
171         store i7 %tmp, ptr @i7_s
172         ret void
175 define void @i8_ls() nounwind  {
176         %tmp = load i8, ptr @i8_l               ; <i8> [#uses=1]
177         store i8 %tmp, ptr @i8_s
178         ret void
181 define void @i9_ls() nounwind  {
182         %tmp = load i9, ptr @i9_l               ; <i9> [#uses=1]
183         store i9 %tmp, ptr @i9_s
184         ret void
187 define void @i10_ls() nounwind  {
188         %tmp = load i10, ptr @i10_l             ; <i10> [#uses=1]
189         store i10 %tmp, ptr @i10_s
190         ret void
193 define void @i11_ls() nounwind  {
194         %tmp = load i11, ptr @i11_l             ; <i11> [#uses=1]
195         store i11 %tmp, ptr @i11_s
196         ret void
199 define void @i12_ls() nounwind  {
200         %tmp = load i12, ptr @i12_l             ; <i12> [#uses=1]
201         store i12 %tmp, ptr @i12_s
202         ret void
205 define void @i13_ls() nounwind  {
206         %tmp = load i13, ptr @i13_l             ; <i13> [#uses=1]
207         store i13 %tmp, ptr @i13_s
208         ret void
211 define void @i14_ls() nounwind  {
212         %tmp = load i14, ptr @i14_l             ; <i14> [#uses=1]
213         store i14 %tmp, ptr @i14_s
214         ret void
217 define void @i15_ls() nounwind  {
218         %tmp = load i15, ptr @i15_l             ; <i15> [#uses=1]
219         store i15 %tmp, ptr @i15_s
220         ret void
223 define void @i16_ls() nounwind  {
224         %tmp = load i16, ptr @i16_l             ; <i16> [#uses=1]
225         store i16 %tmp, ptr @i16_s
226         ret void
229 define void @i17_ls() nounwind  {
230         %tmp = load i17, ptr @i17_l             ; <i17> [#uses=1]
231         store i17 %tmp, ptr @i17_s
232         ret void
235 define void @i18_ls() nounwind  {
236         %tmp = load i18, ptr @i18_l             ; <i18> [#uses=1]
237         store i18 %tmp, ptr @i18_s
238         ret void
241 define void @i19_ls() nounwind  {
242         %tmp = load i19, ptr @i19_l             ; <i19> [#uses=1]
243         store i19 %tmp, ptr @i19_s
244         ret void
247 define void @i20_ls() nounwind  {
248         %tmp = load i20, ptr @i20_l             ; <i20> [#uses=1]
249         store i20 %tmp, ptr @i20_s
250         ret void
253 define void @i21_ls() nounwind  {
254         %tmp = load i21, ptr @i21_l             ; <i21> [#uses=1]
255         store i21 %tmp, ptr @i21_s
256         ret void
259 define void @i22_ls() nounwind  {
260         %tmp = load i22, ptr @i22_l             ; <i22> [#uses=1]
261         store i22 %tmp, ptr @i22_s
262         ret void
265 define void @i23_ls() nounwind  {
266         %tmp = load i23, ptr @i23_l             ; <i23> [#uses=1]
267         store i23 %tmp, ptr @i23_s
268         ret void
271 define void @i24_ls() nounwind  {
272         %tmp = load i24, ptr @i24_l             ; <i24> [#uses=1]
273         store i24 %tmp, ptr @i24_s
274         ret void
277 define void @i25_ls() nounwind  {
278         %tmp = load i25, ptr @i25_l             ; <i25> [#uses=1]
279         store i25 %tmp, ptr @i25_s
280         ret void
283 define void @i26_ls() nounwind  {
284         %tmp = load i26, ptr @i26_l             ; <i26> [#uses=1]
285         store i26 %tmp, ptr @i26_s
286         ret void
289 define void @i27_ls() nounwind  {
290         %tmp = load i27, ptr @i27_l             ; <i27> [#uses=1]
291         store i27 %tmp, ptr @i27_s
292         ret void
295 define void @i28_ls() nounwind  {
296         %tmp = load i28, ptr @i28_l             ; <i28> [#uses=1]
297         store i28 %tmp, ptr @i28_s
298         ret void
301 define void @i29_ls() nounwind  {
302         %tmp = load i29, ptr @i29_l             ; <i29> [#uses=1]
303         store i29 %tmp, ptr @i29_s
304         ret void
307 define void @i30_ls() nounwind  {
308         %tmp = load i30, ptr @i30_l             ; <i30> [#uses=1]
309         store i30 %tmp, ptr @i30_s
310         ret void
313 define void @i31_ls() nounwind  {
314         %tmp = load i31, ptr @i31_l             ; <i31> [#uses=1]
315         store i31 %tmp, ptr @i31_s
316         ret void
319 define void @i32_ls() nounwind  {
320         %tmp = load i32, ptr @i32_l             ; <i32> [#uses=1]
321         store i32 %tmp, ptr @i32_s
322         ret void
325 define void @i33_ls() nounwind  {
326         %tmp = load i33, ptr @i33_l             ; <i33> [#uses=1]
327         store i33 %tmp, ptr @i33_s
328         ret void
331 define void @i34_ls() nounwind  {
332         %tmp = load i34, ptr @i34_l             ; <i34> [#uses=1]
333         store i34 %tmp, ptr @i34_s
334         ret void
337 define void @i35_ls() nounwind  {
338         %tmp = load i35, ptr @i35_l             ; <i35> [#uses=1]
339         store i35 %tmp, ptr @i35_s
340         ret void
343 define void @i36_ls() nounwind  {
344         %tmp = load i36, ptr @i36_l             ; <i36> [#uses=1]
345         store i36 %tmp, ptr @i36_s
346         ret void
349 define void @i37_ls() nounwind  {
350         %tmp = load i37, ptr @i37_l             ; <i37> [#uses=1]
351         store i37 %tmp, ptr @i37_s
352         ret void
355 define void @i38_ls() nounwind  {
356         %tmp = load i38, ptr @i38_l             ; <i38> [#uses=1]
357         store i38 %tmp, ptr @i38_s
358         ret void
361 define void @i39_ls() nounwind  {
362         %tmp = load i39, ptr @i39_l             ; <i39> [#uses=1]
363         store i39 %tmp, ptr @i39_s
364         ret void
367 define void @i40_ls() nounwind  {
368         %tmp = load i40, ptr @i40_l             ; <i40> [#uses=1]
369         store i40 %tmp, ptr @i40_s
370         ret void
373 define void @i41_ls() nounwind  {
374         %tmp = load i41, ptr @i41_l             ; <i41> [#uses=1]
375         store i41 %tmp, ptr @i41_s
376         ret void
379 define void @i42_ls() nounwind  {
380         %tmp = load i42, ptr @i42_l             ; <i42> [#uses=1]
381         store i42 %tmp, ptr @i42_s
382         ret void
385 define void @i43_ls() nounwind  {
386         %tmp = load i43, ptr @i43_l             ; <i43> [#uses=1]
387         store i43 %tmp, ptr @i43_s
388         ret void
391 define void @i44_ls() nounwind  {
392         %tmp = load i44, ptr @i44_l             ; <i44> [#uses=1]
393         store i44 %tmp, ptr @i44_s
394         ret void
397 define void @i45_ls() nounwind  {
398         %tmp = load i45, ptr @i45_l             ; <i45> [#uses=1]
399         store i45 %tmp, ptr @i45_s
400         ret void
403 define void @i46_ls() nounwind  {
404         %tmp = load i46, ptr @i46_l             ; <i46> [#uses=1]
405         store i46 %tmp, ptr @i46_s
406         ret void
409 define void @i47_ls() nounwind  {
410         %tmp = load i47, ptr @i47_l             ; <i47> [#uses=1]
411         store i47 %tmp, ptr @i47_s
412         ret void
415 define void @i48_ls() nounwind  {
416         %tmp = load i48, ptr @i48_l             ; <i48> [#uses=1]
417         store i48 %tmp, ptr @i48_s
418         ret void
421 define void @i49_ls() nounwind  {
422         %tmp = load i49, ptr @i49_l             ; <i49> [#uses=1]
423         store i49 %tmp, ptr @i49_s
424         ret void
427 define void @i50_ls() nounwind  {
428         %tmp = load i50, ptr @i50_l             ; <i50> [#uses=1]
429         store i50 %tmp, ptr @i50_s
430         ret void
433 define void @i51_ls() nounwind  {
434         %tmp = load i51, ptr @i51_l             ; <i51> [#uses=1]
435         store i51 %tmp, ptr @i51_s
436         ret void
439 define void @i52_ls() nounwind  {
440         %tmp = load i52, ptr @i52_l             ; <i52> [#uses=1]
441         store i52 %tmp, ptr @i52_s
442         ret void
445 define void @i53_ls() nounwind  {
446         %tmp = load i53, ptr @i53_l             ; <i53> [#uses=1]
447         store i53 %tmp, ptr @i53_s
448         ret void
451 define void @i54_ls() nounwind  {
452         %tmp = load i54, ptr @i54_l             ; <i54> [#uses=1]
453         store i54 %tmp, ptr @i54_s
454         ret void
457 define void @i55_ls() nounwind  {
458         %tmp = load i55, ptr @i55_l             ; <i55> [#uses=1]
459         store i55 %tmp, ptr @i55_s
460         ret void
463 define void @i56_ls() nounwind  {
464         %tmp = load i56, ptr @i56_l             ; <i56> [#uses=1]
465         store i56 %tmp, ptr @i56_s
466         ret void
469 define void @i57_ls() nounwind  {
470         %tmp = load i57, ptr @i57_l             ; <i57> [#uses=1]
471         store i57 %tmp, ptr @i57_s
472         ret void
475 define void @i58_ls() nounwind  {
476         %tmp = load i58, ptr @i58_l             ; <i58> [#uses=1]
477         store i58 %tmp, ptr @i58_s
478         ret void
481 define void @i59_ls() nounwind  {
482         %tmp = load i59, ptr @i59_l             ; <i59> [#uses=1]
483         store i59 %tmp, ptr @i59_s
484         ret void
487 define void @i60_ls() nounwind  {
488         %tmp = load i60, ptr @i60_l             ; <i60> [#uses=1]
489         store i60 %tmp, ptr @i60_s
490         ret void
493 define void @i61_ls() nounwind  {
494         %tmp = load i61, ptr @i61_l             ; <i61> [#uses=1]
495         store i61 %tmp, ptr @i61_s
496         ret void
499 define void @i62_ls() nounwind  {
500         %tmp = load i62, ptr @i62_l             ; <i62> [#uses=1]
501         store i62 %tmp, ptr @i62_s
502         ret void
505 define void @i63_ls() nounwind  {
506         %tmp = load i63, ptr @i63_l             ; <i63> [#uses=1]
507         store i63 %tmp, ptr @i63_s
508         ret void
511 define void @i64_ls() nounwind  {
512         %tmp = load i64, ptr @i64_l             ; <i64> [#uses=1]
513         store i64 %tmp, ptr @i64_s
514         ret void