@@ -82,7 +82,7 @@ define amdgpu_kernel void @rcp_fdiv_fpmath(float addrspace(1)* %out, float %x) #
82
82
; CHECK: %[[NO_A0:[0-9]+]] = extractelement <2 x float> %a, i64 0
83
83
; CHECK: %[[NO_B0:[0-9]+]] = extractelement <2 x float> %b, i64 0
84
84
; CHECK: %[[NO_FDIV0:[0-9]+]] = fdiv float %[[NO_A0]], %[[NO_B0]]
85
- ; CHECK: %[[NO_INS0:[0-9]+]] = insertelement <2 x float> undef , float %[[NO_FDIV0]], i64 0
85
+ ; CHECK: %[[NO_INS0:[0-9]+]] = insertelement <2 x float> poison , float %[[NO_FDIV0]], i64 0
86
86
; CHECK: %[[NO_A1:[0-9]+]] = extractelement <2 x float> %a, i64 1
87
87
; CHECK: %[[NO_B1:[0-9]+]] = extractelement <2 x float> %b, i64 1
88
88
; CHECK: %[[NO_FDIV1:[0-9]+]] = fdiv float %[[NO_A1]], %[[NO_B1]]
@@ -92,7 +92,7 @@ define amdgpu_kernel void @rcp_fdiv_fpmath(float addrspace(1)* %out, float %x) #
92
92
; CHECK: %[[HALF_A0:[0-9]+]] = extractelement <2 x float> %a, i64 0
93
93
; CHECK: %[[HALF_B0:[0-9]+]] = extractelement <2 x float> %b, i64 0
94
94
; CHECK: %[[HALF_FDIV0:[0-9]+]] = fdiv float %[[HALF_A0]], %[[HALF_B0]]
95
- ; CHECK: %[[HALF_INS0:[0-9]+]] = insertelement <2 x float> undef , float %[[HALF_FDIV0]], i64 0
95
+ ; CHECK: %[[HALF_INS0:[0-9]+]] = insertelement <2 x float> poison , float %[[HALF_FDIV0]], i64 0
96
96
; CHECK: %[[HALF_A1:[0-9]+]] = extractelement <2 x float> %a, i64 1
97
97
; CHECK: %[[HALF_B1:[0-9]+]] = extractelement <2 x float> %b, i64 1
98
98
; CHECK: %[[HALF_FDIV1:[0-9]+]] = fdiv float %[[HALF_A1]], %[[HALF_B1]]
@@ -102,7 +102,7 @@ define amdgpu_kernel void @rcp_fdiv_fpmath(float addrspace(1)* %out, float %x) #
102
102
; CHECK: %[[ONE_A0:[0-9]+]] = extractelement <2 x float> %a, i64 0
103
103
; CHECK: %[[ONE_B0:[0-9]+]] = extractelement <2 x float> %b, i64 0
104
104
; CHECK: %[[ONE_FDIV0:[0-9]+]] = fdiv float %[[ONE_A0]], %[[ONE_B0]]
105
- ; CHECK: %[[ONE_INS0:[0-9]+]] = insertelement <2 x float> undef , float %[[ONE_FDIV0]], i64 0
105
+ ; CHECK: %[[ONE_INS0:[0-9]+]] = insertelement <2 x float> poison , float %[[ONE_FDIV0]], i64 0
106
106
; CHECK: %[[ONE_A1:[0-9]+]] = extractelement <2 x float> %a, i64 1
107
107
; CHECK: %[[ONE_B1:[0-9]+]] = extractelement <2 x float> %b, i64 1
108
108
; CHECK: %[[ONE_FDIV1:[0-9]+]] = fdiv float %[[ONE_A1]], %[[ONE_B1]]
@@ -112,7 +112,7 @@ define amdgpu_kernel void @rcp_fdiv_fpmath(float addrspace(1)* %out, float %x) #
112
112
; CHECK: %[[A0:[0-9]+]] = extractelement <2 x float> %a, i64 0
113
113
; CHECK: %[[B0:[0-9]+]] = extractelement <2 x float> %b, i64 0
114
114
; CHECK: %[[FDIV0:[0-9]+]] = call float @llvm.amdgcn.fdiv.fast(float %[[A0]], float %[[B0]])
115
- ; CHECK: %[[INS0:[0-9]+]] = insertelement <2 x float> undef , float %[[FDIV0]], i64 0
115
+ ; CHECK: %[[INS0:[0-9]+]] = insertelement <2 x float> poison , float %[[FDIV0]], i64 0
116
116
; CHECK: %[[A1:[0-9]+]] = extractelement <2 x float> %a, i64 1
117
117
; CHECK: %[[B1:[0-9]+]] = extractelement <2 x float> %b, i64 1
118
118
; CHECK: %[[FDIV1:[0-9]+]] = call float @llvm.amdgcn.fdiv.fast(float %[[A1]], float %[[B1]])
@@ -136,47 +136,47 @@ define amdgpu_kernel void @fdiv_fpmath_vector(<2 x float> addrspace(1)* %out, <2
136
136
; CHECK-LABEL: @rcp_fdiv_fpmath_vector(
137
137
; CHECK: %[[NO0:[0-9]+]] = extractelement <2 x float> %x, i64 0
138
138
; CHECK: %[[NO_FDIV0:[0-9]+]] = fdiv float 1.000000e+00, %[[NO0]]
139
- ; CHECK: %[[NO_INS0:[0-9]+]] = insertelement <2 x float> undef , float %[[NO_FDIV0]], i64 0
139
+ ; CHECK: %[[NO_INS0:[0-9]+]] = insertelement <2 x float> poison , float %[[NO_FDIV0]], i64 0
140
140
; CHECK: %[[NO1:[0-9]+]] = extractelement <2 x float> %x, i64 1
141
141
; CHECK: %[[NO_FDIV1:[0-9]+]] = fdiv float 1.000000e+00, %[[NO1]]
142
142
; CHECK: %no.md = insertelement <2 x float> %[[NO_INS0]], float %[[NO_FDIV1]], i64 1
143
143
; CHECK: store volatile <2 x float> %no.md, <2 x float> addrspace(1)* %out
144
144
145
145
; CHECK: %[[HALF0:[0-9]+]] = extractelement <2 x float> %x, i64 0
146
146
; CHECK: %[[HALF_FDIV0:[0-9]+]] = fdiv float 1.000000e+00, %[[HALF0]]
147
- ; CHECK: %[[HALF_INS0:[0-9]+]] = insertelement <2 x float> undef , float %[[HALF_FDIV0]], i64 0
147
+ ; CHECK: %[[HALF_INS0:[0-9]+]] = insertelement <2 x float> poison , float %[[HALF_FDIV0]], i64 0
148
148
; CHECK: %[[HALF1:[0-9]+]] = extractelement <2 x float> %x, i64 1
149
149
; CHECK: %[[HALF_FDIV1:[0-9]+]] = fdiv float 1.000000e+00, %[[HALF1]]
150
150
; CHECK: %md.half.ulp = insertelement <2 x float> %[[HALF_INS0]], float %[[HALF_FDIV1]], i64 1
151
151
; CHECK: store volatile <2 x float> %md.half.ulp, <2 x float> addrspace(1)* %out
152
152
153
153
; CHECK: %[[AFN_NO0:[0-9]+]] = extractelement <2 x float> %x, i64 0
154
154
; CHECK: %[[AFN_NO_FDIV0:[0-9]+]] = call afn float @llvm.amdgcn.rcp.f32(float %[[AFN_NO0]])
155
- ; CHECK: %[[AFN_NO_INS0:[0-9]+]] = insertelement <2 x float> undef , float %[[AFN_NO_FDIV0]], i64 0
155
+ ; CHECK: %[[AFN_NO_INS0:[0-9]+]] = insertelement <2 x float> poison , float %[[AFN_NO_FDIV0]], i64 0
156
156
; CHECK: %[[AFN_NO1:[0-9]+]] = extractelement <2 x float> %x, i64 1
157
157
; CHECK: %[[AFN_NO_FDIV1:[0-9]+]] = call afn float @llvm.amdgcn.rcp.f32(float %[[AFN_NO1]])
158
158
; CHECK: %afn.no.md = insertelement <2 x float> %[[AFN_NO_INS0]], float %[[AFN_NO_FDIV1]], i64 1
159
159
; CHECK: store volatile <2 x float> %afn.no.md, <2 x float> addrspace(1)* %out
160
160
161
161
; CHECK: %[[FAST_NO0:[0-9]+]] = extractelement <2 x float> %x, i64 0
162
162
; CHECK: %[[FAST_NO_RCP0:[0-9]+]] = call fast float @llvm.amdgcn.rcp.f32(float %[[FAST_NO0]])
163
- ; CHECK: %[[FAST_NO_INS0:[0-9]+]] = insertelement <2 x float> undef , float %[[FAST_NO_RCP0]], i64 0
163
+ ; CHECK: %[[FAST_NO_INS0:[0-9]+]] = insertelement <2 x float> poison , float %[[FAST_NO_RCP0]], i64 0
164
164
; CHECK: %[[FAST_NO1:[0-9]+]] = extractelement <2 x float> %x, i64 1
165
165
; CHECK: %[[FAST_NO_RCP1:[0-9]+]] = call fast float @llvm.amdgcn.rcp.f32(float %[[FAST_NO1]])
166
166
; CHECK: %fast.no.md = insertelement <2 x float> %[[FAST_NO_INS0]], float %[[FAST_NO_RCP1]], i64 1
167
167
; CHECK: store volatile <2 x float> %fast.no.md, <2 x float> addrspace(1)* %out
168
168
169
169
; CHECK: %[[AFN_250:[0-9]+]] = extractelement <2 x float> %x, i64 0
170
170
; CHECK: %[[AFN_25_RCP0:[0-9]+]] = call afn float @llvm.amdgcn.rcp.f32(float %[[AFN_250]])
171
- ; CHECK: %[[AFN_25_INS0:[0-9]+]] = insertelement <2 x float> undef , float %[[AFN_25_RCP0]], i64 0
171
+ ; CHECK: %[[AFN_25_INS0:[0-9]+]] = insertelement <2 x float> poison , float %[[AFN_25_RCP0]], i64 0
172
172
; CHECK: %[[AFN_251:[0-9]+]] = extractelement <2 x float> %x, i64 1
173
173
; CHECK: %[[AFN_25_RCP1:[0-9]+]] = call afn float @llvm.amdgcn.rcp.f32(float %[[AFN_251]])
174
174
; CHECK: %afn.25ulp = insertelement <2 x float> %[[AFN_25_INS0]], float %[[AFN_25_RCP1]], i64 1
175
175
; CHECK: store volatile <2 x float> %afn.25ulp, <2 x float> addrspace(1)* %out
176
176
177
177
; CHECK: %[[FAST_250:[0-9]+]] = extractelement <2 x float> %x, i64 0
178
178
; CHECK: %[[FAST_25_RCP0:[0-9]+]] = call fast float @llvm.amdgcn.rcp.f32(float %[[FAST_250]])
179
- ; CHECK: %[[FAST_25_INS0:[0-9]+]] = insertelement <2 x float> undef , float %[[FAST_25_RCP0]], i64 0
179
+ ; CHECK: %[[FAST_25_INS0:[0-9]+]] = insertelement <2 x float> poison , float %[[FAST_25_RCP0]], i64 0
180
180
; CHECK: %[[FAST_251:[0-9]+]] = extractelement <2 x float> %x, i64 1
181
181
; CHECK: %[[FAST_25_RCP1:[0-9]+]] = call fast float @llvm.amdgcn.rcp.f32(float %[[FAST_251]])
182
182
; CHECK: %fast.25ulp = insertelement <2 x float> %[[FAST_25_INS0]], float %[[FAST_25_RCP1]], i64 1
@@ -206,15 +206,15 @@ define amdgpu_kernel void @rcp_fdiv_fpmath_vector(<2 x float> addrspace(1)* %out
206
206
; CHECK-LABEL: @rcp_fdiv_fpmath_vector_nonsplat(
207
207
; CHECK: %[[NO0:[0-9]+]] = extractelement <2 x float> %x, i64 0
208
208
; CHECK: %[[NO_FDIV0:[0-9]+]] = fdiv float 1.000000e+00, %[[NO0]]
209
- ; CHECK: %[[NO_INS0:[0-9]+]] = insertelement <2 x float> undef , float %[[NO_FDIV0]], i64 0
209
+ ; CHECK: %[[NO_INS0:[0-9]+]] = insertelement <2 x float> poison , float %[[NO_FDIV0]], i64 0
210
210
; CHECK: %[[NO1:[0-9]+]] = extractelement <2 x float> %x, i64 1
211
211
; CHECK: %[[NO_FDIV1:[0-9]+]] = fdiv float 2.000000e+00, %[[NO1]]
212
212
; CHECK: %no.md = insertelement <2 x float> %[[NO_INS0]], float %[[NO_FDIV1]], i64 1
213
213
; CHECK: store volatile <2 x float> %no.md, <2 x float> addrspace(1)* %out
214
214
215
215
; CHECK: %[[AFN_NO0:[0-9]+]] = extractelement <2 x float> %x, i64 0
216
216
; CHECK: %[[AFN_NO_FDIV0:[0-9]+]] = call afn float @llvm.amdgcn.rcp.f32(float %[[AFN_NO0]])
217
- ; CHECK: %[[AFN_NO_INS0:[0-9]+]] = insertelement <2 x float> undef , float %[[AFN_NO_FDIV0]], i64 0
217
+ ; CHECK: %[[AFN_NO_INS0:[0-9]+]] = insertelement <2 x float> poison , float %[[AFN_NO_FDIV0]], i64 0
218
218
; CHECK: %[[AFN_NO1:[0-9]+]] = extractelement <2 x float> %x, i64 1
219
219
; CHECK: %[[AFN_NO_FDIV1:[0-9]+]] = call afn float @llvm.amdgcn.rcp.f32(float %[[AFN_NO1]])
220
220
; CHECK: %[[AFN_NO_MUL1:[0-9]+]] = fmul afn float 2.000000e+00, %[[AFN_NO_FDIV1]]
@@ -223,7 +223,7 @@ define amdgpu_kernel void @rcp_fdiv_fpmath_vector(<2 x float> addrspace(1)* %out
223
223
224
224
; CHECK: %[[FAST_NO0:[0-9]+]] = extractelement <2 x float> %x, i64 0
225
225
; CHECK: %[[FAST_NO_RCP0:[0-9]+]] = call fast float @llvm.amdgcn.rcp.f32(float %[[FAST_NO0]])
226
- ; CHECK: %[[FAST_NO_INS0:[0-9]+]] = insertelement <2 x float> undef , float %[[FAST_NO_RCP0]], i64 0
226
+ ; CHECK: %[[FAST_NO_INS0:[0-9]+]] = insertelement <2 x float> poison , float %[[FAST_NO_RCP0]], i64 0
227
227
; CHECK: %[[FAST_NO1:[0-9]+]] = extractelement <2 x float> %x, i64 1
228
228
; CHECK: %[[FAST_NO_RCP1:[0-9]+]] = call fast float @llvm.amdgcn.rcp.f32(float %[[FAST_NO1]])
229
229
; CHECK: %[[FAST_NO_MUL1:[0-9]+]] = fmul fast float 2.000000e+00, %[[FAST_NO_RCP1]]
@@ -232,7 +232,7 @@ define amdgpu_kernel void @rcp_fdiv_fpmath_vector(<2 x float> addrspace(1)* %out
232
232
233
233
; CHECK: %[[AFN_250:[0-9]+]] = extractelement <2 x float> %x, i64 0
234
234
; CHECK: %[[AFN_25_RCP0:[0-9]+]] = call afn float @llvm.amdgcn.rcp.f32(float %[[AFN_250]])
235
- ; CHECK: %[[AFN_25_INS0:[0-9]+]] = insertelement <2 x float> undef , float %[[AFN_25_RCP0]], i64 0
235
+ ; CHECK: %[[AFN_25_INS0:[0-9]+]] = insertelement <2 x float> poison , float %[[AFN_25_RCP0]], i64 0
236
236
; CHECK: %[[AFN_251:[0-9]+]] = extractelement <2 x float> %x, i64 1
237
237
; CHECK: %[[AFN_25_RCP1:[0-9]+]] = call afn float @llvm.amdgcn.rcp.f32(float %[[AFN_251]])
238
238
; CHECK: %[[AFN_25_MUL1:[0-9]+]] = fmul afn float 2.000000e+00, %[[AFN_25_RCP1]]
@@ -241,7 +241,7 @@ define amdgpu_kernel void @rcp_fdiv_fpmath_vector(<2 x float> addrspace(1)* %out
241
241
242
242
; CHECK: %[[FAST_250:[0-9]+]] = extractelement <2 x float> %x, i64 0
243
243
; CHECK: %[[FAST_25_RCP0:[0-9]+]] = call fast float @llvm.amdgcn.rcp.f32(float %[[FAST_250]])
244
- ; CHECK: %[[FAST_25_INS0:[0-9]+]] = insertelement <2 x float> undef , float %[[FAST_25_RCP0]], i64 0
244
+ ; CHECK: %[[FAST_25_INS0:[0-9]+]] = insertelement <2 x float> poison , float %[[FAST_25_RCP0]], i64 0
245
245
; CHECK: %[[FAST_251:[0-9]+]] = extractelement <2 x float> %x, i64 1
246
246
; CHECK: %[[FAST_25_RCP1:[0-9]+]] = call fast float @llvm.amdgcn.rcp.f32(float %[[FAST_251]])
247
247
; CHECK: %[[FAST_25_MUL1:[0-9]+]] = fmul fast float 2.000000e+00, %[[FAST_25_RCP1]]
@@ -271,7 +271,7 @@ define amdgpu_kernel void @rcp_fdiv_fpmath_vector_nonsplat(<2 x float> addrspace
271
271
; CHECK: %[[AFN_B0:[0-9]+]] = extractelement <2 x float> %y, i64 0
272
272
; CHECK: %[[AFN_RCP0:[0-9]+]] = call afn float @llvm.amdgcn.rcp.f32(float %[[AFN_B0]])
273
273
; CHECK: %[[AFN_MUL0:[0-9]+]] = fmul afn float %[[AFN_A0]], %[[AFN_RCP0]]
274
- ; CHECK: %[[AFN_INS0:[0-9]+]] = insertelement <2 x float> undef , float %[[AFN_MUL0]], i64 0
274
+ ; CHECK: %[[AFN_INS0:[0-9]+]] = insertelement <2 x float> poison , float %[[AFN_MUL0]], i64 0
275
275
; CHECK: %[[AFN_A1:[0-9]+]] = extractelement <2 x float> %x.insert, i64 1
276
276
; CHECK: %[[AFN_B1:[0-9]+]] = extractelement <2 x float> %y, i64 1
277
277
; CHECK: %[[AFN_RCP1:[0-9]+]] = call afn float @llvm.amdgcn.rcp.f32(float %[[AFN_B1]])
@@ -283,7 +283,7 @@ define amdgpu_kernel void @rcp_fdiv_fpmath_vector_nonsplat(<2 x float> addrspace
283
283
; CHECK: %[[FAST_B0:[0-9]+]] = extractelement <2 x float> %y, i64 0
284
284
; CHECK: %[[FAST_RCP0:[0-9]+]] = call fast float @llvm.amdgcn.rcp.f32(float %[[FAST_B0]])
285
285
; CHECK: %[[FAST_MUL0:[0-9]+]] = fmul fast float %[[FAST_A0]], %[[FAST_RCP0]]
286
- ; CHECK: %[[FAST_INS0:[0-9]+]] = insertelement <2 x float> undef , float %[[FAST_MUL0]], i64 0
286
+ ; CHECK: %[[FAST_INS0:[0-9]+]] = insertelement <2 x float> poison , float %[[FAST_MUL0]], i64 0
287
287
; CHECK: %[[FAST_A1:[0-9]+]] = extractelement <2 x float> %x.insert, i64 1
288
288
; CHECK: %[[FAST_B1:[0-9]+]] = extractelement <2 x float> %y, i64 1
289
289
; CHECK: %[[FAST_RCP1:[0-9]+]] = call fast float @llvm.amdgcn.rcp.f32(float %[[FAST_B1]])
0 commit comments