glave: Add command buffer diagram.
diff --git a/glave-generate.py b/glave-generate.py
index bb99ea0..e16175d 100755
--- a/glave-generate.py
+++ b/glave-generate.py
@@ -1945,6 +1945,7 @@
rc_body.append('private:')
rc_body.append(' struct xglFuncs m_xglFuncs;')
rc_body.append(' DRAW_STATE_DUMP_DOT_FILE m_pDSDump;')
+ rc_body.append(' DRAW_STATE_DUMP_COMMAND_BUFFER_DOT_FILE m_pCBDump;')
rc_body.append(' xglDisplay *m_display;')
rc_body.append(' struct shaderPair {')
rc_body.append(' XGL_SHADER *addr;')
@@ -2419,12 +2420,13 @@
rvf_body.append('}')
rvf_body.append('int xglReplay::dump_validation_data()')
rvf_body.append('{')
- rvf_body.append(' if (m_pDSDump)')
+ rvf_body.append(' if (!m_pDSDump || !m_pCBDump)')
rvf_body.append(' {')
- rvf_body.append(' m_pDSDump((char *) "pipeline_dump.dot");')
- rvf_body.append(' return 0;')
+ rvf_body.append(' return -1;')
rvf_body.append(' }')
- rvf_body.append(' return -1;')
+ rvf_body.append(' m_pDSDump((char *) "pipeline_dump.dot");')
+ rvf_body.append(' m_pCBDump((char *) "cb_dump.dot");')
+ rvf_body.append(' return 0;')
rvf_body.append('}')
return "\n".join(rvf_body)
@@ -2607,6 +2609,7 @@
cd_body.append(' if (xglDbgRegisterMsgCallback(g_fpDbgMsgCallback, NULL) != XGL_SUCCESS)')
cd_body.append(' glv_LogError("Failed to register xgl callback for replayer error handling\\n");')
cd_body.append(' m_pDSDump = (DRAW_STATE_DUMP_DOT_FILE) m_xglFuncs.real_xglGetProcAddr(remap(pPacket->gpu), "drawStateDumpDotFile");')
+ cd_body.append(' m_pCBDump = (DRAW_STATE_DUMP_COMMAND_BUFFER_DOT_FILE) m_xglFuncs.real_xglGetProcAddr(remap(pPacket->gpu), "drawStateDumpCommandBufferDotFile");')
cd_body.append(' }')
cd_body.append(' else ')
cd_body.append(' replayResult = m_xglFuncs.real_xglCreateDevice(remap(pPacket->gpu), pPacket->pCreateInfo, &device);')