Its encoding differs slightly from the LOD used in normal texture calls.
Signed-off-by: Alyssa Rosenzweig <[email protected]>
---
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 327a6e8435c..4ef82140b7f 100644
--- a/src/gallium/drivers/panfrost/midgard/disassemble.c
+++ b/src/gallium/drivers/panfrost/midgard/disassemble.c
@@ -1141,6 +1141,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.20.1
_______________________________________________
mesa-dev mailing list
[email protected]
https://lists.freedesktop.org/mailman/listinfo/mesa-dev