commit 74eaf4376800ab1a3405a69e4f65ecfecb1e1db9 (tree)
parent 0b94c83debd00846fb878f87323bdf16aa07bffc
Author: Andrew Kelley <superjoe30@gmail.com>
Date: Mon, 1 Feb 2016 20:05:50 -0700
codegen: avoid a table lookup
Diffstat:
2 files changed, 2 insertions(+), 2 deletions(-)
diff --git a/src/analyze.cpp b/src/analyze.cpp
@@ -2515,6 +2515,7 @@ static TypeTableEntry *analyze_lvalue(CodeGen *g, ImportTableEntry *import, Bloc
expected_rhs_type = g->builtin_types.entry_invalid;
} else {
expected_rhs_type = var->type;
+ lhs_node->data.symbol_expr.variable = var;
}
} else {
add_node_error(g, lhs_node,
diff --git a/src/codegen.cpp b/src/codegen.cpp
@@ -889,8 +889,7 @@ static LLVMValueRef gen_lvalue(CodeGen *g, AstNode *expr_node, AstNode *node,
LLVMValueRef target_ref;
if (node->type == NodeTypeSymbol) {
- VariableTableEntry *var = find_variable(expr_node->block_context,
- &node->data.symbol_expr.symbol);
+ VariableTableEntry *var = node->data.symbol_expr.variable;
assert(var);
*out_type_entry = var->type;