diff options
author | Michel Dänzer <[email protected]> | 2013-11-21 16:45:28 +0900 |
---|---|---|
committer | Michel Dänzer <[email protected]> | 2014-01-29 11:06:28 +0900 |
commit | 404b29d765e2fe4d2bf80d17063e5672d2d59ca1 (patch) | |
tree | db18b59b6517c6dde9fb92f6a6e26a636e9176fd /src/gallium/drivers/radeonsi/si_pipe.c | |
parent | 51f89a03e1f8cee7de46735bb1ee6af388409b6d (diff) |
radeonsi: Initial geometry shader support
Partly based on the corresponding r600g work by Vadim Girlin and Dave
Airlie.
Reviewed-by: Marek Olšák <[email protected]>
Diffstat (limited to 'src/gallium/drivers/radeonsi/si_pipe.c')
-rw-r--r-- | src/gallium/drivers/radeonsi/si_pipe.c | 10 |
1 files changed, 10 insertions, 0 deletions
diff --git a/src/gallium/drivers/radeonsi/si_pipe.c b/src/gallium/drivers/radeonsi/si_pipe.c index 5182ec1d478..0057f50dcc7 100644 --- a/src/gallium/drivers/radeonsi/si_pipe.c +++ b/src/gallium/drivers/radeonsi/si_pipe.c @@ -83,6 +83,16 @@ static void si_destroy_context(struct pipe_context *context) pipe_resource_reference(&sctx->null_const_buf.buffer, NULL); r600_resource_reference(&sctx->border_color_table, NULL); + if (sctx->gs_on) { + si_pm4_free_state(sctx, sctx->gs_on, 0); + } + if (sctx->gs_off) { + si_pm4_free_state(sctx, sctx->gs_off, 0); + } + if (sctx->gs_rings) { + si_pm4_free_state(sctx, sctx->gs_rings, 0); + } + if (sctx->dummy_pixel_shader) { sctx->b.b.delete_fs_state(&sctx->b.b, sctx->dummy_pixel_shader); } |