From 959a9ecdd8fbc3375e4149f2b44d253622ff12ee Mon Sep 17 00:00:00 2001 From: Eric Anholt Date: Wed, 23 Jun 2010 14:43:50 -0700 Subject: [PATCH] get_lvalue_copy doesn't need all the checking of do_assignment(). --- ast_to_hir.cpp | 9 +++------ 1 file changed, 3 insertions(+), 6 deletions(-) diff --git a/ast_to_hir.cpp b/ast_to_hir.cpp index 613009b8a3c..c059abbff6a 100644 --- a/ast_to_hir.cpp +++ b/ast_to_hir.cpp @@ -536,8 +536,7 @@ generate_temporary(const glsl_type *type, exec_list *instructions, static ir_rvalue * -get_lvalue_copy(exec_list *instructions, struct _mesa_glsl_parse_state *state, - ir_rvalue *lvalue, YYLTYPE loc) +get_lvalue_copy(exec_list *instructions, ir_rvalue *lvalue) { ir_variable *var; ir_rvalue *var_deref; @@ -547,7 +546,7 @@ get_lvalue_copy(exec_list *instructions, struct _mesa_glsl_parse_state *state, var->mode = ir_var_auto; var_deref = new ir_dereference_variable(var); - do_assignment(instructions, state, var_deref, lvalue, loc); + instructions->push_tail(new ir_assignment(var_deref, lvalue, NULL)); /* Once we've created this temporary, mark it read only so it's no * longer considered an lvalue. @@ -1103,9 +1102,7 @@ ast_expression::hir(exec_list *instructions, /* Get a temporary of a copy of the lvalue before it's modified. * This may get thrown away later. */ - result = get_lvalue_copy(instructions, state, - (ir_rvalue *)op[0]->clone(NULL), - this->subexpressions[0]->get_location()); + result = get_lvalue_copy(instructions, (ir_rvalue *)op[0]->clone(NULL)); (void)do_assignment(instructions, state, (ir_rvalue *)op[0]->clone(NULL), temp_rhs, -- 2.30.2