summaryrefslogtreecommitdiffstats
path: root/src/gallium/drivers/iris/iris_resolve.c
diff options
context:
space:
mode:
authorKenneth Graunke <[email protected]>2018-12-10 23:13:23 -0800
committerKenneth Graunke <[email protected]>2019-02-21 10:26:12 -0800
commit4634b754f441935064685c5fc9c4bd4184886370 (patch)
tree0c84106142fee019c4d553aca70523a2da679323 /src/gallium/drivers/iris/iris_resolve.c
parent15822f33ad21b1df0d903b479cdb57de2bfa28fa (diff)
iris: do flush for buffers still
Diffstat (limited to 'src/gallium/drivers/iris/iris_resolve.c')
-rw-r--r--src/gallium/drivers/iris/iris_resolve.c36
1 files changed, 17 insertions, 19 deletions
diff --git a/src/gallium/drivers/iris/iris_resolve.c b/src/gallium/drivers/iris/iris_resolve.c
index b1d0856d8e8..e11f0730384 100644
--- a/src/gallium/drivers/iris/iris_resolve.c
+++ b/src/gallium/drivers/iris/iris_resolve.c
@@ -95,21 +95,20 @@ resolve_sampler_views(struct iris_context *ice,
struct iris_sampler_view *isv = shs->textures[i];
struct iris_resource *res = (void *) isv->base.texture;
- if (res->base.target == PIPE_BUFFER)
- continue;
+ if (res->base.target != PIPE_BUFFER) {
+ if (consider_framebuffer) {
+ disable_rb_aux_buffer(ice, draw_aux_buffer_disabled,
+ res, isv->view.base_level, isv->view.levels,
+ "for sampling");
+ }
- if (consider_framebuffer) {
- disable_rb_aux_buffer(ice, draw_aux_buffer_disabled,
- res, isv->view.base_level, isv->view.levels,
- "for sampling");
+ iris_resource_prepare_texture(ice, batch, res, isv->view.format,
+ isv->view.base_level, isv->view.levels,
+ isv->view.base_array_layer,
+ isv->view.array_len,
+ astc5x5_wa_bits);
}
- iris_resource_prepare_texture(ice, batch, res, isv->view.format,
- isv->view.base_level, isv->view.levels,
- isv->view.base_array_layer,
- isv->view.array_len,
- astc5x5_wa_bits);
-
iris_cache_flush_for_read(batch, res->bo);
}
}
@@ -127,16 +126,15 @@ resolve_image_views(struct iris_context *ice,
const int i = u_bit_scan(&views);
struct iris_resource *res = (void *) shs->image[i].res;
- if (res->base.target == PIPE_BUFFER)
- continue;
+ if (res->base.target != PIPE_BUFFER) {
+ if (consider_framebuffer) {
+ disable_rb_aux_buffer(ice, draw_aux_buffer_disabled,
+ res, 0, ~0, "as a shader image");
+ }
- if (consider_framebuffer) {
- disable_rb_aux_buffer(ice, draw_aux_buffer_disabled,
- res, 0, ~0, "as a shader image");
+ iris_resource_prepare_image(ice, batch, res);
}
- iris_resource_prepare_image(ice, batch, res);
-
iris_cache_flush_for_read(batch, res->bo);
}
}