Module: Mesa Branch: master Commit: 3fa6a6df755849c2fa84df5f02756967bdf8ca0d URL: http://cgit.freedesktop.org/mesa/mesa/commit/?id=3fa6a6df755849c2fa84df5f02756967bdf8ca0d
Author: Maciej Cencora <[email protected]> Date: Wed Feb 4 13:37:57 2009 +0100 r300: Print reg address when debugging is enabled Signed-off-by: Nicolai Haehnle <[email protected]> --- src/mesa/drivers/dri/r300/r300_cmdbuf.c | 18 ++++++++++++++---- 1 files changed, 14 insertions(+), 4 deletions(-) diff --git a/src/mesa/drivers/dri/r300/r300_cmdbuf.c b/src/mesa/drivers/dri/r300/r300_cmdbuf.c index c9e1dfe..3eb2dc8 100644 --- a/src/mesa/drivers/dri/r300/r300_cmdbuf.c +++ b/src/mesa/drivers/dri/r300/r300_cmdbuf.c @@ -130,16 +130,26 @@ int r300FlushCmdBuf(r300ContextPtr r300, const char *caller) static void r300PrintStateAtom(r300ContextPtr r300, struct r300_state_atom *state) { - int i; + int i, j, reg; int dwords = (*state->check) (r300, state); + drm_r300_cmd_header_t cmd; fprintf(stderr, " emit %s %d/%d\n", state->name, dwords, state->cmd_size); if (RADEON_DEBUG & DEBUG_VERBOSE) { - for (i = 0; i < dwords; i++) { - fprintf(stderr, " %s[%d]: %08x\n", - state->name, i, state->cmd[i]); + for (i = 0; i < dwords;) { + cmd = (drm_r300_cmd_header_t) state->cmd[i]; + reg = (cmd.packet0.reghi << 8) | cmd.packet0.reglo; + fprintf(stderr, " %s[%d]: cmdpacket0 (first reg=0x%04x, count=%d)\n", + state->name, i, reg, cmd.packet0.count); + ++i; + for (j = 0; j < cmd.packet0.count; j++) { + fprintf(stderr, " %s[%d]: 0x%04x = %08x\n", + state->name, i, reg, state->cmd[i]); + reg += 4; + ++i; + } } } } _______________________________________________ mesa-commit mailing list [email protected] http://lists.freedesktop.org/mailman/listinfo/mesa-commit
