anv: Set up binding tables and surface states for input attachments
authorJason Ekstrand <jason.ekstrand@intel.com>
Tue, 15 Nov 2016 23:25:55 +0000 (15:25 -0800)
committerJason Ekstrand <jason.ekstrand@intel.com>
Tue, 22 Nov 2016 21:44:55 +0000 (13:44 -0800)
commit1d5ac0a462ac8c7f41e1e1adb1fc5a7db6038d17
tree80fbf2f8417adc459cff6faf413ec96be0d45fe0
parent140d041fac24b6140f8df8f02418b8bc1503d4a8
anv: Set up binding tables and surface states for input attachments

This commit adds the last remaining bits to support input attachments in
the Intel Vulkan driver.  For color and depth attachments, we allocate an
input attachment surface state during vkCmdBeginRenderPass like we do for
the render target surface states.  This is so that we can incorporate the
clear color and aux information as used in rendering.  For stencil, we just
treat it like a regular texture because we don't there is no aux.  Also,
only having to worry about at most one input attachment surface for each
attachment makes some of the vkCmdBeginRenderPass code simpler.

Reviewed-by: Jordan Justen <jordan.l.justen@intel.com>
src/intel/vulkan/anv_descriptor_set.c
src/intel/vulkan/anv_image.c
src/intel/vulkan/anv_private.h
src/intel/vulkan/genX_cmd_buffer.c
src/intel/vulkan/vk_format_info.h