On Wed, May 3, 2017 at 12:15 AM, Iago Toral <ito...@igalia.com> wrote:
> Hi Jason > > Sorry that I missed this. All the changes look good to me and I have > sent reviews for the patches that missed them. With this series we pass > all the multiview tests. Thanks! > > Iago > > On Thu, 2017-04-27 at 09:31 -0700, Jason Ekstrand wrote: > > This is mostly a re-send of my earlier patches but there are a few > > changes. > > I think, at this point, that I'm ready to merge it assuming Iago is > > ok with > > the changes. The important chages are: > > > > 1. The lowering pass has been altered to take a view mask instead of > > a > > subpass. The rest of the anv_pipeline code has also been > > modified to > > properly incorporate the view mask into the shader key. > > 2. There have been two fixes to the code which multiplies the number > > of > > invocations by the number of views. First was that I > > accidentally used > > AND instead of ADD. Second was an off-by-one error when adding > > ALU > > operations to an MI_MATH instruction that made us stomp the > > MI_MATH > > instruction itself instead of starting on dword 1. > > > > 3. I've added a trivial implementation of multiDrawIndirect. This > > isn't > > really required but some of the tests erroneously required it by > > mistake. I'm not 100% sure that I like having a software > > implementation of multiDrawIndirect but it's no worse (and > > probably > > slightly better) than an application fall-back would be. > > Jason Ekstrand (14): > > compiler: Add a system value and varying for ViewIndex > > spirv: Bump the SPIR-V header to the latest public version > > spirv: Add support for SPV_KHR_multiview > > anv/nir: Delete the apply_dynamic_offsets prototype > > anv: Add the KHX_multiview boilerplate > > anv/pass: Store the per-subpass view mask > > anv: Move shader hashing to anv_pipeline > > anv/pipeline: Call nir_gather_info later > > anv/pipeline: Add a subpass field to anv_pipeline > > anv/pipeline: Add shader lowering for multiview > > anv/cmd_buffer: Pull indirect draw parameter loading into a helper > > anv/cmd_buffer: Emit instanced draws for multiple views > > anv: Enable VK_KHX_multiview and SPV_KHR_multiview > > anv: Trivially implement multiDrawIndirect > > > > src/compiler/nir/nir.c | 4 + > > src/compiler/nir/nir_intrinsics.h | 1 + > > src/compiler/shader_enums.c | 2 + > > src/compiler/shader_enums.h | 4 + > > src/compiler/spirv/nir_spirv.h | 1 + > > src/compiler/spirv/spirv.h | 34 ++++- > > src/compiler/spirv/spirv_to_nir.c | 4 + > > src/compiler/spirv/vtn_variables.c | 4 + > > src/intel/Makefile.sources | 1 + > > src/intel/vulkan/anv_device.c | 23 ++- > > src/intel/vulkan/anv_entrypoints_gen.py | 1 + > > src/intel/vulkan/anv_nir.h | 5 +- > > src/intel/vulkan/anv_nir_lower_multiview.c | 234 > > +++++++++++++++++++++++++++++ > > src/intel/vulkan/anv_pass.c | 19 +++ > > src/intel/vulkan/anv_pipeline.c | 83 +++++++--- > > src/intel/vulkan/anv_pipeline_cache.c | 27 ---- > > src/intel/vulkan/anv_private.h | 15 +- > > src/intel/vulkan/genX_cmd_buffer.c | 209 > > ++++++++++++++++++++++---- > > src/intel/vulkan/genX_pipeline.c | 9 +- > > src/mesa/program/prog_print.c | 2 + > > 20 files changed, 588 insertions(+), 94 deletions(-) > > create mode 100644 src/intel/vulkan/anv_nir_lower_multiview.c > > >
_______________________________________________ mesa-dev mailing list mesa-dev@lists.freedesktop.org https://lists.freedesktop.org/mailman/listinfo/mesa-dev