anv: Use pass attachment information to insert flushes
authorJason Ekstrand <jason.ekstrand@intel.com>
Wed, 16 Nov 2016 07:11:55 +0000 (23:11 -0800)
committerJason Ekstrand <jason.ekstrand@intel.com>
Tue, 22 Nov 2016 21:44:55 +0000 (13:44 -0800)
commit0b01262844561cbd505dfcff396d3f4de2b30300
tree90380c01f92b3892b9f53060d54f936d46ed0d81
parent57174d60421e9e63569335a269cd806703f5da5d
anv: Use pass attachment information to insert flushes

Input and resolve attachments can cause an implicit dependency in the
pipeline.  It's our job to insert the needed flushes.  Fortunately, we can
easily reuse the usage tracking that we use for CCS resolves.

This fixes 159 Vulkan CTS tests on Haswell because we're now flushing in
between drawing and MSAA resolves.  I have no idea how they were passing
before on newer hardware.

Reviewed-by: Jordan Justen <jordan.l.justen@intel.com>
src/intel/vulkan/anv_blorp.c