summaryrefslogtreecommitdiff
path: root/src/gallium/drivers/llvmpipe/lp_state_fs.h
diff options
context:
space:
mode:
authorJosé Fonseca <jfonseca@vmware.com>2010-09-03 20:26:13 +0100
committerJosé Fonseca <jfonseca@vmware.com>2010-09-05 10:17:51 +0100
commit00989d5bfc29f632886066d048a366ff4d2d03bc (patch)
tree05813febde24d9cac582cbd93123e0d59b7e0812 /src/gallium/drivers/llvmpipe/lp_state_fs.h
parentf25b6e546e66955d70a1aa72135a5054c4f0ed3e (diff)
llvmpipe: Relax the colormask constraint on opaque.
Also, include the color buffer in the key. Not having it there causes a tight knots in the logic to determine when it is OK or not to discard previous color buffer contents.
Diffstat (limited to 'src/gallium/drivers/llvmpipe/lp_state_fs.h')
-rw-r--r--src/gallium/drivers/llvmpipe/lp_state_fs.h5
1 files changed, 4 insertions, 1 deletions
diff --git a/src/gallium/drivers/llvmpipe/lp_state_fs.h b/src/gallium/drivers/llvmpipe/lp_state_fs.h
index 33c480010d..f2c46a6405 100644
--- a/src/gallium/drivers/llvmpipe/lp_state_fs.h
+++ b/src/gallium/drivers/llvmpipe/lp_state_fs.h
@@ -51,12 +51,15 @@ struct lp_fragment_shader_variant_key
struct pipe_stencil_state stencil[2];
struct pipe_alpha_state alpha;
struct pipe_blend_state blend;
- enum pipe_format zsbuf_format;
+
unsigned nr_cbufs:8;
unsigned nr_samplers:8; /* actually derivable from just the shader */
unsigned flatshade:1;
unsigned occlusion_count:1;
+ enum pipe_format zsbuf_format;
+ enum pipe_format cbuf_format[PIPE_MAX_COLOR_BUFS];
+
struct lp_sampler_static_state sampler[PIPE_MAX_SAMPLERS];
};