Mesa (master): nir/divergence: handle load_primitive_id in GS

GitLab Mirror gitlab-mirror at kemper.freedesktop.org
Tue Jan 14 12:08:55 UTC 2020


Module: Mesa
Branch: master
Commit: 9fb0c2e0335716a46ce98bcb6979198d5862ae44
URL:    http://cgit.freedesktop.org/mesa/mesa/commit/?id=9fb0c2e0335716a46ce98bcb6979198d5862ae44

Author: Rhys Perry <pendingchaos02 at gmail.com>
Date:   Mon Oct 14 17:03:07 2019 +0100

nir/divergence: handle load_primitive_id in GS

Signed-off-by: Rhys Perry <pendingchaos02 at gmail.com>
Reviewed-by: Daniel Schürmann <daniel at schuermann.dev>
Reviewed-by: Jason Ekstrand <jason at jlekstrand.net>
Tested-by: Marge Bot <https://gitlab.freedesktop.org/mesa/mesa/merge_requests/2323>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/merge_requests/2323>

---

 src/compiler/nir/nir_divergence_analysis.c | 2 ++
 1 file changed, 2 insertions(+)

diff --git a/src/compiler/nir/nir_divergence_analysis.c b/src/compiler/nir/nir_divergence_analysis.c
index 9b8f9cb6349..397015263e1 100644
--- a/src/compiler/nir/nir_divergence_analysis.c
+++ b/src/compiler/nir/nir_divergence_analysis.c
@@ -157,6 +157,8 @@ visit_intrinsic(bool *divergent, nir_intrinsic_instr *instr,
          is_divergent = !(options & nir_divergence_single_patch_per_tcs_subgroup);
       else if (stage == MESA_SHADER_TESS_EVAL)
          is_divergent = !(options & nir_divergence_single_patch_per_tes_subgroup);
+      else if (stage == MESA_SHADER_GEOMETRY)
+         is_divergent = true;
       else
          unreachable("Invalid stage for load_primitive_id");
       break;



More information about the mesa-commit mailing list