[Mesa-stable] [PATCH 1/8] glsl: allow NULL to be passed to encode_type_to_blob()

Timothy Arceri tarceri at itsqueeze.com
Wed Sep 13 06:20:54 UTC 2017


Hi,

Are we able to get these 9 patches in the next 17.2 release?

Thanks,
Tim

On 14/08/17 09:49, Timothy Arceri wrote:
> This will be used by the following commit.
> ---
>   src/compiler/glsl/shader_cache.cpp | 10 ++++++++++
>   1 file changed, 10 insertions(+)
> 
> diff --git a/src/compiler/glsl/shader_cache.cpp b/src/compiler/glsl/shader_cache.cpp
> index cc4d24482d..1fd49b82e9 100644
> --- a/src/compiler/glsl/shader_cache.cpp
> +++ b/src/compiler/glsl/shader_cache.cpp
> @@ -72,20 +72,25 @@ compile_shaders(struct gl_context *ctx, struct gl_shader_program *prog) {
>      for (unsigned i = 0; i < prog->NumShaders; i++) {
>         _mesa_glsl_compile_shader(ctx, prog->Shaders[i], false, false, true);
>      }
>   }
>   
>   static void
>   encode_type_to_blob(struct blob *blob, const glsl_type *type)
>   {
>      uint32_t encoding;
>   
> +   if (!type) {
> +      blob_write_uint32(blob, 0);
> +      return;
> +   }
> +
>      switch (type->base_type) {
>      case GLSL_TYPE_UINT:
>      case GLSL_TYPE_INT:
>      case GLSL_TYPE_FLOAT:
>      case GLSL_TYPE_BOOL:
>      case GLSL_TYPE_DOUBLE:
>      case GLSL_TYPE_UINT64:
>      case GLSL_TYPE_INT64:
>         encoding = (type->base_type << 24) |
>            (type->vector_elements << 4) |
> @@ -142,20 +147,25 @@ encode_type_to_blob(struct blob *blob, const glsl_type *type)
>         break;
>      }
>   
>      blob_write_uint32(blob, encoding);
>   }
>   
>   static const glsl_type *
>   decode_type_from_blob(struct blob_reader *blob)
>   {
>      uint32_t u = blob_read_uint32(blob);
> +
> +   if (u == 0) {
> +      return NULL;
> +   }
> +
>      glsl_base_type base_type = (glsl_base_type) (u >> 24);
>   
>      switch (base_type) {
>      case GLSL_TYPE_UINT:
>      case GLSL_TYPE_INT:
>      case GLSL_TYPE_FLOAT:
>      case GLSL_TYPE_BOOL:
>      case GLSL_TYPE_DOUBLE:
>      case GLSL_TYPE_UINT64:
>      case GLSL_TYPE_INT64:
> 


More information about the mesa-stable mailing list