summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorTimothy Arceri <[email protected]>2017-11-08 15:43:16 +1100
committerTimothy Arceri <[email protected]>2017-11-16 10:54:03 +1100
commita8bdf0e0c4c792634551c14e2dd02d72b75a8db5 (patch)
treeb9062da3d07db576bac185c1b86ae8a6f5a94ec7
parentb73ce64fb8d71dd4cecaa9548a9bc4ba110c24e8 (diff)
radeonsi: copy some nir gs info
v2: copy input primitive Reviewed-by: Nicolai Hähnle <[email protected]>
-rw-r--r--src/gallium/drivers/radeonsi/si_shader_nir.c7
1 files changed, 7 insertions, 0 deletions
diff --git a/src/gallium/drivers/radeonsi/si_shader_nir.c b/src/gallium/drivers/radeonsi/si_shader_nir.c
index 847d75ba141..5d82715f7a7 100644
--- a/src/gallium/drivers/radeonsi/si_shader_nir.c
+++ b/src/gallium/drivers/radeonsi/si_shader_nir.c
@@ -139,6 +139,13 @@ void si_nir_scan_shader(const struct nir_shader *nir,
info->num_inputs = nir->num_inputs;
info->num_outputs = nir->num_outputs;
+ if (nir->info.stage == MESA_SHADER_GEOMETRY) {
+ info->properties[TGSI_PROPERTY_GS_INPUT_PRIM] = nir->info.gs.input_primitive;
+ info->properties[TGSI_PROPERTY_GS_OUTPUT_PRIM] = nir->info.gs.output_primitive;
+ info->properties[TGSI_PROPERTY_GS_MAX_OUTPUT_VERTICES] = nir->info.gs.vertices_out;
+ info->properties[TGSI_PROPERTY_GS_INVOCATIONS] = nir->info.gs.invocations;
+ }
+
i = 0;
nir_foreach_variable(variable, &nir->inputs) {
unsigned semantic_name, semantic_index;