Mesa (master): radv: move nir print after linking is done

Timothy Arceri tarceri at kemper.freedesktop.org
Mon Oct 23 23:41:47 UTC 2017


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

Author: Timothy Arceri <tarceri at itsqueeze.com>
Date:   Tue Oct 24 09:08:55 2017 +1100

radv: move nir print after linking is done

We now have linking optimisations so we want to delay dumping the
nir until after these are complete.

Fixes: 06f05040eb73 (radv: Link shaders)
Reviewed-by: Bas Nieuwenhuizen <bas at basnieuwenhuizen.nl>

---

 src/amd/vulkan/radv_pipeline.c | 9 +++++++--
 src/amd/vulkan/radv_shader.c   | 3 ---
 2 files changed, 7 insertions(+), 5 deletions(-)

diff --git a/src/amd/vulkan/radv_pipeline.c b/src/amd/vulkan/radv_pipeline.c
index 30a90ac960..d6b33a5327 100644
--- a/src/amd/vulkan/radv_pipeline.c
+++ b/src/amd/vulkan/radv_pipeline.c
@@ -1870,8 +1870,13 @@ void radv_create_shaders(struct radv_pipeline *pipeline,
 
 	for (int i = 0; i < MESA_SHADER_STAGES; ++i) {
 		free(codes[i]);
-		if (modules[i] && !pipeline->device->trace_bo)
-			ralloc_free(nir[i]);
+		if (modules[i]) {
+			if (device->instance->debug_flags & RADV_DEBUG_DUMP_SHADERS)
+				nir_print_shader(nir[i], stderr);
+
+			if (!pipeline->device->trace_bo)
+				ralloc_free(nir[i]);
+		}
 	}
 
 	if (fs_m.nir)
diff --git a/src/amd/vulkan/radv_shader.c b/src/amd/vulkan/radv_shader.c
index 6176a2e590..5903917068 100644
--- a/src/amd/vulkan/radv_shader.c
+++ b/src/amd/vulkan/radv_shader.c
@@ -291,9 +291,6 @@ radv_shader_compile_to_nir(struct radv_device *device,
 	nir_remove_dead_variables(nir, nir_var_local);
 	radv_optimize_nir(nir);
 
-	if (device->instance->debug_flags & RADV_DEBUG_DUMP_SHADERS)
-		nir_print_shader(nir, stderr);
-
 	return nir;
 }
 




More information about the mesa-commit mailing list