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
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
|
; RUN: llc -mtriple=amdgcn -mcpu=gfx1100 < %s | FileCheck --check-prefix=GCN %s
; GCN-LABEL: {{^}}load_fma_store
; GCN-NOT: scratch_store
; ScratchSize: 0{{$}}
define amdgpu_kernel void @load_fma_store(ptr addrspace(3) nocapture readonly %arg, ptr addrspace(1) nocapture %arg1, i1 %cc) {
bb:
%vgpr0 = call <32 x i32> asm sideeffect "; def $0","=${v[0:31]}"()
%vgpr1 = call <32 x i32> asm sideeffect "; def $0","=${v[32:63]}"()
%vgpr2 = call <32 x i32> asm sideeffect "; def $0","=${v[64:95]}"()
%vgpr3 = call <32 x i32> asm sideeffect "; def $0","=${v[96:127]}"()
br i1 %cc, label %bb1, label %bb2
bb1:
%tmp = getelementptr inbounds float, ptr addrspace(3) %arg, i32 1
%tmp2 = load float, ptr addrspace(3) %tmp, align 4
%tmp3 = getelementptr inbounds float, ptr addrspace(3) %arg, i32 2
%tmp4 = load float, ptr addrspace(3) %tmp3, align 4
%tmp5 = getelementptr inbounds float, ptr addrspace(3) %arg, i32 3
%tmp6 = load float, ptr addrspace(3) %tmp5, align 4
%tmp7 = tail call float @llvm.fmuladd.f32(float %tmp2, float %tmp4, float %tmp6)
%tmp8 = getelementptr inbounds float, ptr addrspace(3) %arg, i32 5
%tmp9 = load float, ptr addrspace(3) %tmp8, align 4
%tmp10 = getelementptr inbounds float, ptr addrspace(3) %arg, i32 6
%tmp11 = load float, ptr addrspace(3) %tmp10, align 4
%tmp12 = getelementptr inbounds float, ptr addrspace(3) %arg, i32 7
%tmp13 = load float, ptr addrspace(3) %tmp12, align 4
%tmp14 = tail call float @llvm.fmuladd.f32(float %tmp9, float %tmp11, float %tmp13)
%tmp15 = getelementptr inbounds float, ptr addrspace(3) %arg, i32 9
%tmp16 = load float, ptr addrspace(3) %tmp15, align 4
%tmp17 = getelementptr inbounds float, ptr addrspace(3) %arg, i32 10
%tmp18 = load float, ptr addrspace(3) %tmp17, align 4
%tmp19 = getelementptr inbounds float, ptr addrspace(3) %arg, i32 11
%tmp20 = load float, ptr addrspace(3) %tmp19, align 4
%tmp21 = tail call float @llvm.fmuladd.f32(float %tmp16, float %tmp18, float %tmp20)
%tmp22 = getelementptr inbounds float, ptr addrspace(3) %arg, i32 13
%tmp23 = load float, ptr addrspace(3) %tmp22, align 4
%tmp24 = getelementptr inbounds float, ptr addrspace(3) %arg, i32 14
%tmp25 = load float, ptr addrspace(3) %tmp24, align 4
%tmp26 = getelementptr inbounds float, ptr addrspace(3) %arg, i32 15
%tmp27 = load float, ptr addrspace(3) %tmp26, align 4
%tmp28 = tail call float @llvm.fmuladd.f32(float %tmp23, float %tmp25, float %tmp27)
%tmp29 = getelementptr inbounds float, ptr addrspace(3) %arg, i32 17
%tmp30 = load float, ptr addrspace(3) %tmp29, align 4
%tmp31 = getelementptr inbounds float, ptr addrspace(3) %arg, i32 18
%tmp32 = load float, ptr addrspace(3) %tmp31, align 4
%tmp33 = getelementptr inbounds float, ptr addrspace(3) %arg, i32 19
%tmp34 = load float, ptr addrspace(3) %tmp33, align 4
%tmp35 = tail call float @llvm.fmuladd.f32(float %tmp30, float %tmp32, float %tmp34)
%tmp36 = getelementptr inbounds float, ptr addrspace(3) %arg, i32 21
%tmp37 = load float, ptr addrspace(3) %tmp36, align 4
%tmp38 = getelementptr inbounds float, ptr addrspace(3) %arg, i32 22
%tmp39 = load float, ptr addrspace(3) %tmp38, align 4
%tmp40 = getelementptr inbounds float, ptr addrspace(3) %arg, i32 23
%tmp41 = load float, ptr addrspace(3) %tmp40, align 4
%tmp42 = tail call float @llvm.fmuladd.f32(float %tmp37, float %tmp39, float %tmp41)
%tmp43 = getelementptr inbounds float, ptr addrspace(3) %arg, i32 25
%tmp44 = load float, ptr addrspace(3) %tmp43, align 4
%tmp45 = getelementptr inbounds float, ptr addrspace(3) %arg, i32 26
%tmp46 = load float, ptr addrspace(3) %tmp45, align 4
%tmp47 = getelementptr inbounds float, ptr addrspace(3) %arg, i32 27
%tmp48 = load float, ptr addrspace(3) %tmp47, align 4
%tmp49 = tail call float @llvm.fmuladd.f32(float %tmp44, float %tmp46, float %tmp48)
%tmp50 = getelementptr inbounds float, ptr addrspace(3) %arg, i32 29
%tmp51 = load float, ptr addrspace(3) %tmp50, align 4
%tmp52 = getelementptr inbounds float, ptr addrspace(3) %arg, i32 30
%tmp53 = load float, ptr addrspace(3) %tmp52, align 4
%tmp54 = getelementptr inbounds float, ptr addrspace(3) %arg, i32 31
%tmp55 = load float, ptr addrspace(3) %tmp54, align 4
%tmp56 = tail call float @llvm.fmuladd.f32(float %tmp51, float %tmp53, float %tmp55)
%tmp57 = getelementptr inbounds float, ptr addrspace(3) %arg, i32 33
%tmp58 = load float, ptr addrspace(3) %tmp57, align 4
%tmp59 = getelementptr inbounds float, ptr addrspace(3) %arg, i32 34
%tmp60 = load float, ptr addrspace(3) %tmp59, align 4
%tmp61 = getelementptr inbounds float, ptr addrspace(3) %arg, i32 35
%tmp62 = load float, ptr addrspace(3) %tmp61, align 4
%tmp63 = tail call float @llvm.fmuladd.f32(float %tmp58, float %tmp60, float %tmp62)
%tmp64 = getelementptr inbounds float, ptr addrspace(3) %arg, i32 37
%tmp65 = load float, ptr addrspace(3) %tmp64, align 4
%tmp66 = getelementptr inbounds float, ptr addrspace(3) %arg, i32 38
%tmp67 = load float, ptr addrspace(3) %tmp66, align 4
%tmp68 = getelementptr inbounds float, ptr addrspace(3) %arg, i32 39
%tmp69 = load float, ptr addrspace(3) %tmp68, align 4
%tmp70 = tail call float @llvm.fmuladd.f32(float %tmp65, float %tmp67, float %tmp69)
%tmp71 = getelementptr inbounds float, ptr addrspace(3) %arg, i32 41
%tmp72 = load float, ptr addrspace(3) %tmp71, align 4
%tmp73 = getelementptr inbounds float, ptr addrspace(3) %arg, i32 42
%tmp74 = load float, ptr addrspace(3) %tmp73, align 4
%tmp75 = getelementptr inbounds float, ptr addrspace(3) %arg, i32 43
%tmp76 = load float, ptr addrspace(3) %tmp75, align 4
%tmp77 = tail call float @llvm.fmuladd.f32(float %tmp72, float %tmp74, float %tmp76)
%tmp78 = getelementptr inbounds float, ptr addrspace(3) %arg, i32 45
%tmp79 = load float, ptr addrspace(3) %tmp78, align 4
%tmp80 = getelementptr inbounds float, ptr addrspace(3) %arg, i32 46
%tmp81 = load float, ptr addrspace(3) %tmp80, align 4
%tmp82 = getelementptr inbounds float, ptr addrspace(3) %arg, i32 47
%tmp83 = load float, ptr addrspace(3) %tmp82, align 4
%tmp84 = tail call float @llvm.fmuladd.f32(float %tmp79, float %tmp81, float %tmp83)
%tmp85 = getelementptr inbounds float, ptr addrspace(3) %arg, i32 49
%tmp86 = load float, ptr addrspace(3) %tmp85, align 4
%tmp87 = getelementptr inbounds float, ptr addrspace(3) %arg, i32 50
%tmp88 = load float, ptr addrspace(3) %tmp87, align 4
%tmp89 = getelementptr inbounds float, ptr addrspace(3) %arg, i32 51
%tmp90 = load float, ptr addrspace(3) %tmp89, align 4
%tmp91 = tail call float @llvm.fmuladd.f32(float %tmp86, float %tmp88, float %tmp90)
%tmp92 = getelementptr inbounds float, ptr addrspace(3) %arg, i32 53
%tmp93 = load float, ptr addrspace(3) %tmp92, align 4
%tmp94 = getelementptr inbounds float, ptr addrspace(3) %arg, i32 54
%tmp95 = load float, ptr addrspace(3) %tmp94, align 4
%tmp96 = getelementptr inbounds float, ptr addrspace(3) %arg, i32 55
%tmp97 = load float, ptr addrspace(3) %tmp96, align 4
%tmp98 = tail call float @llvm.fmuladd.f32(float %tmp93, float %tmp95, float %tmp97)
%tmp99 = getelementptr inbounds float, ptr addrspace(3) %arg, i32 57
%tmp100 = load float, ptr addrspace(3) %tmp99, align 4
%tmp101 = getelementptr inbounds float, ptr addrspace(3) %arg, i32 58
%tmp102 = load float, ptr addrspace(3) %tmp101, align 4
%tmp103 = getelementptr inbounds float, ptr addrspace(3) %arg, i32 59
%tmp104 = load float, ptr addrspace(3) %tmp103, align 4
%tmp105 = tail call float @llvm.fmuladd.f32(float %tmp100, float %tmp102, float %tmp104)
%tmp106 = getelementptr inbounds float, ptr addrspace(3) %arg, i32 61
%tmp107 = load float, ptr addrspace(3) %tmp106, align 4
%tmp108 = getelementptr inbounds float, ptr addrspace(3) %arg, i32 62
%tmp109 = load float, ptr addrspace(3) %tmp108, align 4
%tmp110 = getelementptr inbounds float, ptr addrspace(3) %arg, i32 63
%tmp111 = load float, ptr addrspace(3) %tmp110, align 4
%tmp112 = tail call float @llvm.fmuladd.f32(float %tmp107, float %tmp109, float %tmp111)
%tmp113 = getelementptr inbounds float, ptr addrspace(3) %arg, i32 65
%tmp114 = load float, ptr addrspace(3) %tmp113, align 4
%tmp115 = getelementptr inbounds float, ptr addrspace(3) %arg, i32 66
%tmp116 = load float, ptr addrspace(3) %tmp115, align 4
%tmp117 = getelementptr inbounds float, ptr addrspace(3) %arg, i32 67
%tmp118 = load float, ptr addrspace(3) %tmp117, align 4
%tmp119 = tail call float @llvm.fmuladd.f32(float %tmp114, float %tmp116, float %tmp118)
%tmp120 = getelementptr inbounds float, ptr addrspace(3) %arg, i32 69
%tmp121 = load float, ptr addrspace(3) %tmp120, align 4
%tmp122 = getelementptr inbounds float, ptr addrspace(3) %arg, i32 70
%tmp123 = load float, ptr addrspace(3) %tmp122, align 4
%tmp124 = getelementptr inbounds float, ptr addrspace(3) %arg, i32 71
%tmp125 = load float, ptr addrspace(3) %tmp124, align 4
%tmp126 = tail call float @llvm.fmuladd.f32(float %tmp121, float %tmp123, float %tmp125)
%tmp127 = getelementptr inbounds float, ptr addrspace(3) %arg, i32 73
%tmp128 = load float, ptr addrspace(3) %tmp127, align 4
%tmp129 = getelementptr inbounds float, ptr addrspace(3) %arg, i32 74
%tmp130 = load float, ptr addrspace(3) %tmp129, align 4
%tmp131 = getelementptr inbounds float, ptr addrspace(3) %arg, i32 75
%tmp132 = load float, ptr addrspace(3) %tmp131, align 4
%tmp133 = tail call float @llvm.fmuladd.f32(float %tmp128, float %tmp130, float %tmp132)
%tmp134 = getelementptr inbounds float, ptr addrspace(3) %arg, i32 77
%tmp135 = load float, ptr addrspace(3) %tmp134, align 4
%tmp136 = getelementptr inbounds float, ptr addrspace(3) %arg, i32 78
%tmp137 = load float, ptr addrspace(3) %tmp136, align 4
%tmp138 = getelementptr inbounds float, ptr addrspace(3) %arg, i32 79
%tmp139 = load float, ptr addrspace(3) %tmp138, align 4
%tmp140 = tail call float @llvm.fmuladd.f32(float %tmp135, float %tmp137, float %tmp139)
%tmp141 = getelementptr inbounds float, ptr addrspace(3) %arg, i32 81
%tmp142 = load float, ptr addrspace(3) %tmp141, align 4
%tmp143 = getelementptr inbounds float, ptr addrspace(3) %arg, i32 82
%tmp144 = load float, ptr addrspace(3) %tmp143, align 4
%tmp145 = getelementptr inbounds float, ptr addrspace(3) %arg, i32 83
%tmp146 = load float, ptr addrspace(3) %tmp145, align 4
%tmp147 = tail call float @llvm.fmuladd.f32(float %tmp142, float %tmp144, float %tmp146)
%tmp148 = getelementptr inbounds float, ptr addrspace(3) %arg, i32 85
%tmp149 = load float, ptr addrspace(3) %tmp148, align 4
%tmp150 = getelementptr inbounds float, ptr addrspace(3) %arg, i32 86
%tmp151 = load float, ptr addrspace(3) %tmp150, align 4
%tmp152 = getelementptr inbounds float, ptr addrspace(3) %arg, i32 87
%tmp153 = load float, ptr addrspace(3) %tmp152, align 4
%tmp154 = tail call float @llvm.fmuladd.f32(float %tmp149, float %tmp151, float %tmp153)
%tmp155 = getelementptr inbounds float, ptr addrspace(3) %arg, i32 89
%tmp156 = load float, ptr addrspace(3) %tmp155, align 4
%tmp157 = getelementptr inbounds float, ptr addrspace(3) %arg, i32 90
%tmp158 = load float, ptr addrspace(3) %tmp157, align 4
%tmp159 = getelementptr inbounds float, ptr addrspace(3) %arg, i32 91
%tmp160 = load float, ptr addrspace(3) %tmp159, align 4
%tmp161 = tail call float @llvm.fmuladd.f32(float %tmp156, float %tmp158, float %tmp160)
%tmp162 = getelementptr inbounds float, ptr addrspace(3) %arg, i32 93
%tmp163 = load float, ptr addrspace(3) %tmp162, align 4
%tmp164 = getelementptr inbounds float, ptr addrspace(3) %arg, i32 94
%tmp165 = load float, ptr addrspace(3) %tmp164, align 4
%tmp166 = getelementptr inbounds float, ptr addrspace(3) %arg, i32 95
%tmp167 = load float, ptr addrspace(3) %tmp166, align 4
%tmp168 = tail call float @llvm.fmuladd.f32(float %tmp163, float %tmp165, float %tmp167)
%tmp169 = getelementptr inbounds float, ptr addrspace(3) %arg, i32 97
%tmp170 = load float, ptr addrspace(3) %tmp169, align 4
%tmp171 = getelementptr inbounds float, ptr addrspace(3) %arg, i32 98
%tmp172 = load float, ptr addrspace(3) %tmp171, align 4
%tmp173 = getelementptr inbounds float, ptr addrspace(3) %arg, i32 99
%tmp174 = load float, ptr addrspace(3) %tmp173, align 4
%tmp175 = tail call float @llvm.fmuladd.f32(float %tmp170, float %tmp172, float %tmp174)
%tmp176 = getelementptr inbounds float, ptr addrspace(3) %arg, i32 101
%tmp177 = load float, ptr addrspace(3) %tmp176, align 4
%tmp178 = getelementptr inbounds float, ptr addrspace(3) %arg, i32 102
%tmp179 = load float, ptr addrspace(3) %tmp178, align 4
%tmp180 = getelementptr inbounds float, ptr addrspace(3) %arg, i32 103
%tmp181 = load float, ptr addrspace(3) %tmp180, align 4
%tmp182 = tail call float @llvm.fmuladd.f32(float %tmp177, float %tmp179, float %tmp181)
%tmp183 = getelementptr inbounds float, ptr addrspace(3) %arg, i32 105
%tmp184 = load float, ptr addrspace(3) %tmp183, align 4
%tmp185 = getelementptr inbounds float, ptr addrspace(3) %arg, i32 106
%tmp186 = load float, ptr addrspace(3) %tmp185, align 4
%tmp187 = getelementptr inbounds float, ptr addrspace(3) %arg, i32 107
%tmp188 = load float, ptr addrspace(3) %tmp187, align 4
%tmp189 = tail call float @llvm.fmuladd.f32(float %tmp184, float %tmp186, float %tmp188)
%tmp190 = getelementptr inbounds float, ptr addrspace(3) %arg, i32 109
%tmp191 = load float, ptr addrspace(3) %tmp190, align 4
%tmp192 = getelementptr inbounds float, ptr addrspace(3) %arg, i32 110
%tmp193 = load float, ptr addrspace(3) %tmp192, align 4
%tmp194 = getelementptr inbounds float, ptr addrspace(3) %arg, i32 111
%tmp195 = load float, ptr addrspace(3) %tmp194, align 4
%tmp196 = tail call float @llvm.fmuladd.f32(float %tmp191, float %tmp193, float %tmp195)
%tmp197 = getelementptr inbounds float, ptr addrspace(3) %arg, i32 113
%tmp198 = load float, ptr addrspace(3) %tmp197, align 4
%tmp199 = getelementptr inbounds float, ptr addrspace(3) %arg, i32 114
%tmp200 = load float, ptr addrspace(3) %tmp199, align 4
%tmp201 = getelementptr inbounds float, ptr addrspace(3) %arg, i32 115
%tmp202 = load float, ptr addrspace(3) %tmp201, align 4
%tmp203 = tail call float @llvm.fmuladd.f32(float %tmp198, float %tmp200, float %tmp202)
%tmp204 = getelementptr inbounds float, ptr addrspace(3) %arg, i32 117
%tmp205 = load float, ptr addrspace(3) %tmp204, align 4
%tmp206 = getelementptr inbounds float, ptr addrspace(3) %arg, i32 118
%tmp207 = load float, ptr addrspace(3) %tmp206, align 4
%tmp208 = getelementptr inbounds float, ptr addrspace(3) %arg, i32 119
%tmp209 = load float, ptr addrspace(3) %tmp208, align 4
%tmp210 = tail call float @llvm.fmuladd.f32(float %tmp205, float %tmp207, float %tmp209)
store float %tmp7, ptr addrspace(1) %arg1, align 4
%tmp449 = getelementptr inbounds float, ptr addrspace(1) %arg1, i64 1
store float %tmp14, ptr addrspace(1) %tmp449, align 4
%tmp450 = getelementptr inbounds float, ptr addrspace(1) %arg1, i64 2
store float %tmp21, ptr addrspace(1) %tmp450, align 4
%tmp451 = getelementptr inbounds float, ptr addrspace(1) %arg1, i64 3
store float %tmp28, ptr addrspace(1) %tmp451, align 4
%tmp452 = getelementptr inbounds float, ptr addrspace(1) %arg1, i64 4
store float %tmp35, ptr addrspace(1) %tmp452, align 4
%tmp453 = getelementptr inbounds float, ptr addrspace(1) %arg1, i64 5
store float %tmp42, ptr addrspace(1) %tmp453, align 4
%tmp454 = getelementptr inbounds float, ptr addrspace(1) %arg1, i64 6
store float %tmp49, ptr addrspace(1) %tmp454, align 4
%tmp455 = getelementptr inbounds float, ptr addrspace(1) %arg1, i64 7
store float %tmp56, ptr addrspace(1) %tmp455, align 4
%tmp456 = getelementptr inbounds float, ptr addrspace(1) %arg1, i64 8
store float %tmp63, ptr addrspace(1) %tmp456, align 4
%tmp457 = getelementptr inbounds float, ptr addrspace(1) %arg1, i64 9
store float %tmp70, ptr addrspace(1) %tmp457, align 4
%tmp458 = getelementptr inbounds float, ptr addrspace(1) %arg1, i64 10
store float %tmp77, ptr addrspace(1) %tmp458, align 4
%tmp459 = getelementptr inbounds float, ptr addrspace(1) %arg1, i64 11
store float %tmp84, ptr addrspace(1) %tmp459, align 4
%tmp460 = getelementptr inbounds float, ptr addrspace(1) %arg1, i64 12
store float %tmp91, ptr addrspace(1) %tmp460, align 4
%tmp461 = getelementptr inbounds float, ptr addrspace(1) %arg1, i64 13
store float %tmp98, ptr addrspace(1) %tmp461, align 4
%tmp462 = getelementptr inbounds float, ptr addrspace(1) %arg1, i64 14
store float %tmp105, ptr addrspace(1) %tmp462, align 4
%tmp463 = getelementptr inbounds float, ptr addrspace(1) %arg1, i64 15
store float %tmp112, ptr addrspace(1) %tmp463, align 4
%tmp464 = getelementptr inbounds float, ptr addrspace(1) %arg1, i64 16
store float %tmp119, ptr addrspace(1) %tmp464, align 4
%tmp465 = getelementptr inbounds float, ptr addrspace(1) %arg1, i64 17
store float %tmp126, ptr addrspace(1) %tmp465, align 4
%tmp466 = getelementptr inbounds float, ptr addrspace(1) %arg1, i64 18
store float %tmp133, ptr addrspace(1) %tmp466, align 4
%tmp467 = getelementptr inbounds float, ptr addrspace(1) %arg1, i64 19
store float %tmp140, ptr addrspace(1) %tmp467, align 4
%tmp468 = getelementptr inbounds float, ptr addrspace(1) %arg1, i64 20
store float %tmp147, ptr addrspace(1) %tmp468, align 4
%tmp469 = getelementptr inbounds float, ptr addrspace(1) %arg1, i64 21
store float %tmp154, ptr addrspace(1) %tmp469, align 4
%tmp470 = getelementptr inbounds float, ptr addrspace(1) %arg1, i64 22
store float %tmp161, ptr addrspace(1) %tmp470, align 4
%tmp471 = getelementptr inbounds float, ptr addrspace(1) %arg1, i64 23
store float %tmp168, ptr addrspace(1) %tmp471, align 4
%tmp472 = getelementptr inbounds float, ptr addrspace(1) %arg1, i64 24
store float %tmp175, ptr addrspace(1) %tmp472, align 4
%tmp473 = getelementptr inbounds float, ptr addrspace(1) %arg1, i64 25
store float %tmp182, ptr addrspace(1) %tmp473, align 4
%tmp474 = getelementptr inbounds float, ptr addrspace(1) %arg1, i64 26
store float %tmp189, ptr addrspace(1) %tmp474, align 4
%tmp475 = getelementptr inbounds float, ptr addrspace(1) %arg1, i64 27
store float %tmp196, ptr addrspace(1) %tmp475, align 4
%tmp476 = getelementptr inbounds float, ptr addrspace(1) %arg1, i64 28
store float %tmp203, ptr addrspace(1) %tmp476, align 4
%tmp477 = getelementptr inbounds float, ptr addrspace(1) %arg1, i64 29
store float %tmp210, ptr addrspace(1) %tmp477, align 4
br i1 %cc, label %bb1, label %bb2
bb2:
call void asm sideeffect "; use $0","{v[0:31]}"(<32 x i32> %vgpr0)
call void asm sideeffect "; use $0","{v[0:31]}"(<32 x i32> %vgpr1)
call void asm sideeffect "; use $0","{v[0:31]}"(<32 x i32> %vgpr2)
call void asm sideeffect "; use $0","{v[0:31]}"(<32 x i32> %vgpr3)
ret void
}
declare float @llvm.fmuladd.f32(float, float, float)
|