Module: vkd3d Branch: master Commit: 5de5f241a61c140117ee0aecfe25d586b1adad6d URL: https://gitlab.winehq.org/wine/vkd3d/-/commit/5de5f241a61c140117ee0aecfe25d5...
Author: Henri Verbeet hverbeet@codeweavers.com Date: Wed Mar 13 14:52:34 2024 +0100
vkd3d-shader/ir: Pass a struct vsir_program to vkd3d_shader_normalise().
---
libs/vkd3d-shader/ir.c | 8 +++----- libs/vkd3d-shader/spirv.c | 3 ++- libs/vkd3d-shader/vkd3d_shader_private.h | 5 ++--- 3 files changed, 7 insertions(+), 9 deletions(-)
diff --git a/libs/vkd3d-shader/ir.c b/libs/vkd3d-shader/ir.c index ec32faae..4f022618 100644 --- a/libs/vkd3d-shader/ir.c +++ b/libs/vkd3d-shader/ir.c @@ -4393,11 +4393,9 @@ fail: return ret; }
-enum vkd3d_result vkd3d_shader_normalise(struct vkd3d_shader_parser *parser, - const struct vkd3d_shader_compile_info *compile_info) +enum vkd3d_result vsir_program_normalise(struct vsir_program *program, uint64_t config_flags, + const struct vkd3d_shader_compile_info *compile_info, struct vkd3d_shader_message_context *message_context) { - struct vkd3d_shader_message_context *message_context = parser->message_context; - struct vsir_program *program = &parser->program; enum vkd3d_result result = VKD3D_OK;
remove_dcl_temps(program); @@ -4488,7 +4486,7 @@ enum vkd3d_result vkd3d_shader_normalise(struct vkd3d_shader_parser *parser, if (TRACE_ON()) vkd3d_shader_trace(program);
- if ((result = vsir_program_validate(program, parser->config_flags, + if ((result = vsir_program_validate(program, config_flags, compile_info->source_name, message_context)) < 0) return result;
diff --git a/libs/vkd3d-shader/spirv.c b/libs/vkd3d-shader/spirv.c index d1073884..e39e27a6 100644 --- a/libs/vkd3d-shader/spirv.c +++ b/libs/vkd3d-shader/spirv.c @@ -10133,7 +10133,8 @@ static int spirv_compiler_generate_spirv(struct spirv_compiler *compiler, enum vkd3d_result result = VKD3D_OK; unsigned int i;
- if ((result = vkd3d_shader_normalise(parser, compile_info)) < 0) + if ((result = vsir_program_normalise(program, compiler->config_flags, + compile_info, compiler->message_context)) < 0) return result;
if (program->temp_count) diff --git a/libs/vkd3d-shader/vkd3d_shader_private.h b/libs/vkd3d-shader/vkd3d_shader_private.h index 57065bac..21957d02 100644 --- a/libs/vkd3d-shader/vkd3d_shader_private.h +++ b/libs/vkd3d-shader/vkd3d_shader_private.h @@ -1321,6 +1321,8 @@ struct vsir_program
bool vsir_program_init(struct vsir_program *program, const struct vkd3d_shader_version *version, unsigned int reserve); void vsir_program_cleanup(struct vsir_program *program); +enum vkd3d_result vsir_program_normalise(struct vsir_program *program, uint64_t config_flags, + const struct vkd3d_shader_compile_info *compile_info, struct vkd3d_shader_message_context *message_context); enum vkd3d_result vsir_program_validate(struct vsir_program *program, uint64_t config_flags, const char *source_name, struct vkd3d_shader_message_context *message_context);
@@ -1784,7 +1786,4 @@ void dxbc_writer_add_section(struct dxbc_writer *dxbc, uint32_t tag, const void void dxbc_writer_init(struct dxbc_writer *dxbc); int dxbc_writer_write(struct dxbc_writer *dxbc, struct vkd3d_shader_code *code);
-enum vkd3d_result vkd3d_shader_normalise(struct vkd3d_shader_parser *parser, - const struct vkd3d_shader_compile_info *compile_info); - #endif /* __VKD3D_SHADER_PRIVATE_H */