diff options
author | Jason Ekstrand <[email protected]> | 2019-02-22 10:48:39 -0600 |
---|---|---|
committer | Jason Ekstrand <[email protected]> | 2019-07-24 12:55:40 -0500 |
commit | c84b8eeeac30ec033847a3e13d05d1162e78daf3 (patch) | |
tree | 2fba023f049627a457343e8664566852f6baee9f /src/mesa/drivers/dri/i965/brw_wm.c | |
parent | 1981460af2c17d55c17be2475a28bbf711a80c79 (diff) |
intel/compiler: Be more conservative about subgroup sizes in GL
The rules for gl_SubgroupSize in Vulkan require that it be a constant
that can be queried through the API. However, all GL requires is that
it's a uniform. Instead of always claiming that the subgroup size in
the shader is 32 in GL like we have to do for Vulkan, claim 8 for
geometry stages, the maximum for fragment shaders, and the actual size
for compute.
Reviewed-by: Caio Marcelo de Oliveira Filho <[email protected]>
Diffstat (limited to 'src/mesa/drivers/dri/i965/brw_wm.c')
-rw-r--r-- | src/mesa/drivers/dri/i965/brw_wm.c | 2 |
1 files changed, 2 insertions, 0 deletions
diff --git a/src/mesa/drivers/dri/i965/brw_wm.c b/src/mesa/drivers/dri/i965/brw_wm.c index 368499776b9..384c3f5c956 100644 --- a/src/mesa/drivers/dri/i965/brw_wm.c +++ b/src/mesa/drivers/dri/i965/brw_wm.c @@ -335,6 +335,7 @@ brw_populate_base_prog_key(struct gl_context *ctx, struct brw_base_prog_key *key) { key->program_string_id = prog->id; + key->subgroup_size_type = BRW_SUBGROUP_SIZE_UNIFORM; brw_populate_sampler_prog_key_data(ctx, &prog->program, &key->tex); } @@ -344,6 +345,7 @@ brw_populate_default_base_prog_key(const struct gen_device_info *devinfo, struct brw_base_prog_key *key) { key->program_string_id = prog->id; + key->subgroup_size_type = BRW_SUBGROUP_SIZE_UNIFORM; brw_setup_tex_for_precompile(devinfo, &key->tex, &prog->program); } |