summaryrefslogtreecommitdiffstats
path: root/src/gallium/drivers/radeonsi/si_blit.c
diff options
context:
space:
mode:
authorMarek Olšák <[email protected]>2014-06-18 02:46:49 +0200
committerMarek Olšák <[email protected]>2014-07-18 01:58:59 +0200
commitdd46841bc9685b48c972ebe5f5cf92770cf025fd (patch)
tree271fad13df6b5cc05ba96cab0ac78349de18cdd9 /src/gallium/drivers/radeonsi/si_blit.c
parent2a7b57ad4269e7267922ff695a57b9a2ce413a06 (diff)
radeonsi: move sampler descriptors from IB to memory
Sampler descriptors are now represented by si_descriptors. This also adds support for fine-grained sampler state updates and the border color update is now isolated in a separate function. Border colors have been broken if texturing from multiple shader stages is used. This patch doesn't change that. BTW, blitting already makes use of fine-grained state updates. u_blitter uses 2 textures at most, so we only have to save 2. Reviewed-by: Michel Dänzer <[email protected]>
Diffstat (limited to 'src/gallium/drivers/radeonsi/si_blit.c')
-rw-r--r--src/gallium/drivers/radeonsi/si_blit.c4
1 files changed, 2 insertions, 2 deletions
diff --git a/src/gallium/drivers/radeonsi/si_blit.c b/src/gallium/drivers/radeonsi/si_blit.c
index 072024aa323..a76d9052494 100644
--- a/src/gallium/drivers/radeonsi/si_blit.c
+++ b/src/gallium/drivers/radeonsi/si_blit.c
@@ -71,8 +71,8 @@ static void si_blitter_begin(struct pipe_context *ctx, enum si_blitter_op op)
if (op & SI_SAVE_TEXTURES) {
util_blitter_save_fragment_sampler_states(
- sctx->blitter, sctx->samplers[PIPE_SHADER_FRAGMENT].n_samplers,
- (void**)sctx->samplers[PIPE_SHADER_FRAGMENT].samplers);
+ sctx->blitter, 2,
+ sctx->samplers[PIPE_SHADER_FRAGMENT].states.saved_states);
util_blitter_save_fragment_sampler_views(sctx->blitter,
util_last_bit(sctx->samplers[PIPE_SHADER_FRAGMENT].views.desc.enabled_mask &