diff options
Diffstat (limited to 'src/gallium/drivers/freedreno/a5xx')
-rw-r--r-- | src/gallium/drivers/freedreno/a5xx/fd5_image.c | 8 |
1 files changed, 3 insertions, 5 deletions
diff --git a/src/gallium/drivers/freedreno/a5xx/fd5_image.c b/src/gallium/drivers/freedreno/a5xx/fd5_image.c index f5d25ff8a69..028497f3a10 100644 --- a/src/gallium/drivers/freedreno/a5xx/fd5_image.c +++ b/src/gallium/drivers/freedreno/a5xx/fd5_image.c @@ -219,11 +219,10 @@ fd5_emit_images(struct fd_context *ctx, struct fd_ringbuffer *ring, enum pipe_shader_type shader) { struct fd_shaderimg_stateobj *so = &ctx->shaderimg[shader]; + unsigned enabled_mask = so->enabled_mask; - so->dirty_mask &= so->enabled_mask; - - while (so->dirty_mask) { - unsigned index = u_bit_scan(&so->dirty_mask); + while (enabled_mask) { + unsigned index = u_bit_scan(&enabled_mask); unsigned slot = get_image_slot(index); struct fd5_image img; @@ -233,4 +232,3 @@ fd5_emit_images(struct fd_context *ctx, struct fd_ringbuffer *ring, emit_image_ssbo(ring, slot, &img, shader); } } - |