spirv: Lower BaseVertex to FIRST_VERTEX instead of BASE_VERTEX
[mesa.git] / src / compiler / spirv / vtn_variables.c
index 0673fe80675a5f436f39e346c83c8928b4232699..9679ff6526cede567ac8111f268252681f76ce8c 100644 (file)
@@ -1296,7 +1296,10 @@ vtn_get_builtin_location(struct vtn_builder *b,
       set_mode_system_value(b, mode);
       break;
    case SpvBuiltInBaseVertex:
-      *location = SYSTEM_VALUE_BASE_VERTEX;
+      /* OpenGL gl_BaseVertex (SYSTEM_VALUE_BASE_VERTEX) is not the same
+       * semantic as SPIR-V BaseVertex (SYSTEM_VALUE_FIRST_VERTEX).
+       */
+      *location = SYSTEM_VALUE_FIRST_VERTEX;
       set_mode_system_value(b, mode);
       break;
    case SpvBuiltInBaseInstance: