Lines Matching refs:src0

11 define float @v_mad_mix_f32_f16lo_f16lo_f16lo(half %src0, half %src1, half %src2) #0 {
12 %src0.ext = fpext half %src0 to float
15 %result = tail call float @llvm.fmuladd.f32(float %src0.ext, float %src1.ext, float %src2.ext)
23 define float @v_mad_mix_f32_f16hi_f16hi_f16hi_int(i32 %src0, i32 %src1, i32 %src2) #0 {
24 %src0.hi = lshr i32 %src0, 16
27 %src0.i16 = trunc i32 %src0.hi to i16
30 %src0.fp16 = bitcast i16 %src0.i16 to half
33 %src0.ext = fpext half %src0.fp16 to float
36 %result = tail call float @llvm.fmuladd.f32(float %src0.ext, float %src1.ext, float %src2.ext)
45 define float @v_mad_mix_f32_f16hi_f16hi_f16hi_elt(<2 x half> %src0, <2 x half> %src1, <2 x half> %s…
46 %src0.hi = extractelement <2 x half> %src0, i32 1
49 %src0.ext = fpext half %src0.hi to float
52 %result = tail call float @llvm.fmuladd.f32(float %src0.ext, float %src1.ext, float %src2.ext)
66 define <2 x float> @v_mad_mix_v2f32(<2 x half> %src0, <2 x half> %src1, <2 x half> %src2) #0 {
67 %src0.ext = fpext <2 x half> %src0 to <2 x float>
70 …%result = tail call <2 x float> @llvm.fmuladd.v2f32(<2 x float> %src0.ext, <2 x float> %src1.ext, …
87 define <2 x float> @v_mad_mix_v2f32_shuffle(<2 x half> %src0, <2 x half> %src1, <2 x half> %src2) #…
88 %src0.shuf = shufflevector <2 x half> %src0, <2 x half> undef, <2 x i32> <i32 1, i32 0>
91 %src0.ext = fpext <2 x half> %src0.shuf to <2 x float>
94 …%result = tail call <2 x float> @llvm.fmuladd.v2f32(<2 x float> %src0.ext, <2 x float> %src1.ext, …
108 define float @v_mad_mix_f32_negf16lo_f16lo_f16lo(half %src0, half %src1, half %src2) #0 {
109 %src0.ext = fpext half %src0 to float
112 %src0.ext.neg = fneg float %src0.ext
113 %result = tail call float @llvm.fmuladd.f32(float %src0.ext.neg, float %src1.ext, float %src2.ext)
122 define float @v_mad_mix_f32_absf16lo_f16lo_f16lo(half %src0, half %src1, half %src2) #0 {
123 %src0.ext = fpext half %src0 to float
126 %src0.ext.abs = call float @llvm.fabs.f32(float %src0.ext)
127 %result = tail call float @llvm.fmuladd.f32(float %src0.ext.abs, float %src1.ext, float %src2.ext)
141 define float @v_mad_mix_f32_negabsf16lo_f16lo_f16lo(half %src0, half %src1, half %src2) #0 {
142 %src0.ext = fpext half %src0 to float
145 %src0.ext.abs = call float @llvm.fabs.f32(float %src0.ext)
146 %src0.ext.neg.abs = fneg float %src0.ext.abs
147 …%result = tail call float @llvm.fmuladd.f32(float %src0.ext.neg.abs, float %src1.ext, float %src2.…
158 define float @v_mad_mix_f32_f16lo_f16lo_f32(half %src0, half %src1, float %src2) #0 {
159 %src0.ext = fpext half %src0 to float
161 %result = tail call float @llvm.fmuladd.f32(float %src0.ext, float %src1.ext, float %src2)
172 define float @v_mad_mix_f32_f16lo_f16lo_negf32(half %src0, half %src1, float %src2) #0 {
173 %src0.ext = fpext half %src0 to float
176 %result = tail call float @llvm.fmuladd.f32(float %src0.ext, float %src1.ext, float %src2.neg)
187 define float @v_mad_mix_f32_f16lo_f16lo_absf32(half %src0, half %src1, float %src2) #0 {
188 %src0.ext = fpext half %src0 to float
191 %result = tail call float @llvm.fmuladd.f32(float %src0.ext, float %src1.ext, float %src2.abs)
202 define float @v_mad_mix_f32_f16lo_f16lo_negabsf32(half %src0, half %src1, float %src2) #0 {
203 %src0.ext = fpext half %src0 to float
207 %result = tail call float @llvm.fmuladd.f32(float %src0.ext, float %src1.ext, float %src2.neg.abs)
223 define float @v_mad_mix_f32_f16lo_f16lo_f32imm1(half %src0, half %src1) #0 {
224 %src0.ext = fpext half %src0 to float
226 %result = tail call float @llvm.fmuladd.f32(float %src0.ext, float %src1.ext, float 1.0)
236 define float @v_mad_mix_f32_f16lo_f16lo_f32imminv2pi(half %src0, half %src1) #0 {
237 %src0.ext = fpext half %src0 to float
239 …%result = tail call float @llvm.fmuladd.f32(float %src0.ext, float %src1.ext, float 0x3FC45F306000…
254 define float @v_mad_mix_f32_f16lo_f16lo_cvtf16imminv2pi(half %src0, half %src1) #0 {
255 %src0.ext = fpext half %src0 to float
258 %result = tail call float @llvm.fmuladd.f32(float %src0.ext, float %src1.ext, float %src2)
268 define float @v_mad_mix_f32_f16lo_f16lo_cvtf16imm63(half %src0, half %src1) #0 {
269 %src0.ext = fpext half %src0 to float
272 %result = tail call float @llvm.fmuladd.f32(float %src0.ext, float %src1.ext, float %src2)
285 define <2 x float> @v_mad_mix_v2f32_f32imm1(<2 x half> %src0, <2 x half> %src1) #0 {
286 %src0.ext = fpext <2 x half> %src0 to <2 x float>
288 …%result = tail call <2 x float> @llvm.fmuladd.v2f32(<2 x float> %src0.ext, <2 x float> %src1.ext, …
302 define <2 x float> @v_mad_mix_v2f32_cvtf16imminv2pi(<2 x half> %src0, <2 x half> %src1) #0 {
303 %src0.ext = fpext <2 x half> %src0 to <2 x float>
306 …%result = tail call <2 x float> @llvm.fmuladd.v2f32(<2 x float> %src0.ext, <2 x float> %src1.ext, …
320 define <2 x float> @v_mad_mix_v2f32_f32imminv2pi(<2 x half> %src0, <2 x half> %src1) #0 {
321 %src0.ext = fpext <2 x half> %src0 to <2 x float>
324 …%result = tail call <2 x float> @llvm.fmuladd.v2f32(<2 x float> %src0.ext, <2 x float> %src1.ext, …
332 define float @v_mad_mix_clamp_f32_f16hi_f16hi_f16hi_elt(<2 x half> %src0, <2 x half> %src1, <2 x ha…
333 %src0.hi = extractelement <2 x half> %src0, i32 1
336 %src0.ext = fpext half %src0.hi to float
339 %result = tail call float @llvm.fmuladd.f32(float %src0.ext, float %src1.ext, float %src2.ext)
349 define float @no_mix_simple(float %src0, float %src1, float %src2) #0 {
350 %result = call float @llvm.fmuladd.f32(float %src0, float %src1, float %src2)
360 define float @no_mix_simple_fabs(float %src0, float %src1, float %src2) #0 {
361 %src0.fabs = call float @llvm.fabs.f32(float %src0)
362 %result = call float @llvm.fmuladd.f32(float %src0.fabs, float %src1, float %src2)
375 define float @v_mad_mix_f32_f16lo_f16lo_f16lo_f32_denormals(half %src0, half %src1, half %src2) #1 {
376 %src0.ext = fpext half %src0 to float
379 %result = tail call float @llvm.fmuladd.f32(float %src0.ext, float %src1.ext, float %src2.ext)
390 define float @v_mad_mix_f32_f16lo_f16lo_f32_denormals(half %src0, half %src1, float %src2) #1 {
391 %src0.ext = fpext half %src0 to float
393 %result = tail call float @llvm.fmuladd.f32(float %src0.ext, float %src1.ext, float %src2)
403 define float @v_mad_mix_f32_f16lo_f16lo_f16lo_f32_denormals_fmulfadd(half %src0, half %src1, half %…
404 %src0.ext = fpext half %src0 to float
407 %mul = fmul float %src0.ext, %src1.ext
417 define float @v_mad_mix_f32_f16lo_f16lo_f32_denormals_fmulfadd(half %src0, half %src1, float %src2)…
418 %src0.ext = fpext half %src0 to float
420 %mul = fmul float %src0.ext, %src1.ext
430 define float @v_mad_mix_f32_f16lo_f16lo_f16lo_f32_flush_fmulfadd(half %src0, half %src1, half %src2…
431 %src0.ext = fpext half %src0 to float
434 %mul = fmul contract float %src0.ext, %src1.ext
444 define float @v_mad_mix_f32_f16lo_f16lo_f32_flush_fmulfadd(half %src0, half %src1, float %src2) #0 {
445 %src0.ext = fpext half %src0 to float
447 %mul = fmul contract float %src0.ext, %src1.ext
459 define float @v_mad_mix_f32_negprecvtf16lo_f16lo_f16lo(i32 %src0.arg, half %src1, half %src2) #0 {
460 %src0.arg.bc = bitcast i32 %src0.arg to <2 x half>
461 %src0 = extractelement <2 x half> %src0.arg.bc, i32 0
462 %src0.neg = fsub half -0.0, %src0
463 %src0.ext = fpext half %src0.neg to float
466 ; %src0.ext.neg = fsub float -0.0, %src0.ext
467 %result = tail call float @llvm.fmuladd.f32(float %src0.ext, float %src1.ext, float %src2.ext)
474 define float @v_mad_mix_f32_precvtnegf16hi_abs_f16lo_f16lo(i32 %src0.arg, half %src1, half %src2) #…
475 %src0.arg.bc = bitcast i32 %src0.arg to <2 x half>
476 %src0 = extractelement <2 x half> %src0.arg.bc, i32 1
477 %src0.neg = fsub half -0.0, %src0
478 %src0.ext = fpext half %src0.neg to float
479 %src0.ext.abs = call float @llvm.fabs.f32(float %src0.ext)
482 %result = tail call float @llvm.fmuladd.f32(float %src0.ext.abs, float %src1.ext, float %src2.ext)
491 define float @v_mad_mix_f32_precvtabsf16hi_f16lo_f16lo(i32 %src0.arg, half %src1, half %src2) #0 {
492 %src0.arg.bc = bitcast i32 %src0.arg to <2 x half>
493 %src0 = extractelement <2 x half> %src0.arg.bc, i32 1
494 %src0.abs = call half @llvm.fabs.f16(half %src0)
495 %src0.ext = fpext half %src0.abs to float
498 %result = tail call float @llvm.fmuladd.f32(float %src0.ext, float %src1.ext, float %src2.ext)
507 define float @v_mad_mix_f32_preextractfneg_f16hi_f16lo_f16lo(i32 %src0.arg, half %src1, half %src2)…
508 %src0.arg.bc = bitcast i32 %src0.arg to <2 x half>
509 %fneg = fsub <2 x half> <half -0.0, half -0.0>, %src0.arg.bc
510 %src0 = extractelement <2 x half> %fneg, i32 1
511 %src0.ext = fpext half %src0 to float
514 %result = tail call float @llvm.fmuladd.f32(float %src0.ext, float %src1.ext, float %src2.ext)
523 define float @v_mad_mix_f32_preextractfabs_f16hi_f16lo_f16lo(i32 %src0.arg, half %src1, half %src2)…
524 %src0.arg.bc = bitcast i32 %src0.arg to <2 x half>
525 %fabs = call <2 x half> @llvm.fabs.v2f16(<2 x half> %src0.arg.bc)
526 %src0 = extractelement <2 x half> %fabs, i32 1
527 %src0.ext = fpext half %src0 to float
530 %result = tail call float @llvm.fmuladd.f32(float %src0.ext, float %src1.ext, float %src2.ext)
539 define float @v_mad_mix_f32_preextractfabsfneg_f16hi_f16lo_f16lo(i32 %src0.arg, half %src1, half %s…
540 %src0.arg.bc = bitcast i32 %src0.arg to <2 x half>
541 %fabs = call <2 x half> @llvm.fabs.v2f16(<2 x half> %src0.arg.bc)
543 %src0 = extractelement <2 x half> %fneg.fabs, i32 1
544 %src0.ext = fpext half %src0 to float
547 %result = tail call float @llvm.fmuladd.f32(float %src0.ext, float %src1.ext, float %src2.ext)