summaryrefslogtreecommitdiffstats
path: root/src/gallium/drivers/llvmpipe/lp_setup.c
diff options
context:
space:
mode:
authorJosé Fonseca <[email protected]>2014-01-06 18:45:49 +0000
committerJosé Fonseca <[email protected]>2014-01-07 16:04:42 +0000
commit2d368b982af5e6566c7da7fd2bc8b190af28188b (patch)
treee6102cbfd74fd819851fb45db42927d98b6eed15 /src/gallium/drivers/llvmpipe/lp_setup.c
parent95bf222603bbbb643a6119e370c6a616ccc5ceaf (diff)
llvmpipe: Basic implementation of pipe_context::set_sample_mask.
We don't support MSAA (ie, number of samples is always one) therefore sample_mask boils down to a synonym of the rasterizer_discard flag. Also, this change makes setup actually use the value received in lp_setup_set_rasterizer_discard instead of reaching out to llvmpipe upper layers to re-fetch it. Based on Si Chen's draft. With this patch `wgf11multisample Coverage passes 100%` on the UMD D3D10 state tracker. Reviewed-by: Roland Scheidegger <[email protected]> Reviewed-by: Si Chen <[email protected]>
Diffstat (limited to 'src/gallium/drivers/llvmpipe/lp_setup.c')
-rw-r--r--src/gallium/drivers/llvmpipe/lp_setup.c7
1 files changed, 2 insertions, 5 deletions
diff --git a/src/gallium/drivers/llvmpipe/lp_setup.c b/src/gallium/drivers/llvmpipe/lp_setup.c
index 2fad469d197..7f2223129aa 100644
--- a/src/gallium/drivers/llvmpipe/lp_setup.c
+++ b/src/gallium/drivers/llvmpipe/lp_setup.c
@@ -66,9 +66,6 @@ static boolean try_update_scene_state( struct lp_setup_context *setup );
static void
lp_setup_get_empty_scene(struct lp_setup_context *setup)
{
- struct llvmpipe_context *lp = llvmpipe_context(setup->pipe);
- boolean discard = lp->rasterizer ? lp->rasterizer->rasterizer_discard : FALSE;
-
assert(setup->scene == NULL);
setup->scene_idx++;
@@ -84,8 +81,8 @@ lp_setup_get_empty_scene(struct lp_setup_context *setup)
lp_fence_wait(setup->scene->fence);
}
- lp_scene_begin_binning(setup->scene, &setup->fb, discard);
-
+ lp_scene_begin_binning(setup->scene, &setup->fb, setup->rasterizer_discard);
+
}