This is quite useful for debugging shader-transpiling issues in virglrenderer.
Signed-off-by: Erik Faye-Lund <erik.faye-l...@collabora.com> --- src/gallium/drivers/virgl/virgl_encode.c | 3 +++ src/gallium/drivers/virgl/virgl_screen.c | 1 + src/gallium/drivers/virgl/virgl_screen.h | 1 + 3 files changed, 5 insertions(+) diff --git a/src/gallium/drivers/virgl/virgl_encode.c b/src/gallium/drivers/virgl/virgl_encode.c index ea544fe5cd..4e99dda0f7 100644 --- a/src/gallium/drivers/virgl/virgl_encode.c +++ b/src/gallium/drivers/virgl/virgl_encode.c @@ -274,6 +274,9 @@ int virgl_encode_shader_state(struct virgl_context *ctx, if (bret == false) return -1; + if (virgl_debug & VIRGL_DEBUG_TGSI) + debug_printf("TGSI:\n---8<---\n%s\n---8<---\n", str); + shader_len = strlen(str) + 1; left_bytes = shader_len; diff --git a/src/gallium/drivers/virgl/virgl_screen.c b/src/gallium/drivers/virgl/virgl_screen.c index 61147c423c..d9b50c9cca 100644 --- a/src/gallium/drivers/virgl/virgl_screen.c +++ b/src/gallium/drivers/virgl/virgl_screen.c @@ -39,6 +39,7 @@ int virgl_debug = 0; static const struct debug_named_value debug_options[] = { { "verbose", VIRGL_DEBUG_VERBOSE, NULL }, + { "tgsi", VIRGL_DEBUG_TGSI, NULL }, DEBUG_NAMED_VALUE_END }; DEBUG_GET_ONCE_FLAGS_OPTION(virgl_debug, "VIRGL_DEBUG", debug_options, 0) diff --git a/src/gallium/drivers/virgl/virgl_screen.h b/src/gallium/drivers/virgl/virgl_screen.h index 8334d16242..719f5166d7 100644 --- a/src/gallium/drivers/virgl/virgl_screen.h +++ b/src/gallium/drivers/virgl/virgl_screen.h @@ -28,6 +28,7 @@ #include "virgl_winsys.h" #define VIRGL_DEBUG_VERBOSE 1 +#define VIRGL_DEBUG_TGSI 2 extern int virgl_debug; struct virgl_screen { -- 2.17.1 _______________________________________________ mesa-dev mailing list mesa-dev@lists.freedesktop.org https://lists.freedesktop.org/mailman/listinfo/mesa-dev