aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorMarek Olšák <[email protected]>2018-04-02 21:30:41 -0400
committerMarek Olšák <[email protected]>2018-04-13 12:31:04 -0400
commit8a28679987dc768e868c7123e0daea7dd02ab05e (patch)
treed2970ddd90ef77dc63d3d3cacb93c4253102877f
parent307bccc6df20e02adb0276d142bb71fdc9928500 (diff)
radeonsi: don't do GFX-specific texture decompression for compute
Reviewed-by: Samuel Pitoiset <[email protected]> Tested-by: Dieter Nützel <[email protected]>
-rw-r--r--src/gallium/drivers/radeonsi/si_blit.c20
1 files changed, 10 insertions, 10 deletions
diff --git a/src/gallium/drivers/radeonsi/si_blit.c b/src/gallium/drivers/radeonsi/si_blit.c
index 35506dd74b3..d6eab58b3a8 100644
--- a/src/gallium/drivers/radeonsi/si_blit.c
+++ b/src/gallium/drivers/radeonsi/si_blit.c
@@ -801,22 +801,22 @@ void si_decompress_textures(struct si_context *sctx, unsigned shader_mask)
si_decompress_resident_textures(sctx);
if (sctx->uses_bindless_images)
si_decompress_resident_images(sctx);
+
+ if (sctx->ps_uses_fbfetch) {
+ struct pipe_surface *cb0 = sctx->framebuffer.state.cbufs[0];
+ si_decompress_color_texture(sctx,
+ (struct r600_texture*)cb0->texture,
+ cb0->u.tex.first_layer,
+ cb0->u.tex.last_layer);
+ }
+
+ si_check_render_feedback(sctx);
} else if (shader_mask & (1 << PIPE_SHADER_COMPUTE)) {
if (sctx->cs_shader_state.program->uses_bindless_samplers)
si_decompress_resident_textures(sctx);
if (sctx->cs_shader_state.program->uses_bindless_images)
si_decompress_resident_images(sctx);
}
-
- if (sctx->ps_uses_fbfetch) {
- struct pipe_surface *cb0 = sctx->framebuffer.state.cbufs[0];
- si_decompress_color_texture(sctx,
- (struct r600_texture*)cb0->texture,
- cb0->u.tex.first_layer,
- cb0->u.tex.last_layer);
- }
-
- si_check_render_feedback(sctx);
}
/* Helper for decompressing a portion of a color or depth resource before