diff options
-rw-r--r-- | src/glsl/nir/glsl_to_nir.cpp | 4 | ||||
-rw-r--r-- | src/glsl/nir/nir.h | 5 |
2 files changed, 9 insertions, 0 deletions
diff --git a/src/glsl/nir/glsl_to_nir.cpp b/src/glsl/nir/glsl_to_nir.cpp index 6d24341ce01..c4b53f38b6b 100644 --- a/src/glsl/nir/glsl_to_nir.cpp +++ b/src/glsl/nir/glsl_to_nir.cpp @@ -167,6 +167,10 @@ glsl_to_nir(const struct gl_shader_program *shader_prog, shader_prog->TransformFeedback.NumVarying > 0; switch (stage) { + case MESA_SHADER_TESS_CTRL: + shader->info.tcs.vertices_out = shader_prog->TessCtrl.VerticesOut; + break; + case MESA_SHADER_GEOMETRY: shader->info.gs.vertices_in = shader_prog->Geom.VerticesIn; shader->info.gs.output_primitive = sh->Geom.OutputType; diff --git a/src/glsl/nir/nir.h b/src/glsl/nir/nir.h index beabcafef4e..46add22da70 100644 --- a/src/glsl/nir/nir.h +++ b/src/glsl/nir/nir.h @@ -1544,6 +1544,11 @@ typedef struct nir_shader_info { struct { unsigned local_size[3]; } cs; + + struct { + /** The number of vertices in the TCS output patch. */ + unsigned vertices_out; + } tcs; }; } nir_shader_info; |