[Mesa-dev] [PATCH] i965/blorp: Add INTEL_DEBUG=blorp flag.

Kenneth Graunke kenneth at whitecape.org
Sat Mar 16 12:45:27 PDT 2013


On 03/16/2013 10:37 AM, Paul Berry wrote:
> This debug flag prints out the native GEN assembly for a blitting
> shader produced using BLORP.  Hopefully this should be useful in
> developing additional BLORP features.
> ---
>   src/mesa/drivers/dri/i965/brw_blorp_blit.cpp | 6 ++++++
>   src/mesa/drivers/dri/intel/intel_context.c   | 1 +
>   src/mesa/drivers/dri/intel/intel_context.h   | 1 +
>   3 files changed, 8 insertions(+)
>
> diff --git a/src/mesa/drivers/dri/i965/brw_blorp_blit.cpp b/src/mesa/drivers/dri/i965/brw_blorp_blit.cpp
> index 37524ad..d4b1fda 100644
> --- a/src/mesa/drivers/dri/i965/brw_blorp_blit.cpp
> +++ b/src/mesa/drivers/dri/i965/brw_blorp_blit.cpp
> @@ -834,6 +834,12 @@ brw_blorp_blit_program::compile(struct brw_context *brw,
>       * terminate the thread.
>       */
>      render_target_write();
> +
> +   if (unlikely(INTEL_DEBUG & DEBUG_BLORP)) {
> +      printf("Native code for BLORP blit:\n");
> +      brw_dump_compile(&func, stdout, 0, func.next_insn_offset);
> +      printf("\n");
> +   }
>      return brw_get_program(&func, program_size);
>   }
>
> diff --git a/src/mesa/drivers/dri/intel/intel_context.c b/src/mesa/drivers/dri/intel/intel_context.c
> index 7651b46..2df70b7 100644
> --- a/src/mesa/drivers/dri/intel/intel_context.c
> +++ b/src/mesa/drivers/dri/intel/intel_context.c
> @@ -490,6 +490,7 @@ static const struct dri_debug_control debug_control[] = {
>      { "aub",   DEBUG_AUB },
>      { "shader_time", DEBUG_SHADER_TIME },
>      { "no16",  DEBUG_NO16 },
> +   { "blorp", DEBUG_BLORP },
>      { NULL,    0 }
>   };
>
> diff --git a/src/mesa/drivers/dri/intel/intel_context.h b/src/mesa/drivers/dri/intel/intel_context.h
> index 5a49603..2df15d4 100644
> --- a/src/mesa/drivers/dri/intel/intel_context.h
> +++ b/src/mesa/drivers/dri/intel/intel_context.h
> @@ -438,6 +438,7 @@ extern int INTEL_DEBUG;
>   #define DEBUG_CLIP      0x2000000
>   #define DEBUG_AUB       0x4000000
>   #define DEBUG_SHADER_TIME 0x8000000
> +#define DEBUG_BLORP     0x10000000
>   #define DEBUG_NO16      0x20000000
>
>   #ifdef HAVE_ANDROID_PLATFORM

A great idea.  I guess you must've manually hacked in debugging each 
time you needed to look at it before...

Reviewed-by: Kenneth Graunke <kenneth at whitecape.org>


More information about the mesa-dev mailing list