Mesa (main): intel/compiler: Clarify why VUE is recomputed by FS

GitLab Mirror gitlab-mirror at kemper.freedesktop.org
Thu May 13 19:34:01 UTC 2021


Module: Mesa
Branch: main
Commit: c0dc6affdc5e33c126637a3dfd63d1162b975bf4
URL:    http://cgit.freedesktop.org/mesa/mesa/commit/?id=c0dc6affdc5e33c126637a3dfd63d1162b975bf4

Author: Caio Marcelo de Oliveira Filho <caio.oliveira at intel.com>
Date:   Fri Apr 30 01:00:51 2021 -0700

intel/compiler: Clarify why VUE is recomputed by FS

FS will get the last geometry VUE, but it still needs to recompute in
case the number of position slots assigned by geometry is larger than
one -- this happens when Primitive Replication is used.

Reviewed-by: Kenneth Graunke <kenneth at whitecape.org>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/10653>

---

 src/intel/compiler/brw_fs.cpp | 5 +++++
 1 file changed, 5 insertions(+)

diff --git a/src/intel/compiler/brw_fs.cpp b/src/intel/compiler/brw_fs.cpp
index 2f28996d4a2..a95d5bc3654 100644
--- a/src/intel/compiler/brw_fs.cpp
+++ b/src/intel/compiler/brw_fs.cpp
@@ -1875,6 +1875,11 @@ calculate_urb_setup(const struct intel_device_info *devinfo,
           * in an order that matches the output of the previous pipeline stage
           * (geometry or vertex shader).
           */
+
+         /* Re-compute the VUE map here in the case that the one coming from
+          * geometry has more than one position slot (used for Primitive
+          * Replication).
+          */
          struct brw_vue_map prev_stage_vue_map;
          brw_compute_vue_map(devinfo, &prev_stage_vue_map,
                              key->input_slots_valid,



More information about the mesa-commit mailing list