[Mesa-dev] [PATCH] i965: Unhardcode a few more stage names and abbreviations.
Matt Turner
mattst88 at gmail.com
Mon Apr 27 15:08:50 PDT 2015
On Mon, Apr 27, 2015 at 2:57 PM, Kenneth Graunke <kenneth at whitecape.org> wrote:
> The stage_abbrev and stage_name fields in backend_visitor provide what
> we need without any additional effort. It also means we'll get the
> right names for compute shaders, SIMD8 geometry shaders, and both kinds
> of tessellation shaders.
>
> This does unfortunately change the capitalization of the stage
> abbreviation in the INTEL_DEBUG=optimizer output filenames. It doesn't
> seem worth adding code to handle, though.
>
> Signed-off-by: Kenneth Graunke <kenneth at whitecape.org>
> ---
> src/mesa/drivers/dri/i965/brw_fs.cpp | 10 +++-------
> src/mesa/drivers/dri/i965/brw_vec4.cpp | 6 ++----
> 2 files changed, 5 insertions(+), 11 deletions(-)
>
> diff --git a/src/mesa/drivers/dri/i965/brw_fs.cpp b/src/mesa/drivers/dri/i965/brw_fs.cpp
> index 61ee056..4e4f646 100644
> --- a/src/mesa/drivers/dri/i965/brw_fs.cpp
> +++ b/src/mesa/drivers/dri/i965/brw_fs.cpp
> @@ -3763,8 +3763,6 @@ fs_visitor::calculate_register_pressure()
> void
> fs_visitor::optimize()
> {
> - const char *stage_name = stage == MESA_SHADER_VERTEX ? "vs" : "fs";
> -
> split_virtual_grfs();
>
> move_uniform_array_access_to_pull_constants();
> @@ -3778,7 +3776,7 @@ fs_visitor::optimize()
> if (unlikely(INTEL_DEBUG & DEBUG_OPTIMIZER) && this_progress) { \
> char filename[64]; \
> snprintf(filename, 64, "%s%d-%04d-%02d-%02d-" #pass, \
> - stage_name, dispatch_width, shader_prog ? shader_prog->Name : 0, iteration, pass_num); \
> + stage_abbrev, dispatch_width, shader_prog ? shader_prog->Name : 0, iteration, pass_num); \
> \
> backend_visitor::dump_instructions(filename); \
> } \
> @@ -3790,7 +3788,8 @@ fs_visitor::optimize()
> if (unlikely(INTEL_DEBUG & DEBUG_OPTIMIZER)) {
> char filename[64];
> snprintf(filename, 64, "%s%d-%04d-00-start",
> - stage_name, dispatch_width, shader_prog ? shader_prog->Name : 0);
> + stage_abbrev, dispatch_width,
> + shader_prog ? shader_prog->Name : 0);
>
> backend_visitor::dump_instructions(filename);
> }
> @@ -3882,9 +3881,6 @@ fs_visitor::allocate_registers()
> }
>
> if (!allocated_without_spills) {
> - const char *stage_name = stage == MESA_SHADER_VERTEX ?
> - "Vertex" : "Fragment";
> -
I was confused for a second how this could work, since stage_name is
used right after this hunk ends, but stage_name/stage_abbrev are
backend_visitor members. As long as you don't care that we're losing
the capital V/F with this change, the patch is
Reviewed-by: Matt Turner <mattst88 at gmail.com>
> /* We assume that any spilling is worse than just dropping back to
> * SIMD8. There's probably actually some intermediate point where
> * SIMD16 with a couple of spills is still better.
More information about the mesa-dev
mailing list