<div dir="ltr"><div class="gmail_extra"><div class="gmail_quote">On Tue, Jan 31, 2017 at 7:11 PM, Jason Ekstrand <span dir="ltr"><<a href="mailto:jason@jlekstrand.net" target="_blank">jason@jlekstrand.net</a>></span> wrote:<br><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><div class="gmail_extra">Looks really good!  I made a comment earlier about how it would be good to add a couple more #defines for these magic vertex buffer handles.  Also, now that things are working, I'd like to re-confirm whether or not vertex buffer 33 works.  If it does, we should use it.  If it doesn't, then I'm fine with dropping the limit.<br></div></blockquote><div><br></div><div>I had another thought on the buffer 33... Doing a little digging through the docs, it appears that the hardware only started supporting 34 vertex buffers on Sky Lake but it has supported 34 vertex elements since Ivy Bridge or even earlier.  If we were somehow able to use the same buffer for DrawID as we did for BaseVertex and BaseInstance, we could keep the limit at 32.  I'm not seeing any real good way to do that in the indirect draw case so let's go ahead and drop the limit to 31 for now and figure out how to be more clever later.<br></div><div> </div><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><div class="gmail_extra"><div class="gmail_quote"><span class="">On Tue, Jan 31, 2017 at 7:00 AM, Lionel Landwerlin <span dir="ltr"><<a href="mailto:lionel.g.landwerlin@intel.com" target="_blank">lionel.g.landwerlin@intel.com</a><wbr>></span> wrote:<br></span><div><div class="h5"><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">Enables 10 tests from:<br>
<br>
   dEQP-VK.draw.shader_draw_para<wbr>meters.*<br>
<br>
Signed-off-by: Lionel Landwerlin <<a href="mailto:lionel.g.landwerlin@intel.com" target="_blank">lionel.g.landwerlin@intel.com</a><wbr>><br>
---<br>
 src/intel/vulkan/anv_device.<wbr>c   | 4 ++++<br>
 src/intel/vulkan/anv_<wbr>pipeline.c | 1 +<br>
 2 files changed, 5 insertions(+)<br>
<br>
diff --git a/src/intel/vulkan/anv_device.<wbr>c b/src/intel/vulkan/anv_device.<wbr>c<br>
index 3403dc126a..91ee67f053 100644<br>
--- a/src/intel/vulkan/anv_device.<wbr>c<br>
+++ b/src/intel/vulkan/anv_device.<wbr>c<br>
@@ -272,6 +272,10 @@ static const VkExtensionProperties device_extensions[] = {<br>
       .extensionName = VK_KHR_MAINTENANCE1_EXTENSION_<wbr>NAME,<br>
       .specVersion = 1,<br>
    },<br>
+   {<br>
+      .extensionName = VK_KHR_SHADER_DRAW_PARAMETERS_<wbr>EXTENSION_NAME,<br>
+      .specVersion = 1,<br>
+   }<br>
 };<br>
<br>
 static void *<br>
diff --git a/src/intel/vulkan/anv_pipelin<wbr>e.c b/src/intel/vulkan/anv_pipelin<wbr>e.c<br>
index 2060c6d2f6..ca3823c2b6 100644<br>
--- a/src/intel/vulkan/anv_pipelin<wbr>e.c<br>
+++ b/src/intel/vulkan/anv_pipelin<wbr>e.c<br>
@@ -127,6 +127,7 @@ anv_shader_compile_to_nir(stru<wbr>ct anv_device *device,<br>
    const struct nir_spirv_supported_extensions supported_ext = {<br>
       .float64 = device->instance->physicalDevi<wbr>ce.info.gen >= 8,<br>
       .tessellation = true,<br>
+      .draw_parameters = true,<br>
    };<br>
<br>
    nir_function *entry_point =<br>
<span class="m_-6282418242208020244HOEnZb"><font color="#888888">--<br>
2.11.0<br>
<br>
______________________________<wbr>_________________<br>
mesa-dev mailing list<br>
<a href="mailto:mesa-dev@lists.freedesktop.org" target="_blank">mesa-dev@lists.freedesktop.org</a><br>
<a href="https://lists.freedesktop.org/mailman/listinfo/mesa-dev" rel="noreferrer" target="_blank">https://lists.freedesktop.org/<wbr>mailman/listinfo/mesa-dev</a><br>
</font></span></blockquote></div></div></div><br></div>
</blockquote></div><br></div></div>