aboutsummaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
authorAndrew Kelley <superjoe30@gmail.com>2016-02-01 20:05:50 -0700
committerAndrew Kelley <superjoe30@gmail.com>2016-02-01 20:05:50 -0700
commit74eaf4376800ab1a3405a69e4f65ecfecb1e1db9 (patch)
tree94873ccfaaa19f2dd02b15b17a4bb3a788774bf9 /src
parent0b94c83debd00846fb878f87323bdf16aa07bffc (diff)
downloadzig-74eaf4376800ab1a3405a69e4f65ecfecb1e1db9.tar.gz
zig-74eaf4376800ab1a3405a69e4f65ecfecb1e1db9.zip
codegen: avoid a table lookup
Diffstat (limited to 'src')
-rw-r--r--src/analyze.cpp1
-rw-r--r--src/codegen.cpp3
2 files changed, 2 insertions, 2 deletions
diff --git a/src/analyze.cpp b/src/analyze.cpp
index c9123912fe..81874e0fdb 100644
--- 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
index f534519062..16797881c5 100644
--- 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;