[Mesa-dev] [PATCH v2 3/3] nir: implement GLSL.std.450 NMax, NMIn and NClamp operations
Juan A. Suarez Romero
jasuarez at igalia.com
Mon Jun 26 10:15:15 UTC 2017
On Tue, 2017-06-13 at 11:14 +0200, Juan A. Suarez Romero wrote:
> v2: NIR fmax/fmin already handles NaN (Connor).
> ---
Implemented the functions using fmax/fmin.
Could you review it? Thank you!
J.A.
> src/compiler/spirv/vtn_glsl450.c | 3 +++
> 1 file changed, 3 insertions(+)
>
> diff --git a/src/compiler/spirv/vtn_glsl450.c b/src/compiler/spirv/vtn_glsl450.c
> index 96e3407dee..1d7e2b8d95 100644
> --- a/src/compiler/spirv/vtn_glsl450.c
> +++ b/src/compiler/spirv/vtn_glsl450.c
> @@ -433,9 +433,11 @@ vtn_nir_alu_op_for_spirv_glsl_opcode(enum GLSLstd450 opcode)
> case GLSLstd450Log2: return nir_op_flog2;
> case GLSLstd450Sqrt: return nir_op_fsqrt;
> case GLSLstd450InverseSqrt: return nir_op_frsq;
> + case GLSLstd450NMin: return nir_op_fmin;
> case GLSLstd450FMin: return nir_op_fmin;
> case GLSLstd450UMin: return nir_op_umin;
> case GLSLstd450SMin: return nir_op_imin;
> + case GLSLstd450NMax: return nir_op_fmax;
> case GLSLstd450FMax: return nir_op_fmax;
> case GLSLstd450UMax: return nir_op_umax;
> case GLSLstd450SMax: return nir_op_imax;
> @@ -537,6 +539,7 @@ handle_glsl450_alu(struct vtn_builder *b, enum GLSLstd450 entrypoint,
> return;
>
> case GLSLstd450FClamp:
> + case GLSLstd450NClamp:
> val->ssa->def = build_fclamp(nb, src[0], src[1], src[2]);
> return;
> case GLSLstd450UClamp:
More information about the mesa-dev
mailing list