Zebediah Figura : d3dcompiler: Don't pass a writemask to make_assignment().

Alexandre Julliard julliard at winehq.org
Thu Mar 12 17:09:07 CDT 2020


Module: wine
Branch: master
Commit: 49f64d05f31f4058cb07c6fc1834a4482ee3faa2
URL:    https://source.winehq.org/git/wine.git/?a=commit;h=49f64d05f31f4058cb07c6fc1834a4482ee3faa2

Author: Zebediah Figura <z.figura12 at gmail.com>
Date:   Fri Mar  6 17:17:31 2020 -0600

d3dcompiler: Don't pass a writemask to make_assignment().

Signed-off-by: Zebediah Figura <zfigura at codeweavers.com>
Signed-off-by: Matteo Bruni <mbruni at codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard at winehq.org>

---

 dlls/d3dcompiler_43/d3dcompiler_private.h | 2 +-
 dlls/d3dcompiler_43/hlsl.y                | 8 +++-----
 dlls/d3dcompiler_43/utils.c               | 3 ++-
 3 files changed, 6 insertions(+), 7 deletions(-)

diff --git a/dlls/d3dcompiler_43/d3dcompiler_private.h b/dlls/d3dcompiler_43/d3dcompiler_private.h
index 1a155736fd..04878c7046 100644
--- a/dlls/d3dcompiler_43/d3dcompiler_private.h
+++ b/dlls/d3dcompiler_43/d3dcompiler_private.h
@@ -1144,7 +1144,7 @@ struct hlsl_ir_node *implicit_conversion(struct hlsl_ir_node *node, struct hlsl_
 struct hlsl_ir_deref *new_var_deref(struct hlsl_ir_var *var) DECLSPEC_HIDDEN;
 struct hlsl_ir_deref *new_record_deref(struct hlsl_ir_node *record, struct hlsl_struct_field *field) DECLSPEC_HIDDEN;
 struct hlsl_ir_node *make_assignment(struct hlsl_ir_node *left, enum parse_assign_op assign_op,
-        DWORD writemask, struct hlsl_ir_node *right) DECLSPEC_HIDDEN;
+        struct hlsl_ir_node *right) DECLSPEC_HIDDEN;
 void push_scope(struct hlsl_parse_ctx *ctx) DECLSPEC_HIDDEN;
 BOOL pop_scope(struct hlsl_parse_ctx *ctx) DECLSPEC_HIDDEN;
 struct hlsl_ir_function_decl *new_func_decl(struct hlsl_type *return_type, struct list *parameters) DECLSPEC_HIDDEN;
diff --git a/dlls/d3dcompiler_43/hlsl.y b/dlls/d3dcompiler_43/hlsl.y
index 46d815d014..591f755a7b 100644
--- a/dlls/d3dcompiler_43/hlsl.y
+++ b/dlls/d3dcompiler_43/hlsl.y
@@ -542,7 +542,7 @@ static void struct_var_initializer(struct list *list, struct hlsl_ir_var *var,
             }
             deref->node.loc = node->loc;
             list_add_tail(list, &deref->node.entry);
-            assignment = make_assignment(&deref->node, ASSIGN_OP_ASSIGN, BWRITERSP_WRITEMASK_ALL, node);
+            assignment = make_assignment(&deref->node, ASSIGN_OP_ASSIGN, node);
             list_add_tail(list, &assignment->entry);
         }
         else
@@ -688,8 +688,7 @@ static struct list *declare_vars(struct hlsl_type *basic_type, DWORD modifiers,
 
             deref = new_var_deref(var);
             list_add_tail(statements_list, &deref->node.entry);
-            assignment = make_assignment(&deref->node, ASSIGN_OP_ASSIGN,
-                    BWRITERSP_WRITEMASK_ALL, v->initializer.args[0]);
+            assignment = make_assignment(&deref->node, ASSIGN_OP_ASSIGN, v->initializer.args[0]);
             d3dcompiler_free(v->initializer.args);
             list_add_tail(statements_list, &assignment->entry);
         }
@@ -2413,8 +2412,7 @@ assignment_expr:          conditional_expr
                                     hlsl_report_message(get_location(&@2), HLSL_LEVEL_ERROR, "l-value is const");
                                     YYABORT;
                                 }
-                                if (!(instr = make_assignment(node_from_list($1), $2,
-                                        BWRITERSP_WRITEMASK_ALL, node_from_list($3))))
+                                if (!(instr = make_assignment(node_from_list($1), $2, node_from_list($3))))
                                     YYABORT;
                                 instr->loc = get_location(&@2);
                                 $$ = append_binop($3, $1, instr);
diff --git a/dlls/d3dcompiler_43/utils.c b/dlls/d3dcompiler_43/utils.c
index fe2d23b623..1b572aa0ae 100644
--- a/dlls/d3dcompiler_43/utils.c
+++ b/dlls/d3dcompiler_43/utils.c
@@ -1423,9 +1423,10 @@ static enum hlsl_ir_expr_op op_from_assignment(enum parse_assign_op op)
 }
 
 struct hlsl_ir_node *make_assignment(struct hlsl_ir_node *left, enum parse_assign_op assign_op,
-        DWORD writemask, struct hlsl_ir_node *right)
+        struct hlsl_ir_node *right)
 {
     struct hlsl_ir_assignment *assign = d3dcompiler_alloc(sizeof(*assign));
+    DWORD writemask = BWRITERSP_WRITEMASK_ALL;
     struct hlsl_type *type;
     struct hlsl_ir_node *lhs, *rhs;
 




More information about the wine-cvs mailing list