diff options
author | Marek Olšák <[email protected]> | 2016-06-08 13:51:04 +0200 |
---|---|---|
committer | Marek Olšák <[email protected]> | 2016-06-08 19:28:25 +0200 |
commit | 1d9c1d9386547c3fab23ce860253f214f5e62de1 (patch) | |
tree | e576ece5ec43ba0ec43ac73a64502a1778304785 | |
parent | 2b18d67a1eb64925d94de1734f63ffae471e98ce (diff) |
radeonsi: print the number of spilled VGPRs
Reviewed-by: Nicolai Hähnle <[email protected]>
-rw-r--r-- | src/gallium/drivers/radeonsi/si_shader.c | 9 |
1 files changed, 6 insertions, 3 deletions
diff --git a/src/gallium/drivers/radeonsi/si_shader.c b/src/gallium/drivers/radeonsi/si_shader.c index 9f8cb549b1b..ac943e26d0b 100644 --- a/src/gallium/drivers/radeonsi/si_shader.c +++ b/src/gallium/drivers/radeonsi/si_shader.c @@ -6032,6 +6032,8 @@ static void si_shader_dump_stats(struct si_screen *sscreen, unsigned lds_increment = sscreen->b.chip_class >= CIK ? 512 : 256; unsigned lds_per_wave = 0; unsigned max_simd_waves = 10; + /* Assuming SGPRs aren't spilled. */ + unsigned spilled_vgprs = conf->scratch_bytes_per_wave / 64 / 4; /* Compute LDS usage for PS. */ if (processor == PIPE_SHADER_FRAGMENT) { @@ -6078,22 +6080,23 @@ static void si_shader_dump_stats(struct si_screen *sscreen, fprintf(file, "*** SHADER STATS ***\n" "SGPRS: %d\n" "VGPRS: %d\n" + "Spilled VGPRs: %d\n" "Code Size: %d bytes\n" "LDS: %d blocks\n" "Scratch: %d bytes per wave\n" "Max Waves: %d\n" "********************\n", - conf->num_sgprs, conf->num_vgprs, code_size, + conf->num_sgprs, conf->num_vgprs, spilled_vgprs, code_size, conf->lds_size, conf->scratch_bytes_per_wave, max_simd_waves); } pipe_debug_message(debug, SHADER_INFO, "Shader Stats: SGPRS: %d VGPRS: %d Code Size: %d " - "LDS: %d Scratch: %d Max Waves: %d", + "LDS: %d Scratch: %d Max Waves: %d Spilled VGPRs: %d", conf->num_sgprs, conf->num_vgprs, code_size, conf->lds_size, conf->scratch_bytes_per_wave, - max_simd_waves); + max_simd_waves, spilled_vgprs); } static const char *si_get_shader_name(struct si_shader *shader, |