summaryrefslogtreecommitdiffstats
path: root/src/gallium/drivers/iris/iris_state.c
diff options
context:
space:
mode:
Diffstat (limited to 'src/gallium/drivers/iris/iris_state.c')
-rw-r--r--src/gallium/drivers/iris/iris_state.c4
1 files changed, 4 insertions, 0 deletions
diff --git a/src/gallium/drivers/iris/iris_state.c b/src/gallium/drivers/iris/iris_state.c
index 0b5e1a3aa01..e07bd8919db 100644
--- a/src/gallium/drivers/iris/iris_state.c
+++ b/src/gallium/drivers/iris/iris_state.c
@@ -1371,6 +1371,8 @@ iris_bind_sampler_states(struct pipe_context *ctx,
shs->samplers[start + i] = states[i];
}
+ // XXX: count may include NULLs
+
/* Assemble the SAMPLER_STATEs into a contiguous table that lives
* in the dynamic state memory zone, so we can point to it via the
* 3DSTATE_SAMPLER_STATE_POINTERS_* commands.
@@ -1666,6 +1668,8 @@ iris_set_shader_images(struct pipe_context *ctx,
gl_shader_stage stage = stage_from_pipe(p_stage);
struct iris_shader_state *shs = &ice->state.shaders[stage];
+ shs->num_images = MAX2(shs->num_images, start_slot + count);
+
for (unsigned i = 0; i < count; i++) {
if (p_images && p_images[i].resource) {
const struct pipe_image_view *img = &p_images[i];