summaryrefslogtreecommitdiffstats
path: root/src/gallium/drivers/llvmpipe/lp_context.c
diff options
context:
space:
mode:
authorKeith Whitwell <[email protected]>2010-05-28 16:54:35 +0100
committerKeith Whitwell <[email protected]>2010-06-07 16:39:02 +0100
commita6d9d18faecef9963be3e4b64a21b89889b4670d (patch)
tree13e11a9f52d72f3ae5ae15fa54b9467b0ce2dba1 /src/gallium/drivers/llvmpipe/lp_context.c
parent0cdc0a702c0ce0c93e82f32b30c8d6cdfc1d744e (diff)
llvmpipe: hook up basic gs and multiple constant buffer support
Diffstat (limited to 'src/gallium/drivers/llvmpipe/lp_context.c')
-rw-r--r--src/gallium/drivers/llvmpipe/lp_context.c7
1 files changed, 4 insertions, 3 deletions
diff --git a/src/gallium/drivers/llvmpipe/lp_context.c b/src/gallium/drivers/llvmpipe/lp_context.c
index 32b80d3a9f6..9e88a6e09f4 100644
--- a/src/gallium/drivers/llvmpipe/lp_context.c
+++ b/src/gallium/drivers/llvmpipe/lp_context.c
@@ -48,7 +48,7 @@
static void llvmpipe_destroy( struct pipe_context *pipe )
{
struct llvmpipe_context *llvmpipe = llvmpipe_context( pipe );
- uint i;
+ uint i, j;
lp_print_counters();
@@ -72,8 +72,8 @@ static void llvmpipe_destroy( struct pipe_context *pipe )
}
for (i = 0; i < Elements(llvmpipe->constants); i++) {
- if (llvmpipe->constants[i]) {
- pipe_resource_reference(&llvmpipe->constants[i], NULL);
+ for (j = 0; j < Elements(llvmpipe->constants[i]); j++) {
+ pipe_resource_reference(&llvmpipe->constants[i][j], NULL);
}
}
@@ -112,6 +112,7 @@ llvmpipe_create_context( struct pipe_screen *screen, void *priv )
llvmpipe_init_vertex_funcs(llvmpipe);
llvmpipe_init_fs_funcs(llvmpipe);
llvmpipe_init_vs_funcs(llvmpipe);
+ llvmpipe_init_gs_funcs(llvmpipe);
llvmpipe_init_rasterizer_funcs(llvmpipe);
llvmpipe_init_context_resource_funcs( &llvmpipe->pipe );
llvmpipe_init_surface_functions(llvmpipe);