[PATCH vkd3d 1/9] vkd3d-shader: Merge ifs in vkd3d_dxbc_compiler_emit_swizzle_ext().

Józef Kucia joseph.kucia at gmail.com
Mon Feb 25 04:59:09 CST 2019


From: Józef Kucia <jkucia at codeweavers.com>

Signed-off-by: Józef Kucia <jkucia at codeweavers.com>
---
 libs/vkd3d-shader/spirv.c | 5 +----
 1 file changed, 1 insertion(+), 4 deletions(-)

diff --git a/libs/vkd3d-shader/spirv.c b/libs/vkd3d-shader/spirv.c
index 82598dfe6d9e..ef5420925474 100644
--- a/libs/vkd3d-shader/spirv.c
+++ b/libs/vkd3d-shader/spirv.c
@@ -2633,14 +2633,11 @@ static uint32_t vkd3d_dxbc_compiler_emit_swizzle_ext(struct vkd3d_dxbc_compiler
     val_component_count = vkd3d_write_mask_component_count(val_write_mask);
 
     if (component_count == val_component_count
-            && vkd3d_swizzle_is_equal(val_write_mask, swizzle, write_mask))
+            && (component_count == 1 || vkd3d_swizzle_is_equal(val_write_mask, swizzle, write_mask)))
         return val_id;
 
     type_id = vkd3d_spirv_get_type_id(builder, component_type, component_count);
 
-    if (component_count == 1 && val_component_count == 1)
-        return val_id;
-
     if (component_count == 1)
     {
         component_idx = vkd3d_write_mask_get_component_idx(write_mask);
-- 
2.19.2




More information about the wine-devel mailing list