Mesa (master): freedreno/a6xx: emit shader names in debug builds

GitLab Mirror gitlab-mirror at kemper.freedesktop.org
Tue Jun 16 21:14:02 UTC 2020


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

Author: Rob Clark <robdclark at chromium.org>
Date:   Wed May 13 09:54:57 2020 -0700

freedreno/a6xx: emit shader names in debug builds

To simplify mapping a shader in a cmdstream trace back to glsl.

Signed-off-by: Rob Clark <robdclark at chromium.org>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/5280>

---

 src/gallium/drivers/freedreno/a6xx/fd6_program.c | 7 +++++++
 1 file changed, 7 insertions(+)

diff --git a/src/gallium/drivers/freedreno/a6xx/fd6_program.c b/src/gallium/drivers/freedreno/a6xx/fd6_program.c
index 9faa11bd384..9f1510942c6 100644
--- a/src/gallium/drivers/freedreno/a6xx/fd6_program.c
+++ b/src/gallium/drivers/freedreno/a6xx/fd6_program.c
@@ -78,6 +78,13 @@ fd6_emit_shader(struct fd_ringbuffer *ring, const struct ir3_shader_variant *so)
 		unreachable("");
 	}
 
+#ifdef DEBUG
+	/* Name should generally match what you get with MESA_SHADER_CAPTURE_PATH: */
+	const char *name = so->shader->nir->info.name;
+	if (name)
+		fd_emit_string5(ring, name, strlen(name));
+#endif
+
 	OUT_PKT4(ring, instrlen, 1);
 	OUT_RING(ring, so->instrlen);
 



More information about the mesa-commit mailing list