summaryrefslogtreecommitdiff
path: root/src/gallium/drivers/llvmpipe/lp_state_blend.c
diff options
context:
space:
mode:
Diffstat (limited to 'src/gallium/drivers/llvmpipe/lp_state_blend.c')
-rw-r--r--src/gallium/drivers/llvmpipe/lp_state_blend.c9
1 files changed, 9 insertions, 0 deletions
diff --git a/src/gallium/drivers/llvmpipe/lp_state_blend.c b/src/gallium/drivers/llvmpipe/lp_state_blend.c
index 6bba9077d1..b0fc1d3812 100644
--- a/src/gallium/drivers/llvmpipe/lp_state_blend.c
+++ b/src/gallium/drivers/llvmpipe/lp_state_blend.c
@@ -177,6 +177,13 @@ static void
llvmpipe_set_sample_mask(struct pipe_context *pipe,
unsigned sample_mask)
{
+ struct llvmpipe_context *llvmpipe = llvmpipe_context(pipe);
+
+ if (sample_mask != llvmpipe->sample_mask) {
+ llvmpipe->sample_mask = sample_mask;
+
+ llvmpipe->dirty |= LP_NEW_RASTERIZER;
+ }
}
void
@@ -194,4 +201,6 @@ llvmpipe_init_blend_funcs(struct llvmpipe_context *llvmpipe)
llvmpipe->pipe.set_stencil_ref = llvmpipe_set_stencil_ref;
llvmpipe->pipe.set_sample_mask = llvmpipe_set_sample_mask;
+
+ llvmpipe->sample_mask = ~0;
}