<div dir="ltr"><div class="gmail_extra"><div class="gmail_quote">On Mon, Jan 9, 2017 at 4:50 AM, Iago Toral Quiroga <span dir="ltr"><<a href="mailto:itoral@igalia.com" target="_blank">itoral@igalia.com</a>></span> wrote:<br><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">Geometry and Tessellation stages do handle this as a system value instead.<br>
<br>
Fixes:<br>
dEQP-VK.geometry.basic.<wbr>primitive_id<br>
---<br>
 src/compiler/spirv/vtn_<wbr>variables.c | 3 ++-<br>
 1 file changed, 2 insertions(+), 1 deletion(-)<br>
<br>
diff --git a/src/compiler/spirv/vtn_<wbr>variables.c b/src/compiler/spirv/vtn_<wbr>variables.c<br>
index 9b84c97..cf47e5d 100644<br>
--- a/src/compiler/spirv/vtn_<wbr>variables.c<br>
+++ b/src/compiler/spirv/vtn_<wbr>variables.c<br>
@@ -908,7 +908,8 @@ vtn_get_builtin_location(<wbr>struct vtn_builder *b,<br>
       set_mode_system_value(mode);<br>
       break;<br>
    case SpvBuiltInPrimitiveId:<br>
-      if (*mode == nir_var_shader_out) {<br>
+      if (*mode == nir_var_shader_out ||<br>
+          b->shader->stage == MESA_SHADER_FRAGMENT) {<br></blockquote><div><br></div><div>Can we do this instead:<br><br></div><div>if (b->shader->stage == MESA_SHADER_FRAGMENT) {<br></div><div>   assert(*mode == nir_var_shader_in);<br></div><div>   *location = VARYING_SLOT_PRIMITIVE_ID;<br></div><div>} else if (*mode == nir_var_shader_out) {<br>   ...<br></div><div> </div><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">
          *location = VARYING_SLOT_PRIMITIVE_ID;<br>
       } else {<br>
          *location = SYSTEM_VALUE_PRIMITIVE_ID;<br>
<span class="HOEnZb"><font color="#888888">--<br>
2.7.4<br>
<br>
______________________________<wbr>_________________<br>
mesa-dev mailing list<br>
<a href="mailto:mesa-dev@lists.freedesktop.org">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><br></div></div>