mirror of
https://gitlab.freedesktop.org/mesa/mesa.git
synced 2026-05-05 09:38:07 +02:00
v3d: Add support for gl_HelperInvocation.
We can just look at the MSF flags -- if they're unset, then we're definitely in a helper invocation. Fixes dEQP-GLES31.functional.shaders.helper_invocation.* with GLES3.1 enabled.
This commit is contained in:
parent
20021e3473
commit
ad1e59cf8d
1 changed files with 8 additions and 0 deletions
|
|
@ -1596,6 +1596,14 @@ ntq_emit_intrinsic(struct v3d_compile *c, nir_intrinsic_instr *instr)
|
|||
ntq_store_dest(c, &instr->dest, 0, vir_MSF(c));
|
||||
break;
|
||||
|
||||
case nir_intrinsic_load_helper_invocation:
|
||||
vir_PF(c, vir_MSF(c), V3D_QPU_PF_PUSHZ);
|
||||
ntq_store_dest(c, &instr->dest, 0,
|
||||
vir_MOV(c, vir_SEL(c, V3D_QPU_COND_IFA,
|
||||
vir_uniform_ui(c, ~0),
|
||||
vir_uniform_ui(c, 0))));
|
||||
break;
|
||||
|
||||
case nir_intrinsic_load_front_face:
|
||||
/* The register contains 0 (front) or 1 (back), and we need to
|
||||
* turn it into a NIR bool where true means front.
|
||||
|
|
|
|||
Loading…
Add table
Reference in a new issue