diff options
author | Brian Paul <[email protected]> | 2010-04-19 08:45:20 -0600 |
---|---|---|
committer | Brian Paul <[email protected]> | 2010-04-19 08:45:20 -0600 |
commit | 8f3bdeaad610d7d5a5c6e73e1e9c721219595754 (patch) | |
tree | 3375ac7eb94edf1914da7faafcedea32a2bd505b /src/gallium/drivers/llvmpipe | |
parent | f7c2d4fee3104008c21078879cbc5720d7bc1be6 (diff) | |
parent | e3a34cc7f6c9f959cdc2af4486e84587fab4d0d7 (diff) |
Merge branch '7.8'
Conflicts:
src/gallium/auxiliary/draw/draw_context.c
src/gallium/auxiliary/draw/draw_pipe_aaline.c
src/gallium/drivers/llvmpipe/lp_context.c
Diffstat (limited to 'src/gallium/drivers/llvmpipe')
-rw-r--r-- | src/gallium/drivers/llvmpipe/lp_context.c | 4 | ||||
-rw-r--r-- | src/gallium/drivers/llvmpipe/lp_state_rasterizer.c | 14 |
2 files changed, 13 insertions, 5 deletions
diff --git a/src/gallium/drivers/llvmpipe/lp_context.c b/src/gallium/drivers/llvmpipe/lp_context.c index 868e112ba3f..900740e02fa 100644 --- a/src/gallium/drivers/llvmpipe/lp_context.c +++ b/src/gallium/drivers/llvmpipe/lp_context.c @@ -163,9 +163,9 @@ llvmpipe_create_context( struct pipe_screen *screen, void *priv ) * Create drawing context and plug our rendering stage into it. */ #if USE_DRAW_LLVM - llvmpipe->draw = draw_create_with_llvm(); + llvmpipe->draw = draw_create_with_llvm(&llvmpipe->pipe); #else - llvmpipe->draw = draw_create(); + llvmpipe->draw = draw_create(&llvmpipe->pipe); #endif if (!llvmpipe->draw) goto fail; diff --git a/src/gallium/drivers/llvmpipe/lp_state_rasterizer.c b/src/gallium/drivers/llvmpipe/lp_state_rasterizer.c index 6df3ef25b0e..47f65fe72d1 100644 --- a/src/gallium/drivers/llvmpipe/lp_state_rasterizer.c +++ b/src/gallium/drivers/llvmpipe/lp_state_rasterizer.c @@ -38,19 +38,26 @@ void * llvmpipe_create_rasterizer_state(struct pipe_context *pipe, const struct pipe_rasterizer_state *rast) { + /* We do nothing special with rasterizer state. + * The CSO handle is just a pointer to a pipe_rasterizer_state object. + */ return mem_dup(rast, sizeof(*rast)); } -void llvmpipe_bind_rasterizer_state(struct pipe_context *pipe, - void *rasterizer) + + +void +llvmpipe_bind_rasterizer_state(struct pipe_context *pipe, void *handle) { struct llvmpipe_context *llvmpipe = llvmpipe_context(pipe); + const struct pipe_rasterizer_state *rasterizer = + (const struct pipe_rasterizer_state *) handle; if (llvmpipe->rasterizer == rasterizer) return; /* pass-through to draw module */ - draw_set_rasterizer_state(llvmpipe->draw, rasterizer); + draw_set_rasterizer_state(llvmpipe->draw, rasterizer, handle); llvmpipe->rasterizer = rasterizer; @@ -69,6 +76,7 @@ void llvmpipe_bind_rasterizer_state(struct pipe_context *pipe, llvmpipe->dirty |= LP_NEW_RASTERIZER; } + void llvmpipe_delete_rasterizer_state(struct pipe_context *pipe, void *rasterizer) { |