authorgravatar for andrew@ziglang.orgAndrew Kelley <andrew@ziglang.org> 2017-08-15 06:51:33-04:00
committergravatar for andrew@ziglang.orgAndrew Kelley <andrew@ziglang.org> 2017-08-26 00:34:40-04:00
log105a09e1d654c76addc26fd5616c06fcbd8b6a12
treeec2c32f256002d5f5c999b2670e3fc9506adbcf7
parent234030c37a97d3da7bc6325e4dfb32fe37e9b039

fix invalid llvm IR for const enum

closes #394

1 files changed, 3 insertions(+), 2 deletions(-)

src/codegen.cpp+3-2
...@@ -725,8 +725,8 @@ static LLVMValueRef get_panic_msg_ptr_val(CodeGen *g, PanicMsgId msg_id) {...@@ -725,8 +725,8 @@ static LLVMValueRef get_panic_msg_ptr_val(CodeGen *g, PanicMsgId msg_id) {
725 ConstExprValue *array_val = create_const_str_lit(g, buf_msg);725 ConstExprValue *array_val = create_const_str_lit(g, buf_msg);
726 init_const_slice(g, val, array_val, 0, buf_len(buf_msg), true);726 init_const_slice(g, val, array_val, 0, buf_len(buf_msg), true);
727727
728 render_const_val_global(g, val, "");
729 render_const_val(g, val);728 render_const_val(g, val);
729 render_const_val_global(g, val, "");
730730
731 assert(val->global_refs->llvm_global);731 assert(val->global_refs->llvm_global);
732 return val->global_refs->llvm_global;732 return val->global_refs->llvm_global;
...@@ -3635,7 +3635,8 @@ static LLVMValueRef gen_const_val(CodeGen *g, ConstExprValue *const_val) {...@@ -3635,7 +3635,8 @@ static LLVMValueRef gen_const_val(CodeGen *g, ConstExprValue *const_val) {
3635 fields[type_struct_field->gen_index] = gen_const_val(g, &const_val->data.x_struct.fields[i]);3635 fields[type_struct_field->gen_index] = gen_const_val(g, &const_val->data.x_struct.fields[i]);
3636 }3636 }
3637 }3637 }
3638 return LLVMConstNamedStruct(type_entry->type_ref, fields, type_entry->data.structure.gen_field_count);3638 return LLVMConstStruct(fields, type_entry->data.structure.gen_field_count,
3639 type_entry->data.structure.layout == ContainerLayoutPacked);
3639 }3640 }
3640 case TypeTableEntryIdUnion:3641 case TypeTableEntryIdUnion:
3641 {3642 {