summaryrefslogtreecommitdiff
path: root/src/mesa/pipe/cell/common.h
diff options
context:
space:
mode:
authorBrian <brian.paul@tungstengraphics.com>2007-12-10 17:32:08 -0700
committerBrian <brian.paul@tungstengraphics.com>2007-12-10 17:32:43 -0700
commit7d1894c6558c5cc7f503142cda11b8a12ea24e65 (patch)
tree0e6bdb0417a0f444f527d2559cc809cab4228703 /src/mesa/pipe/cell/common.h
parentaef25b1994cf93aaf64baf24a2ec4e29ee086a08 (diff)
Cell: first triangle.
This is a feeble first step, but it works. The cell_clear_surface() function has been hijacked to set up a "draw triangle" command and send it to all the SPUs. The Gallium softpipe triangle code was copied to the SPU module and modified. Only the progs/trivial/clear.c program runs.
Diffstat (limited to 'src/mesa/pipe/cell/common.h')
-rw-r--r--src/mesa/pipe/cell/common.h12
1 files changed, 11 insertions, 1 deletions
diff --git a/src/mesa/pipe/cell/common.h b/src/mesa/pipe/cell/common.h
index da7de78803..5e5abad8c4 100644
--- a/src/mesa/pipe/cell/common.h
+++ b/src/mesa/pipe/cell/common.h
@@ -49,7 +49,7 @@
#define CELL_CMD_EXIT 1
#define CELL_CMD_FRAMEBUFFER 2
#define CELL_CMD_CLEAR_TILES 3
-#define CELL_CMD_INVERT_TILES 4
+#define CELL_CMD_TRIANGLE 4
#define CELL_CMD_FINISH 5
@@ -73,11 +73,21 @@ struct cell_command_clear_tiles
} ALIGN16;
+struct cell_command_triangle
+{
+ float x0, y0;
+ float x1, y1;
+ float x2, y2;
+ uint color;
+} ALIGN16;
+
+
/** XXX unions don't seem to work */
struct cell_command
{
struct cell_command_framebuffer fb;
struct cell_command_clear_tiles clear;
+ struct cell_command_triangle tri;
} ALIGN16;