Module: vkd3d Branch: master Commit: d8e4b19cdcd7917d82a70fc2f1cb31166fa52742 URL: https://gitlab.winehq.org/wine/vkd3d/-/commit/d8e4b19cdcd7917d82a70fc2f1cb31...
Author: Giovanni Mascellani gmascellani@codeweavers.com Date: Fri Apr 19 13:13:15 2024 +0200
vkd3d-shader/ir: Skip invalid blocks when materializing undominated SSAs.
---
libs/vkd3d-shader/ir.c | 6 ++++++ 1 file changed, 6 insertions(+)
diff --git a/libs/vkd3d-shader/ir.c b/libs/vkd3d-shader/ir.c index 1f8d60c6..974cfb91 100644 --- a/libs/vkd3d-shader/ir.c +++ b/libs/vkd3d-shader/ir.c @@ -5001,6 +5001,9 @@ static enum vkd3d_result vsir_cfg_materialize_undominated_ssas_to_temps(struct v struct vsir_block *block = &cfg->blocks[i]; struct vkd3d_shader_instruction *ins;
+ if (block->label == 0) + continue; + for (ins = block->begin; ins <= block->end; ++ins) { for (j = 0; j < ins->dst_count; ++j) @@ -5016,6 +5019,9 @@ static enum vkd3d_result vsir_cfg_materialize_undominated_ssas_to_temps(struct v struct vsir_block *block = &cfg->blocks[i]; struct vkd3d_shader_instruction *ins;
+ if (block->label == 0) + continue; + for (ins = block->begin; ins <= block->end; ++ins) { for (j = 0; j < ins->src_count; ++j)