From: Eric Anholt Date: Wed, 13 Feb 2019 19:22:07 +0000 (-0800) Subject: v3d: Drop our hand-lowered nir_op_ffract. X-Git-Url: https://git.libre-soc.org/?a=commitdiff_plain;h=339155122b97caad0090b9120083f7e28795441c;p=mesa.git v3d: Drop our hand-lowered nir_op_ffract. The NIR lowering works fine, though it causes some slight noise due to what looks like choices about propagating constants up multiply chains changing. total instructions in shared programs: 6229671 -> 6229820 (<.01%) total uniforms in shared programs: 2312171 -> 2312324 (<.01%) --- diff --git a/src/broadcom/compiler/nir_to_vir.c b/src/broadcom/compiler/nir_to_vir.c index 82da32ac6be..e05b8a0b313 100644 --- a/src/broadcom/compiler/nir_to_vir.c +++ b/src/broadcom/compiler/nir_to_vir.c @@ -998,9 +998,6 @@ ntq_emit_alu(struct v3d_compile *c, nir_alu_instr *instr) case nir_op_ftrunc: result = vir_FTRUNC(c, src[0]); break; - case nir_op_ffract: - result = vir_FSUB(c, src[0], vir_FFLOOR(c, src[0])); - break; case nir_op_fsin: result = ntq_fsincos(c, src[0], false); @@ -2444,6 +2441,7 @@ const nir_shader_compiler_options v3d_nir_options = { .lower_bitfield_reverse = true, .lower_bit_count = true, .lower_cs_local_id_from_index = true, + .lower_ffract = true, .lower_pack_unorm_2x16 = true, .lower_pack_snorm_2x16 = true, .lower_pack_unorm_4x8 = true,