From 574dca6542a7b82bb287a9f4df1832f11d9a66a3 Mon Sep 17 00:00:00 2001 From: Tobin Ehlis Date: Tue, 9 Dec 2014 17:00:33 -0700 Subject: layers: Don't show totally unused DS slots or arrows for slots unused by a particular shader --- layers/draw_state.c | 4 +++- xgl-helper.py | 6 ++++-- 2 files changed, 7 insertions(+), 3 deletions(-) diff --git a/layers/draw_state.c b/layers/draw_state.c index bffad7f7..75193b89 100644 --- a/layers/draw_state.c +++ b/layers/draw_state.c @@ -596,7 +596,9 @@ static void dsDumpDot(FILE* pOutFile) uint32_t j; char label[1024]; for (j = 0; j < pDS->numSlots; j++) { - fprintf(pOutFile, "slot%u", j, j); + // Don't draw unused slots + if (0 != pDS->dsSlot[j].activeMapping) + fprintf(pOutFile, "slot%u", j, j); } fprintf(pOutFile, ">\n];\n"); // Now tie each slot to its info diff --git a/xgl-helper.py b/xgl-helper.py index c98c288c..298b30f9 100755 --- a/xgl-helper.py +++ b/xgl-helper.py @@ -1006,8 +1006,10 @@ class GraphVizGen: gv_funcs.append(' strncat(str, ">\\n];\\n\\n", 20);\n') # TODO : Another hard-coded hack. Tie these slots to "magical" DS0_MEMORY slots that should appear separately gv_funcs.append(' for (uint32_t i=0; i < count; i++) {\n') - gv_funcs.append(' sprintf(tmpStr, "\\"%s\\":slot%u -> \\"DS0_MEMORY\\":slot%u [];\\n", myNodeName, i, i);\n') - gv_funcs.append(' strncat(str, tmpStr, strlen(tmpStr));\n') + gv_funcs.append(' if (XGL_SLOT_UNUSED != pStruct[i].slotObjectType) {\n') + gv_funcs.append(' sprintf(tmpStr, "\\"%s\\":slot%u -> \\"DS0_MEMORY\\":slot%u [];\\n", myNodeName, i, i);\n') + gv_funcs.append(' strncat(str, tmpStr, strlen(tmpStr));\n') + gv_funcs.append(' }\n') gv_funcs.append(' }\n') gv_funcs.append(' return str;\n}\n') # Add function to dynamically print out unknown struct -- cgit v1.2.3