nir: check shader type before writing to shaderinfo.tess union
[mesa.git] / src / compiler / nir / nir_gather_info.c
index d902fb7b69ec425132deb55dbfa55ba0761f1669..ef5d053c26673ab46b8f987c3a05969f7a1bcacf 100644 (file)
@@ -106,7 +106,7 @@ set_io_mask(nir_shader *shader, nir_variable *var, int offset, int len,
                shader->info.inputs_read_indirectly |= bitfield;
          }
 
-         if (cross_invocation)
+         if (cross_invocation && shader->info.stage == MESA_SHADER_TESS_CTRL)
             shader->info.tess.tcs_cross_invocation_inputs_read |= bitfield;
 
          if (shader->info.stage == MESA_SHADER_FRAGMENT) {
@@ -125,7 +125,7 @@ set_io_mask(nir_shader *shader, nir_variable *var, int offset, int len,
                   shader->info.outputs_accessed_indirectly |= bitfield;
             }
 
-            if (cross_invocation)
+            if (cross_invocation && shader->info.stage == MESA_SHADER_TESS_CTRL)
                shader->info.tess.tcs_cross_invocation_outputs_read |= bitfield;
          } else {
             if (is_patch_generic) {