X-Git-Url: https://git.libre-soc.org/?a=blobdiff_plain;f=src%2Fgallium%2Fdrivers%2Fllvmpipe%2Flp_state_blend.c;h=3c898c38c24e8ffdfa4a34db85e61a7bda16a462;hb=0bf667984b074105be62116fa76be42b2a422e28;hp=6bba9077d1b5a88c5ebde9d8c2f2b4661bb118db;hpb=5f00819cb382bdb70c29e2db3c6ff22a879bf10f;p=mesa.git diff --git a/src/gallium/drivers/llvmpipe/lp_state_blend.c b/src/gallium/drivers/llvmpipe/lp_state_blend.c index 6bba9077d1b..3c898c38c24 100644 --- a/src/gallium/drivers/llvmpipe/lp_state_blend.c +++ b/src/gallium/drivers/llvmpipe/lp_state_blend.c @@ -1,7 +1,7 @@ /************************************************************************** * * Copyright 2009 VMware, Inc. - * Copyright 2007 Tungsten Graphics, Inc., Cedar Park, Texas. + * Copyright 2007 VMware, Inc. * All Rights Reserved. * * Permission is hereby granted, free of charge, to any person obtaining a @@ -19,7 +19,7 @@ * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS * OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF * MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NON-INFRINGEMENT. - * IN NO EVENT SHALL TUNGSTEN GRAPHICS AND/OR ITS SUPPLIERS BE LIABLE FOR + * IN NO EVENT SHALL VMWARE AND/OR ITS SUPPLIERS BE LIABLE FOR * ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, * TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE * SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. @@ -28,7 +28,7 @@ /** * @author Jose Fonseca - * @author Keith Whitwell + * @author Keith Whitwell */ #include "util/u_memory.h" @@ -87,7 +87,7 @@ llvmpipe_set_blend_color(struct pipe_context *pipe, { struct llvmpipe_context *llvmpipe = llvmpipe_context(pipe); - if(!blend_color) + if (!blend_color) return; if(memcmp(&llvmpipe->blend_color, blend_color, sizeof *blend_color) == 0) @@ -159,7 +159,7 @@ llvmpipe_set_stencil_ref(struct pipe_context *pipe, { struct llvmpipe_context *llvmpipe = llvmpipe_context(pipe); - if(!stencil_ref) + if (!stencil_ref) return; if(memcmp(&llvmpipe->stencil_ref, stencil_ref, sizeof *stencil_ref) == 0) @@ -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; }