gallium/u_blitter: use TXF if possible
authorMarek Olšák <marek.olsak@amd.com>
Tue, 30 May 2017 20:18:40 +0000 (22:18 +0200)
committerMarek Olšák <marek.olsak@amd.com>
Wed, 7 Jun 2017 16:10:50 +0000 (18:10 +0200)
commit4a88c7774cfae0da9f0819771efdbfb881f8af6c
treea904f8e738de8649ea95284d105f8d435a412050
parent06045685272afbbe46d76ee16c7ad486c9972447
gallium/u_blitter: use TXF if possible

This fixes piglit:
    arb_texture_view-rendering-r32ui

TEX (image_sample) flushes denorms to 0 with FP32 textures on GCN, but such
a texture can contain integer data written using an integer render view.
If we do a transfer blit with TEX, denorms are flushed to 0. Luckily,
TXF (image_load) doesn't do that.

TXF also doesn't need to load the sampler state, so blit shaders don't have
to do s_load_dwordx4.

TXF doesn't do CLAMP_TO_EDGE, so it can only be used if the src box is
in bounds, or if we clamp manually (this commit doesn't).

Reviewed-by: Nicolai Hähnle <nicolai.haehnle@amd.com>
src/gallium/auxiliary/util/u_blitter.c