aboutsummaryrefslogtreecommitdiffstats
path: root/src/gallium/drivers/r300
diff options
context:
space:
mode:
authorCorbin Simpson <[email protected]>2009-06-04 23:25:46 -0700
committerCorbin Simpson <[email protected]>2009-06-04 23:27:46 -0700
commit8652ad68992a63a275bdc3816540c39776b143b2 (patch)
tree890ef171a552be72914e7f0cba497b9d0b03c627 /src/gallium/drivers/r300
parent31609acbe9d80daea49e98f026196023a20258a0 (diff)
r300-gallium: Improve vs debug more.
Still not showing me why my stuff's failing, but getting there.
Diffstat (limited to 'src/gallium/drivers/r300')
-rw-r--r--src/gallium/drivers/r300/r300_debug.c5
-rw-r--r--src/gallium/drivers/r300/r300_debug.h18
2 files changed, 22 insertions, 1 deletions
diff --git a/src/gallium/drivers/r300/r300_debug.c b/src/gallium/drivers/r300/r300_debug.c
index 1a8c17b28d6..678cd2b8121 100644
--- a/src/gallium/drivers/r300/r300_debug.c
+++ b/src/gallium/drivers/r300/r300_debug.c
@@ -152,6 +152,8 @@ void r500_fs_dump(struct r500_fragment_shader* fs)
static void r300_vs_op_dump(uint32_t op)
{
+ debug_printf(" dst: %d%s op: ",
+ (op >> 13) & 0x7f, r300_vs_dst_debug[(op >> 8) & 0x7]);
if (op & 0x80) {
if (op & 0x1) {
debug_printf("PVS_MACRO_OP_2CLK_M2X_ADD\n");
@@ -167,7 +169,8 @@ static void r300_vs_op_dump(uint32_t op)
void r300_vs_src_dump(uint32_t src)
{
- debug_printf(" %s%s/%s%s/%s%s/%s%s\n",
+ debug_printf(" reg: %d%s swiz: %s%s/%s%s/%s%s/%s%s\n",
+ (src >> 5) & 0x7f, r300_vs_src_debug[src & 0x3],
src & (1 << 25) ? "-" : " ",
r300_vs_swiz_debug[(src >> 13) & 0x7],
src & (1 << 26) ? "-" : " ",
diff --git a/src/gallium/drivers/r300/r300_debug.h b/src/gallium/drivers/r300/r300_debug.h
index 3939d834c23..c86410ec0a9 100644
--- a/src/gallium/drivers/r300/r300_debug.h
+++ b/src/gallium/drivers/r300/r300_debug.h
@@ -174,6 +174,24 @@ static char* r300_vs_me_ops[] = {
};
/* XXX refactor to avoid clashing symbols */
+static char* r300_vs_src_debug[] = {
+ "t",
+ "i",
+ "c",
+ "a",
+};
+
+static char* r300_vs_dst_debug[] = {
+ "t",
+ "a0",
+ "o",
+ "ox",
+ "a",
+ "i",
+ "u",
+ "u",
+};
+
static char* r300_vs_swiz_debug[] = {
"X",
"Y",