v3d: Respect swap_color_rb for the f32_color_rb case.

We don't actually set the two flags together, but I want to use the
r/g/b/a reordered fields in the next commit.
This commit is contained in:
Eric Anholt 2018-07-03 15:52:59 -07:00
parent dbd52585fa
commit 7b63371420

View file

@ -1031,14 +1031,16 @@ emit_frag_end(struct v3d_compile *c)
}
if (c->fs_key->f32_color_rb & (1 << rt)) {
inst = vir_MOV_dest(c, vir_reg(QFILE_TLBU, 0), color[0]);
inst = vir_MOV_dest(c, vir_reg(QFILE_TLBU, 0), r);
inst->src[vir_get_implicit_uniform_src(inst)] =
vir_uniform_ui(c, conf);
for (int i = 1; i < num_components; i++) {
inst = vir_MOV_dest(c, vir_reg(QFILE_TLB, 0),
color[i]);
}
if (num_components >= 2)
vir_MOV_dest(c, vir_reg(QFILE_TLB, 0), g);
if (num_components >= 3)
vir_MOV_dest(c, vir_reg(QFILE_TLB, 0), b);
if (num_components >= 4)
vir_MOV_dest(c, vir_reg(QFILE_TLB, 0), a);
} else {
inst = vir_VFPACK_dest(c, vir_reg(QFILE_TLB, 0), r, g);
if (conf != ~0) {