diff options
author | Jason Ekstrand <[email protected]> | 2019-07-09 14:28:18 -0500 |
---|---|---|
committer | Jason Ekstrand <[email protected]> | 2019-07-24 12:55:40 -0500 |
commit | 2a236c76f8209b6c2c7bcbfee5fcfbfaa7b82796 (patch) | |
tree | 8e6f3deb06dc8ffdb9996d9fc700cf385d496361 /src/intel/compiler/brw_compiler.h | |
parent | 4397eb91c1e0081be2b17edb13dd4b47b9e97b62 (diff) |
intel/compiler: Allow for required subgroup sizes
Reviewed-by: Caio Marcelo de Oliveira Filho <[email protected]>
Diffstat (limited to 'src/intel/compiler/brw_compiler.h')
-rw-r--r-- | src/intel/compiler/brw_compiler.h | 14 |
1 files changed, 11 insertions, 3 deletions
diff --git a/src/intel/compiler/brw_compiler.h b/src/intel/compiler/brw_compiler.h index 8b62e67e2d7..b2b09d16e60 100644 --- a/src/intel/compiler/brw_compiler.h +++ b/src/intel/compiler/brw_compiler.h @@ -206,9 +206,17 @@ struct brw_sampler_prog_key_data { /** An enum representing what kind of input gl_SubgroupSize is. */ enum PACKED brw_subgroup_size_type { - BRW_SUBGROUP_SIZE_API_CONSTANT, /**< Vulkan behavior */ - BRW_SUBGROUP_SIZE_UNIFORM, /**< OpenGL behavior */ - BRW_SUBGROUP_SIZE_VARYING, /**< VK_EXT_subgroup_size_control */ + BRW_SUBGROUP_SIZE_API_CONSTANT, /**< Default Vulkan behavior */ + BRW_SUBGROUP_SIZE_UNIFORM, /**< OpenGL behavior */ + BRW_SUBGROUP_SIZE_VARYING, /**< VK_EXT_subgroup_size_control */ + + /* These enums are specifically chosen so that the value of the enum is + * also the subgroup size. If any new values are added, they must respect + * this invariant. + */ + BRW_SUBGROUP_SIZE_REQUIRE_8 = 8, /**< VK_EXT_subgroup_size_control */ + BRW_SUBGROUP_SIZE_REQUIRE_16 = 16, /**< VK_EXT_subgroup_size_control */ + BRW_SUBGROUP_SIZE_REQUIRE_32 = 32, /**< VK_EXT_subgroup_size_control */ }; struct brw_base_prog_key { |