Zebediah Figura : vkd3d-shader: Allow structures to be chained in any order.
Alexandre Julliard
julliard at winehq.org
Tue Aug 25 16:04:27 CDT 2020
Module: vkd3d
Branch: master
Commit: 9a0692978ef19fd356e0a6eecd67d1f0528ced52
URL: https://source.winehq.org/git/vkd3d.git/?a=commit;h=9a0692978ef19fd356e0a6eecd67d1f0528ced52
Author: Zebediah Figura <zfigura at codeweavers.com>
Date: Mon Aug 24 11:15:12 2020 -0500
vkd3d-shader: Allow structures to be chained in any order.
Signed-off-by: Zebediah Figura <zfigura at codeweavers.com>
Signed-off-by: Henri Verbeet <hverbeet at codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard at winehq.org>
---
libs/vkd3d-shader/spirv.c | 6 +++---
libs/vkd3d-shader/vkd3d_shader_main.c | 2 +-
libs/vkd3d-shader/vkd3d_shader_private.h | 2 +-
3 files changed, 5 insertions(+), 5 deletions(-)
diff --git a/libs/vkd3d-shader/spirv.c b/libs/vkd3d-shader/spirv.c
index 14ff7f4..bb251a4 100644
--- a/libs/vkd3d-shader/spirv.c
+++ b/libs/vkd3d-shader/spirv.c
@@ -2241,7 +2241,7 @@ struct vkd3d_dxbc_compiler *vkd3d_dxbc_compiler_create(const struct vkd3d_shader
if ((shader_interface = vkd3d_find_struct(compile_info->next, INTERFACE_INFO)))
{
- compiler->xfb_info = vkd3d_find_struct(shader_interface->next, TRANSFORM_FEEDBACK_INFO);
+ compiler->xfb_info = vkd3d_find_struct(compile_info->next, TRANSFORM_FEEDBACK_INFO);
compiler->shader_interface = *shader_interface;
if (shader_interface->push_constant_buffer_count)
@@ -9110,7 +9110,7 @@ int vkd3d_dxbc_compiler_handle_instruction(struct vkd3d_dxbc_compiler *compiler,
}
int vkd3d_dxbc_compiler_generate_spirv(struct vkd3d_dxbc_compiler *compiler,
- struct vkd3d_shader_code *spirv)
+ const struct vkd3d_shader_compile_info *compile_info, struct vkd3d_shader_code *spirv)
{
const struct vkd3d_shader_spirv_target_info *info = compiler->spirv_target_info;
const struct vkd3d_shader_spirv_domain_shader_target_info *ds_info;
@@ -9127,7 +9127,7 @@ int vkd3d_dxbc_compiler_generate_spirv(struct vkd3d_dxbc_compiler *compiler,
if (compiler->shader_type == VKD3D_SHADER_TYPE_DOMAIN)
{
- if (info && (ds_info = vkd3d_find_struct(info->next, SPIRV_DOMAIN_SHADER_TARGET_INFO)))
+ if (info && (ds_info = vkd3d_find_struct(compile_info->next, SPIRV_DOMAIN_SHADER_TARGET_INFO)))
{
vkd3d_dxbc_compiler_emit_tessellator_output_primitive(compiler, ds_info->output_primitive);
vkd3d_dxbc_compiler_emit_tessellator_partitioning(compiler, ds_info->partitioning);
diff --git a/libs/vkd3d-shader/vkd3d_shader_main.c b/libs/vkd3d-shader/vkd3d_shader_main.c
index 3e7b6cc..e0a04fc 100644
--- a/libs/vkd3d-shader/vkd3d_shader_main.c
+++ b/libs/vkd3d-shader/vkd3d_shader_main.c
@@ -364,7 +364,7 @@ int vkd3d_shader_compile(const struct vkd3d_shader_compile_info *compile_info,
}
if (ret >= 0)
- ret = vkd3d_dxbc_compiler_generate_spirv(spirv_compiler, out);
+ ret = vkd3d_dxbc_compiler_generate_spirv(spirv_compiler, compile_info, out);
vkd3d_dxbc_compiler_destroy(spirv_compiler);
vkd3d_shader_parser_destroy(&parser);
diff --git a/libs/vkd3d-shader/vkd3d_shader_private.h b/libs/vkd3d-shader/vkd3d_shader_private.h
index 77b07e4..25d6216 100644
--- a/libs/vkd3d-shader/vkd3d_shader_private.h
+++ b/libs/vkd3d-shader/vkd3d_shader_private.h
@@ -868,7 +868,7 @@ struct vkd3d_dxbc_compiler *vkd3d_dxbc_compiler_create(const struct vkd3d_shader
int vkd3d_dxbc_compiler_handle_instruction(struct vkd3d_dxbc_compiler *compiler,
const struct vkd3d_shader_instruction *instruction) DECLSPEC_HIDDEN;
int vkd3d_dxbc_compiler_generate_spirv(struct vkd3d_dxbc_compiler *compiler,
- struct vkd3d_shader_code *spirv) DECLSPEC_HIDDEN;
+ const struct vkd3d_shader_compile_info *compile_info, struct vkd3d_shader_code *spirv) DECLSPEC_HIDDEN;
void vkd3d_dxbc_compiler_destroy(struct vkd3d_dxbc_compiler *compiler) DECLSPEC_HIDDEN;
void vkd3d_compute_dxbc_checksum(const void *dxbc, size_t size, uint32_t checksum[4]) DECLSPEC_HIDDEN;
More information about the wine-cvs
mailing list