OSDN Git Service

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)
committerEmil Velikov <emil.l.velikov@gmail.com>
Thu, 1 Sep 2016 10:39:44 +0000 (11:39 +0100)
commit42fe24537024e15f5d98efbf160ba3b7fd67a2a8
tree31c76ab2ea982ef5d4a6f99821052c39f568a7c1
parent015b920fb461858c6658a749b4dfc813d01886b9
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>
(cherry picked from commit 7bdccd104bf49861adfd891ea35884f2197e1c44)
[Emil Velikov: rgb9e5 header is renamed in master
s/format_rgb9e5.h/u_format_rgb9e5.h/]
Signed-off-by: Emil Velikov <emil.velikov@collabora.com>
src/intel/vulkan/anv_meta_clear.c