i965/tex_image: Flush certain subnormal ASTC channel values
authorNanley Chery <nanley.g.chery@intel.com>
Mon, 11 Apr 2016 23:33:21 +0000 (16:33 -0700)
committerNanley Chery <nanley.g.chery@intel.com>
Sat, 23 Apr 2016 18:35:08 +0000 (11:35 -0700)
commit710b1d2e665ed654fb8d52b146fa22469e1dc3a7
treec809fc8ba405f401a7cc1330fcfa8733c50641df
parente29b3bfd6e5200aebbff6f056c49e978682ccc09
i965/tex_image: Flush certain subnormal ASTC channel values

When uploading a linear, void-extent, ASTC LDR block on Skylake, we are
required to flush to zero the UNORM16 channel values that would be
denormalized. This is specifically required for the values: 1, 2, and 3.

Fixes the 14 failing tests in:
   dEQP-GLES3.functional.texture.compressed.astc.void_extent_ldr.*

v2: Split out flushing function (Kristian Høgsberg)
v3: Map with READ instead of INVALIDATE (Kenneth Graunke)

Signed-off-by: Nanley Chery <nanley.g.chery@intel.com>
Acked-by: Kenneth Graunke <kenneth@whitecape.org>
src/mesa/drivers/dri/i965/intel_tex_image.c