diff options
| author | Andrew Kelley <superjoe30@gmail.com> | 2017-05-01 13:12:38 -0400 |
|---|---|---|
| committer | Andrew Kelley <superjoe30@gmail.com> | 2017-05-01 13:12:38 -0400 |
| commit | 17b935325e7c315304952f38037c7200595c5f10 (patch) | |
| tree | 748a728084493ea3faf645039bb96b263273c880 /src/ir.cpp | |
| parent | c5dd536845cffdf9f0c22de0a67a89d84d078e24 (diff) | |
| download | zig-17b935325e7c315304952f38037c7200595c5f10.tar.gz zig-17b935325e7c315304952f38037c7200595c5f10.zip | |
`@import("builtin")` instead of `@compileVar`
See #226
Closes #220
Diffstat (limited to 'src/ir.cpp')
| -rw-r--r-- | src/ir.cpp | 55 |
1 files changed, 0 insertions, 55 deletions
diff --git a/src/ir.cpp b/src/ir.cpp index 0ad643a4af..3ebb7415c9 100644 --- a/src/ir.cpp +++ b/src/ir.cpp @@ -294,10 +294,6 @@ static constexpr IrInstructionId ir_instruction_id(IrInstructionAsm *) { return IrInstructionIdAsm; } -static constexpr IrInstructionId ir_instruction_id(IrInstructionCompileVar *) { - return IrInstructionIdCompileVar; -} - static constexpr IrInstructionId ir_instruction_id(IrInstructionSizeOf *) { return IrInstructionIdSizeOf; } @@ -1249,15 +1245,6 @@ static IrInstruction *ir_build_asm_from(IrBuilder *irb, IrInstruction *old_instr return new_instruction; } -static IrInstruction *ir_build_compile_var(IrBuilder *irb, Scope *scope, AstNode *source_node, IrInstruction *name) { - IrInstructionCompileVar *instruction = ir_build_instruction<IrInstructionCompileVar>(irb, scope, source_node); - instruction->name = name; - - ir_ref_instruction(name, irb->current_basic_block); - - return &instruction->base; -} - static IrInstruction *ir_build_size_of(IrBuilder *irb, Scope *scope, AstNode *source_node, IrInstruction *type_value) { IrInstructionSizeOf *instruction = ir_build_instruction<IrInstructionSizeOf>(irb, scope, source_node); instruction->type_value = type_value; @@ -2431,13 +2418,6 @@ static IrInstruction *ir_instruction_asm_get_dep(IrInstructionAsm *instruction, return nullptr; } -static IrInstruction *ir_instruction_compilevar_get_dep(IrInstructionCompileVar *instruction, size_t index) { - switch (index) { - case 0: return instruction->name; - default: return nullptr; - } -} - static IrInstruction *ir_instruction_sizeof_get_dep(IrInstructionSizeOf *instruction, size_t index) { switch (index) { case 0: return instruction->type_value; @@ -2979,8 +2959,6 @@ static IrInstruction *ir_instruction_get_dep(IrInstruction *instruction, size_t return ir_instruction_slicetype_get_dep((IrInstructionSliceType *) instruction, index); case IrInstructionIdAsm: return ir_instruction_asm_get_dep((IrInstructionAsm *) instruction, index); - case IrInstructionIdCompileVar: - return ir_instruction_compilevar_get_dep((IrInstructionCompileVar *) instruction, index); case IrInstructionIdSizeOf: return ir_instruction_sizeof_get_dep((IrInstructionSizeOf *) instruction, index); case IrInstructionIdTestNonNull: @@ -3937,15 +3915,6 @@ static IrInstruction *ir_gen_builtin_fn_call(IrBuilder *irb, Scope *scope, AstNo return ir_build_set_debug_safety(irb, scope, node, arg0_value, arg1_value); } - case BuiltinFnIdCompileVar: - { - AstNode *arg0_node = node->data.fn_call_expr.params.at(0); - IrInstruction *arg0_value = ir_gen_node(irb, arg0_node, scope); - if (arg0_value == irb->codegen->invalid_instruction) - return arg0_value; - - return ir_build_compile_var(irb, scope, node, arg0_value); - } case BuiltinFnIdSizeof: { AstNode *arg0_node = node->data.fn_call_expr.params.at(0); @@ -10409,27 +10378,6 @@ static TypeTableEntry *ir_analyze_instruction_array_type(IrAnalyze *ira, zig_unreachable(); } -static TypeTableEntry *ir_analyze_instruction_compile_var(IrAnalyze *ira, - IrInstructionCompileVar *compile_var_instruction) -{ - IrInstruction *name_value = compile_var_instruction->name->other; - Buf *var_name = ir_resolve_str(ira, name_value); - if (!var_name) - return ira->codegen->builtin_types.entry_invalid; - - ConstExprValue *out_val = ir_build_const_from(ira, &compile_var_instruction->base); - auto entry = ira->codegen->compile_vars.maybe_get(var_name); - if (entry) { - *out_val = *entry->value; - return out_val->type; - } else { - ir_add_error_node(ira, name_value->source_node, - buf_sprintf("unrecognized compile variable: '%s'", buf_ptr(var_name))); - return ira->codegen->builtin_types.entry_invalid; - } - zig_unreachable(); -} - static TypeTableEntry *ir_analyze_instruction_size_of(IrAnalyze *ira, IrInstructionSizeOf *size_of_instruction) { @@ -13039,8 +12987,6 @@ static TypeTableEntry *ir_analyze_instruction_nocast(IrAnalyze *ira, IrInstructi return ir_analyze_instruction_asm(ira, (IrInstructionAsm *)instruction); case IrInstructionIdArrayType: return ir_analyze_instruction_array_type(ira, (IrInstructionArrayType *)instruction); - case IrInstructionIdCompileVar: - return ir_analyze_instruction_compile_var(ira, (IrInstructionCompileVar *)instruction); case IrInstructionIdSizeOf: return ir_analyze_instruction_size_of(ira, (IrInstructionSizeOf *)instruction); case IrInstructionIdTestNonNull: @@ -13292,7 +13238,6 @@ bool ir_has_side_effects(IrInstruction *instruction) { case IrInstructionIdEnumFieldPtr: case IrInstructionIdArrayType: case IrInstructionIdSliceType: - case IrInstructionIdCompileVar: case IrInstructionIdSizeOf: case IrInstructionIdTestNonNull: case IrInstructionIdUnwrapMaybe: |
