summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorKeith Whitwell <keith@tungstengraphics.com>2005-05-23 12:25:43 +0000
committerKeith Whitwell <keith@tungstengraphics.com>2005-05-23 12:25:43 +0000
commit0c4731b27ccf5faa1393102107862c28642b3d76 (patch)
treeebcc7b9108c35d4f1804cfa5e3859eb65292cdd6
parent17bcf9f816db3098db42acd7f0672f64554dd6a0 (diff)
downloadexternal_mesa3d-0c4731b27ccf5faa1393102107862c28642b3d76.zip
external_mesa3d-0c4731b27ccf5faa1393102107862c28642b3d76.tar.gz
external_mesa3d-0c4731b27ccf5faa1393102107862c28642b3d76.tar.bz2
Use SSE for vertex emit -- another good speedup.
-rw-r--r--src/mesa/drivers/dri/unichrome/via_tris.c9
1 files changed, 9 insertions, 0 deletions
diff --git a/src/mesa/drivers/dri/unichrome/via_tris.c b/src/mesa/drivers/dri/unichrome/via_tris.c
index 8b9dbe8..0910f4e 100644
--- a/src/mesa/drivers/dri/unichrome/via_tris.c
+++ b/src/mesa/drivers/dri/unichrome/via_tris.c
@@ -43,12 +43,20 @@
#include "via_span.h"
#include "via_ioctl.h"
#include "via_3d_reg.h"
+#include "via_tex.h"
/***********************************************************************
* Emit primitives as inline vertices *
***********************************************************************/
#if 1
+#define COPY_DWORDS(vb, vertsize, v) \
+do { \
+ via_sse_memcpy(vb, v, vertsize * 4); \
+ vb += vertsize; \
+} while (0)
+#else
+#if 1
#define COPY_DWORDS(vb, vertsize, v) \
do { \
int j; \
@@ -68,6 +76,7 @@
vb += vertsize; \
} while (0)
#endif
+#endif
static void via_draw_triangle(struct via_context *vmesa,
viaVertexPtr v0,