From: Jason Ekstrand Date: Tue, 22 Jan 2019 19:55:20 +0000 (-0600) Subject: spirv: Support LocalSizeId and LocalSizeHintId execution modes X-Git-Url: https://git.libre-soc.org/?a=commitdiff_plain;h=ab940b0d972d9825a2d0ab26a7128ea61ba527b2;p=mesa.git spirv: Support LocalSizeId and LocalSizeHintId execution modes Reviewed-by: Caio Marcelo de Oliveira Filho --- diff --git a/src/compiler/spirv/spirv_to_nir.c b/src/compiler/spirv/spirv_to_nir.c index ff9635a1895..1cbc926c818 100644 --- a/src/compiler/spirv/spirv_to_nir.c +++ b/src/compiler/spirv/spirv_to_nir.c @@ -3826,7 +3826,15 @@ vtn_handle_execution_mode(struct vtn_builder *b, struct vtn_value *entry_point, b->shader->info.cs.local_size[1] = mode->literals[1]; b->shader->info.cs.local_size[2] = mode->literals[2]; break; + + case SpvExecutionModeLocalSizeId: + b->shader->info.cs.local_size[0] = vtn_constant_uint(b, mode->literals[0]); + b->shader->info.cs.local_size[1] = vtn_constant_uint(b, mode->literals[1]); + b->shader->info.cs.local_size[2] = vtn_constant_uint(b, mode->literals[2]); + break; + case SpvExecutionModeLocalSizeHint: + case SpvExecutionModeLocalSizeHintId: break; /* Nothing to do with this */ case SpvExecutionModeOutputVertices: