Hi,

yeah in the long run showing both in an ordered manner would be a nice thing to have! That would include patching the output and the tgsi parser (who wants to delete half the output to parse it again e.g. with nouveau_compiler).

I can image an output similar to the one below:

IMM[5] FLT32 {    0.0000,     0.0000,     0.0000,     0.0000} ^ IMM[5] FLT32 
{0x00000019, 0x0000000f, 0x00000005, 0x0000001e}
IMM[6] FLT32 {    0.0000,     0.0000,     0.0000,     0.0000} = IMM[6] FLT32 
{0x0000001e, 0x00000005, 0x0000000a, 0x00000014}
IMM[7] FLT32 {    0.0000,     0.0000,     0.0000,     0.0000}   IMM[7] FLT32 
{0x00000014, 0x0000000a, 0x0000000f, 0x00000019}

Greetings,

Tobias


PS: I have no push rights to commit this!


On 11/15/17 10:44 PM, Pierre Moreau wrote:
This looks like the saner approach, compared to changing tgsi_dump.c to display
more fractional digits. Maybe there could be a second option to display as both
float and hex?

Reviewed-by: Pierre Moreau <pierre.mor...@free.fr>

On 2017-11-14 — 15:11, Tobias Klausmann wrote:
Printing without this could lead to the following output, while the values are
not exactly zero:
IMM[5] FLT32 {    0.0000,     0.0000,     0.0000,     0.0000}
IMM[6] FLT32 {    0.0000,     0.0000,     0.0000,     0.0000}
IMM[7] FLT32 {    0.0000,     0.0000,     0.0000,     0.0000}

when printing the values as hex, we can now see the differences:
IMM[5] FLT32 {0x00000019, 0x0000000f, 0x00000005, 0x0000001e}
IMM[6] FLT32 {0x0000001e, 0x00000005, 0x0000000a, 0x00000014}
IMM[7] FLT32 {0x00000014, 0x0000000a, 0x0000000f, 0x00000019}

Signed-off-by: Tobias Klausmann <tobias.johannes.klausm...@mni.thm.de>
---
  src/gallium/drivers/nouveau/codegen/nv50_ir_from_tgsi.cpp | 2 +-
  1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/src/gallium/drivers/nouveau/codegen/nv50_ir_from_tgsi.cpp 
b/src/gallium/drivers/nouveau/codegen/nv50_ir_from_tgsi.cpp
index 34351dab51..898031811d 100644
--- a/src/gallium/drivers/nouveau/codegen/nv50_ir_from_tgsi.cpp
+++ b/src/gallium/drivers/nouveau/codegen/nv50_ir_from_tgsi.cpp
@@ -1095,7 +1095,7 @@ Source::Source(struct nv50_ir_prog_info *prog) : 
info(prog)
     tokens = (const struct tgsi_token *)info->bin.source;
if (prog->dbgFlags & NV50_IR_DEBUG_BASIC)
-      tgsi_dump(tokens, 0);
+      tgsi_dump(tokens, TGSI_DUMP_FLOAT_AS_HEX);
  }
Source::~Source()
--
2.15.0

_______________________________________________
Nouveau mailing list
Nouveau@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/nouveau
_______________________________________________
Nouveau mailing list
Nouveau@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/nouveau

Reply via email to