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%)
This commit is contained in:
Eric Anholt 2019-02-13 11:22:07 -08:00
parent 16f5085490
commit 339155122b

View file

@ -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,