summaryrefslogtreecommitdiff
path: root/src/gallium/drivers/llvmpipe/lp_setup_context.h
diff options
context:
space:
mode:
authorKeith Whitwell <keithw@vmware.com>2009-10-08 23:08:41 +0100
committerKeith Whitwell <keithw@vmware.com>2009-10-08 23:08:41 +0100
commit253dfed93918bd87c4a55047a9d569ede545f8be (patch)
tree2d2872ab638122f084f631c18bb90f0546881f10 /src/gallium/drivers/llvmpipe/lp_setup_context.h
parent1814395b7ef3506935ae1f12630cdd602e15cd55 (diff)
llvmpipe: get lp_setup compiling
Diffstat (limited to 'src/gallium/drivers/llvmpipe/lp_setup_context.h')
-rw-r--r--src/gallium/drivers/llvmpipe/lp_setup_context.h28
1 files changed, 18 insertions, 10 deletions
diff --git a/src/gallium/drivers/llvmpipe/lp_setup_context.h b/src/gallium/drivers/llvmpipe/lp_setup_context.h
index 5722e3e9de..37caeed85f 100644
--- a/src/gallium/drivers/llvmpipe/lp_setup_context.h
+++ b/src/gallium/drivers/llvmpipe/lp_setup_context.h
@@ -31,8 +31,17 @@
#include "lp_setup.h"
#include "lp_rast.h"
+/* We're limited to 2K by 2K for 32bit fixed point rasterization.
+ * Will need a 64-bit version for larger framebuffers.
+ */
+#define MAXHEIGHT 2048
+#define MAXWIDTH 2048
+#define TILES_X (MAXWIDTH / TILESIZE)
+#define TILES_Y (MAXHEIGHT / TILESIZE)
+
#define CMD_BLOCK_MAX 128
#define DATA_BLOCK_SIZE (16 * 1024 - sizeof(unsigned) - sizeof(void *))
+
/* switch to a non-pointer value for this:
*/
@@ -62,12 +71,6 @@ struct data_block_list {
};
-/* We're limited to 2K by 2K for 32bit fixed point rasterization.
- * Will need a 64-bit version for larger framebuffers.
- */
-#define MAXHEIGHT 2048
-#define MAXWIDTH 2048
-
struct setup_context {
struct lp_rasterizer *rast;
@@ -75,15 +78,15 @@ struct setup_context {
/* When there are multiple threads, will want to double-buffer the
* bin arrays:
*/
- struct cmd_block_list tile[MAXHEIGHT / TILESIZE][MAXWIDTH / TILESIZE];
+ struct cmd_block_list tile[TILES_X][TILES_Y];
struct data_block_list data;
unsigned tiles_x;
unsigned tiles_y;
struct {
- struct pipe_surface *color;
- struct pipe_surface *zstencil;
+ struct pipe_surface *cbuf;
+ struct pipe_surface *zsbuf;
} fb;
struct {
@@ -99,7 +102,7 @@ struct setup_context {
} state;
struct {
- enum lp_interp inputs[PIPE_MAX_ATTRIBS];
+ struct lp_shader_input input[PIPE_MAX_ATTRIBS];
unsigned nr_inputs;
} fs;
@@ -116,6 +119,11 @@ struct setup_context {
const float (*v2)[4]);
};
+void lp_setup_choose_triangle( struct setup_context *setup );
+void lp_setup_choose_line( struct setup_context *setup );
+void lp_setup_choose_point( struct setup_context *setup );
+
+
void lp_setup_new_data_block( struct data_block_list *list );
void lp_setup_new_cmd_block( struct cmd_block_list *list );