mirror of
https://gitlab.freedesktop.org/mesa/mesa.git
synced 2026-05-06 00:49:04 +02:00
asahi: flush denorms on exact fmin/fmax
Reviewed-by: Alyssa Rosenzweig <alyssa@rosenzweig.io> Signed-off-by: Karol Herbst <kherbst@redhat.com> Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/25788>
This commit is contained in:
parent
d7f5ff402a
commit
74ef0d4f93
1 changed files with 10 additions and 4 deletions
|
|
@ -1379,10 +1379,16 @@ agx_emit_alu(agx_builder *b, nir_alu_instr *instr)
|
|||
case nir_op_fneg:
|
||||
return agx_fmov_to(b, dst, agx_neg(s0));
|
||||
|
||||
case nir_op_fmin:
|
||||
return agx_fcmpsel_to(b, dst, s0, s1, s0, s1, AGX_FCOND_LTN);
|
||||
case nir_op_fmax:
|
||||
return agx_fcmpsel_to(b, dst, s0, s1, s0, s1, AGX_FCOND_GTN);
|
||||
case nir_op_fmin: {
|
||||
agx_index tmp = agx_fcmpsel(b, s0, s1, s0, s1, AGX_FCOND_LTN);
|
||||
/* flush denorms */
|
||||
return agx_fadd_to(b, dst, tmp, agx_negzero());
|
||||
}
|
||||
case nir_op_fmax: {
|
||||
agx_index tmp = agx_fcmpsel(b, s0, s1, s0, s1, AGX_FCOND_GTN);
|
||||
/* flush denorms */
|
||||
return agx_fadd_to(b, dst, tmp, agx_negzero());
|
||||
}
|
||||
case nir_op_imin:
|
||||
return agx_icmpsel_to(b, dst, s0, s1, s0, s1, AGX_ICOND_SLT);
|
||||
case nir_op_imax:
|
||||
|
|
|
|||
Loading…
Add table
Reference in a new issue