summaryrefslogtreecommitdiff
path: root/src/gallium/drivers/r300/r300_cs.h
diff options
context:
space:
mode:
authorCorbin Simpson <MostAwesomeDude@gmail.com>2009-04-08 14:54:17 -0700
committerCorbin Simpson <MostAwesomeDude@gmail.com>2009-04-08 15:31:04 -0700
commit8648c2685870174cf620ef15de70ef030a8d5a20 (patch)
tree1b514371ca248c6d4c83e09beeb73f27467d8bfe /src/gallium/drivers/r300/r300_cs.h
parentb3639d43f2085c893bb6136c8febe5bc7944869e (diff)
r300-gallium: Properly emit indexbufs.
This fixes hardlocks with anything using elts.
Diffstat (limited to 'src/gallium/drivers/r300/r300_cs.h')
-rw-r--r--src/gallium/drivers/r300/r300_cs.h10
1 files changed, 10 insertions, 0 deletions
diff --git a/src/gallium/drivers/r300/r300_cs.h b/src/gallium/drivers/r300/r300_cs.h
index 9913678d27..5d9799dd72 100644
--- a/src/gallium/drivers/r300/r300_cs.h
+++ b/src/gallium/drivers/r300/r300_cs.h
@@ -132,4 +132,14 @@
OUT_CS(CP_PACKET3(op, count)); \
} while (0)
+#define OUT_CS_INDEX_RELOC(bo, offset, count, rd, wd, flags) do { \
+ debug_printf("r300: writing relocation for index buffer %p," \
+ "offset %d\n", bo, offset); \
+ assert(bo); \
+ OUT_CS(offset); \
+ OUT_CS(count); \
+ cs_winsys->write_cs_reloc(cs, bo, rd, wd, flags); \
+ cs_count -= 2; \
+} while (0)
+
#endif /* R300_CS_H */