From 3dee556c4e40bfa1fd070f025bd20163fd063fc1 Mon Sep 17 00:00:00 2001 From: Alyssa Rosenzweig Date: Mon, 10 Jun 2019 13:13:51 -0700 Subject: [PATCH] panfrost/midgard/disasm: Print LOD for texelFetch Its encoding differs slightly from the LOD used in normal texture calls. Signed-off-by: Alyssa Rosenzweig --- src/gallium/drivers/panfrost/midgard/disassemble.c | 9 +++++++++ 1 file changed, 9 insertions(+) diff --git a/src/gallium/drivers/panfrost/midgard/disassemble.c b/src/gallium/drivers/panfrost/midgard/disassemble.c index fafa2d4e74a..7b0972efb8c 100644 --- a/src/gallium/drivers/panfrost/midgard/disassemble.c +++ b/src/gallium/drivers/panfrost/midgard/disassemble.c @@ -1137,6 +1137,15 @@ print_texture_word(uint32_t *word, unsigned tabs) if (texture->lod_register) { /* TODO: Decode */ printf("lod/bias/grad reg 0x%X (%X), ", texture->bias, texture->bias_int); + } else if (texture->op == TEXTURE_OP_TEXEL_FETCH) { + /* For texel fetch, the int LOD is in the fractional place and + * there is no fraction / possibility of bias. We *always* have + * an explicit LOD, even if it's zero. */ + + if (texture->bias_int) + printf(" /* bias_int = 0x%X */ ", texture->bias_int); + + printf("lod = %d, ", texture->bias); } else if (texture->bias || texture->bias_int) { int bias_int = texture->bias_int; float bias_frac = texture->bias / 256.0f; -- 2.30.2