[Mesa-dev] [PATCH] i965: Add a function to disassemble an instruction from the 4 dwords.

Ian Romanick idr at freedesktop.org
Wed Feb 11 11:35:19 PST 2015


Reviewed-by: Ian Romanick <ian.d.romanick at intel.com>

On 02/06/2015 12:36 AM, Kenneth Graunke wrote:
> I used this a while back when debugging GPU hangs, and it seems like it
> could be useful, so I figured I'd add it so people can use it in the
> debugger.
> 
> Signed-off-by: Kenneth Graunke <kenneth at whitecape.org>
> ---
>  src/mesa/drivers/dri/i965/brw_disasm.c | 12 ++++++++++++
>  1 file changed, 12 insertions(+)
> 
> From the clearing out my 162 branches file...
> 
> diff --git a/src/mesa/drivers/dri/i965/brw_disasm.c b/src/mesa/drivers/dri/i965/brw_disasm.c
> index 7405d9b..863a6b3 100644
> --- a/src/mesa/drivers/dri/i965/brw_disasm.c
> +++ b/src/mesa/drivers/dri/i965/brw_disasm.c
> @@ -1197,6 +1197,18 @@ qtr_ctrl(FILE *file, struct brw_context *brw, brw_inst *inst)
>     return 0;
>  }
>  
> +#ifdef DEBUG
> +static __attribute__((__unused__)) int
> +brw_disassemble_imm(struct brw_context *brw,
> +                    uint32_t dw3, uint32_t dw2, uint32_t dw1, uint32_t dw0)
> +{
> +   brw_inst inst;
> +   inst.data[0] = (((uint64_t) dw1) << 32) | ((uint64_t) dw0);
> +   inst.data[1] = (((uint64_t) dw3) << 32) | ((uint64_t) dw2);
> +   return brw_disassemble_inst(stderr, brw, &inst, false);
> +}
> +#endif
> +
>  int
>  brw_disassemble_inst(FILE *file, struct brw_context *brw, brw_inst *inst,
>                       bool is_compacted)
> 



More information about the mesa-dev mailing list