v3d: Return the right gl_SampleMaskIn[] value.

It's supposed to be the dispatched sample mask for this pixel, not the GL
state's sample mask.
This commit is contained in:
Eric Anholt 2018-12-03 08:51:29 -08:00
parent 6870111051
commit acecee4c2d
3 changed files with 1 additions and 11 deletions

View File

@ -1579,8 +1579,7 @@ ntq_emit_intrinsic(struct v3d_compile *c, nir_intrinsic_instr *instr)
break;
case nir_intrinsic_load_sample_mask_in:
ntq_store_dest(c, &instr->dest, 0,
vir_uniform(c, QUNIFORM_SAMPLE_MASK, 0));
ntq_store_dest(c, &instr->dest, 0, vir_MSF(c));
break;
case nir_intrinsic_load_front_face:

View File

@ -246,7 +246,6 @@ enum quniform_contents {
QUNIFORM_TEXTURE_BORDER_COLOR,
QUNIFORM_ALPHA_REF,
QUNIFORM_SAMPLE_MASK,
/**
* Returns the the offset of the scratch buffer for register spilling.

View File

@ -354,10 +354,6 @@ v3d_write_uniforms(struct v3d_context *v3d, struct v3d_compiled_shader *shader,
v3d->zsa->base.alpha.ref_value);
break;
case QUNIFORM_SAMPLE_MASK:
cl_aligned_u32(&uniforms, v3d->sample_mask);
break;
case QUNIFORM_UBO_ADDR:
if (uinfo->data[i] == 0) {
cl_aligned_reloc(&job->indirect, &uniforms,
@ -466,10 +462,6 @@ v3d_set_shader_uniform_dirty_flags(struct v3d_compiled_shader *shader)
dirty |= VC5_DIRTY_ZSA;
break;
case QUNIFORM_SAMPLE_MASK:
dirty |= VC5_DIRTY_SAMPLE_STATE;
break;
default:
assert(quniform_contents_is_texture_p0(shader->prog_data.base->uniforms.contents[i]));
dirty |= VC5_DIRTY_FRAGTEX | VC5_DIRTY_VERTTEX;