llvmpipe: Basic implementation of pipe_context::set_sample_mask.
authorJosé Fonseca <jfonseca@vmware.com>
Mon, 6 Jan 2014 18:45:49 +0000 (18:45 +0000)
committerJosé Fonseca <jfonseca@vmware.com>
Tue, 7 Jan 2014 16:04:42 +0000 (16:04 +0000)
commit2d368b982af5e6566c7da7fd2bc8b190af28188b
treee6102cbfd74fd819851fb45db42927d98b6eed15
parent95bf222603bbbb643a6119e370c6a616ccc5ceaf
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 <sroland@vmware.com>
Reviewed-by: Si Chen <sichen@vmware.com>
src/gallium/drivers/llvmpipe/lp_context.h
src/gallium/drivers/llvmpipe/lp_setup.c
src/gallium/drivers/llvmpipe/lp_state_blend.c
src/gallium/drivers/llvmpipe/lp_state_derived.c
src/gallium/drivers/llvmpipe/lp_state_rasterizer.c