summaryrefslogtreecommitdiffstats
path: root/src/compiler/shader_info.h
diff options
context:
space:
mode:
authorCaio Marcelo de Oliveira Filho <[email protected]>2019-03-26 00:04:57 -0700
committerCaio Marcelo de Oliveira Filho <[email protected]>2019-04-08 19:29:32 -0700
commit3c5ddaeacd2c52bc11f9cda451fe640cff629bdd (patch)
tree47586c1451345101c711cae5d72e270b025727a6 /src/compiler/shader_info.h
parentca60f0b7baeb95caf5d6e0ab4d83c6bb1d3e0eaa (diff)
glsl: Parse and propagate derivative_group to shader_info
NV_compute_shader_derivatives allow selecting between two possible arrangements (quads and linear) when calculating derivatives and certain subgroup operations in case of Vulkan. So parse and propagate those up to shader_info.h. v2: Do not fail when ARB_compute_variable_group_size is being used, since we are still clarifying what is the right thing to do here. Reviewed-by: Ian Romanick <[email protected]>
Diffstat (limited to 'src/compiler/shader_info.h')
-rw-r--r--src/compiler/shader_info.h6
1 files changed, 6 insertions, 0 deletions
diff --git a/src/compiler/shader_info.h b/src/compiler/shader_info.h
index ef195760acb..78f4032362a 100644
--- a/src/compiler/shader_info.h
+++ b/src/compiler/shader_info.h
@@ -252,6 +252,12 @@ typedef struct shader_info {
* AddressingModelPhysical64: 64
*/
unsigned ptr_size;
+
+ /*
+ * Arrangement of invocations used to calculate derivatives in a compute
+ * shader. From NV_compute_shader_derivatives.
+ */
+ enum gl_derivative_group derivative_group;
} cs;
/* Applies to both TCS and TES. */