[Mesa-dev] [PATCH] radeonsi: also print hexadecimal values for register fields in the IB parser
eocallaghan at alterapraxis.com
eocallaghan at alterapraxis.com
Thu Dec 10 03:23:34 PST 2015
On 2015-12-10 09:54, Marek Olšák wrote:
> From: Marek Olšák <marek.olsak at amd.com>
>
> ---
> src/gallium/drivers/radeonsi/si_debug.c | 11 +++++++----
> 1 file changed, 7 insertions(+), 4 deletions(-)
>
> diff --git a/src/gallium/drivers/radeonsi/si_debug.c
> b/src/gallium/drivers/radeonsi/si_debug.c
> index cce665e..034acf5 100644
> --- a/src/gallium/drivers/radeonsi/si_debug.c
> +++ b/src/gallium/drivers/radeonsi/si_debug.c
> @@ -61,13 +61,16 @@ static void print_spaces(FILE *f, unsigned num)
> static void print_value(FILE *file, uint32_t value, int bits)
> {
> /* Guess if it's int or float */
> - if (value <= (1 << 15))
> - fprintf(file, "%u\n", value);
> - else {
> + if (value <= (1 << 15)) {
> + if (value <= 9)
> + fprintf(file, "%u\n", value);
> + else
> + fprintf(file, "%u (0x%0*x)\n", value, bits / 4, value);
> + } else {
> float f = uif(value);
>
> if (fabs(f) < 100000 && f*10 == floor(f*10))
> - fprintf(file, "%.1ff\n", f);
> + fprintf(file, "%.1ff (0x%0*x)\n", f, bits / 4, value);
> else
> /* Don't print more leading zeros than there are bits. */
> fprintf(file, "0x%0*x\n", bits / 4, value);
Reviewed-by: Edward O'Callaghan <eocallaghan at alterapraxis.com>
More information about the mesa-dev
mailing list