summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorEric Anholt <[email protected]>2017-12-28 15:29:04 -0800
committerEric Anholt <[email protected]>2018-01-03 14:31:28 -0800
commit635131a238eb1efa075a6b422ac9add863422cd7 (patch)
tree19227fbb1f2e205b36e0e4db42b582e6c4d421ae
parentdeb552ca276813a243dd68ea335ab40d4b93afc0 (diff)
broadcom/vc5: Don't emit component 3/4 F16 TLB writes for float/vec2.
Fixes a simulator assertion failure on dEQP-GLES3.functional.fragment_out.array.fixed.r8_highp_float.
-rw-r--r--src/broadcom/compiler/nir_to_vir.c3
1 files changed, 2 insertions, 1 deletions
diff --git a/src/broadcom/compiler/nir_to_vir.c b/src/broadcom/compiler/nir_to_vir.c
index 394e20d2070..f998f716590 100644
--- a/src/broadcom/compiler/nir_to_vir.c
+++ b/src/broadcom/compiler/nir_to_vir.c
@@ -1214,7 +1214,8 @@ emit_frag_end(struct v3d_compile *c)
vir_uniform_ui(c, conf);
}
- inst = vir_VFPACK_dest(c, vir_reg(QFILE_TLB, 0), b, a);
+ if (num_components >= 3)
+ inst = vir_VFPACK_dest(c, vir_reg(QFILE_TLB, 0), b, a);
}
break;
}