Jacek Caban : vkd3d-shader: Avoid implicit enum pointer casts in allocate_semantic_register.
Module: vkd3d Branch: master Commit: 85f21f197c9cbd9df8fa3d292b0e3de388fdbf65 URL: https://gitlab.winehq.org/wine/vkd3d/-/commit/85f21f197c9cbd9df8fa3d292b0e3d... Author: Jacek Caban <jacek(a)codeweavers.com> Date: Fri Nov 24 14:03:25 2023 +0100 vkd3d-shader: Avoid implicit enum pointer casts in allocate_semantic_register. --- libs/vkd3d-shader/hlsl_codegen.c | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) diff --git a/libs/vkd3d-shader/hlsl_codegen.c b/libs/vkd3d-shader/hlsl_codegen.c index 5a70878b..294a8156 100644 --- a/libs/vkd3d-shader/hlsl_codegen.c +++ b/libs/vkd3d-shader/hlsl_codegen.c @@ -4089,7 +4089,7 @@ static void allocate_semantic_register(struct hlsl_ctx *ctx, struct hlsl_ir_var [VKD3D_SHADER_TYPE_COMPUTE] = "Compute", }; - unsigned int type; + enum vkd3d_shader_register_type type; uint32_t reg; bool builtin; @@ -4097,6 +4097,7 @@ static void allocate_semantic_register(struct hlsl_ctx *ctx, struct hlsl_ir_var if (ctx->profile->major_version < 4) { + D3DSHADER_PARAM_REGISTER_TYPE sm1_type; D3DDECLUSAGE usage; uint32_t usage_idx; @@ -4104,7 +4105,7 @@ static void allocate_semantic_register(struct hlsl_ctx *ctx, struct hlsl_ir_var if (ctx->profile->major_version == 1 && output && ctx->profile->type == VKD3D_SHADER_TYPE_PIXEL) return; - builtin = hlsl_sm1_register_from_semantic(ctx, &var->semantic, output, &type, ®); + builtin = hlsl_sm1_register_from_semantic(ctx, &var->semantic, output, &sm1_type, ®); if (!builtin && !hlsl_sm1_usage_from_semantic(&var->semantic, &usage, &usage_idx)) { hlsl_error(ctx, &var->loc, VKD3D_SHADER_ERROR_HLSL_INVALID_SEMANTIC, @@ -4114,6 +4115,7 @@ static void allocate_semantic_register(struct hlsl_ctx *ctx, struct hlsl_ir_var if ((!output && !var->last_read) || (output && !var->first_write)) return; + type = (enum vkd3d_shader_register_type)sm1_type; } else {
participants (1)
-
Alexandre Julliard