anv/clear: Clear E5B9G9R9 images as R32_UINT
authorJason Ekstrand <jason.ekstrand@intel.com>
Wed, 3 Aug 2016 18:41:45 +0000 (11:41 -0700)
committerJason Ekstrand <jason.ekstrand@intel.com>
Tue, 23 Aug 2016 18:45:25 +0000 (11:45 -0700)
commit7bdccd104bf49861adfd891ea35884f2197e1c44
tree819e5ca62a2e64fd46f1ab9fb9f05c1aa4128d0a
parentafa7ca0f7764a049b0ff870fb6964207393be533
anv/clear: Clear E5B9G9R9 images as R32_UINT

We can't actually clear these images normally because we can't render to
them.  Instead, we have to manually unpack the rgb9e5 color value on the
CPU and clear it as R32_UINT.  We still have a bit of work to do to clear
non-power-of-two images, but this should get all of the power-of-two clears
working on at least Haswell.  This fixes three of the new Vulkan CTS tests
in the dEQP-VK.api.image_clearing.clear_color_image.* group.

Signed-off-by: Jason Ekstrand <jason@jlekstrand.net>
Reviewed-by: Nanley Chery <nanley.g.chery@intel.com>
Cc: "12.0" <mesa-stable@lists.freedesktop.org>
src/intel/vulkan/anv_meta_clear.c