From 5a5896cd76629ed2a2cd87ecdcc1f8a723280cae Mon Sep 17 00:00:00 2001 From: Alyssa Rosenzweig Date: Mon, 9 Mar 2020 21:02:51 -0400 Subject: [PATCH] pan/bi: Implement fsat as mov.sat Soon we'll have a NIR support to handle this the Right Way along with pos and sat_signed support, but we'll always need the fallback anyway. Signed-off-by: Alyssa Rosenzweig Part-of: --- src/panfrost/bifrost/bifrost_compile.c | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/src/panfrost/bifrost/bifrost_compile.c b/src/panfrost/bifrost/bifrost_compile.c index 8068825..bbc3398 100644 --- a/src/panfrost/bifrost/bifrost_compile.c +++ b/src/panfrost/bifrost/bifrost_compile.c @@ -231,6 +231,7 @@ bi_class_for_nir_alu(nir_op op) switch (op) { case nir_op_fadd: return BI_ADD; case nir_op_fmul: return BI_FMA; + case nir_op_fsat: case nir_op_mov: return BI_MOV; default: unreachable("Unknown ALU op"); } @@ -302,6 +303,9 @@ emit_alu(bi_context *ctx, nir_alu_instr *instr) case nir_op_fmul: alu.src[2] = BIR_INDEX_ZERO; /* FMA */ break; + case nir_op_fsat: + alu.outmod = BIFROST_SAT; /* MOV */ + break; default: break; } -- 2.7.4