authorgravatar for andrew@ziglang.orgAndrew Kelley <andrew@ziglang.org> 2016-02-03 02:21:28-07:00
committergravatar for andrew@ziglang.orgAndrew Kelley <andrew@ziglang.org> 2016-02-03 02:21:28-07:00
logf2fe231ddf6ad6f7e46190e6a47996d7996b7b76
treee442f1a33c96baf385a63b82c781b6b79401b4ef
parentb28f7d080886ab8347d96899b907e8111fd15e2b

add @compile_var("is_release")


2 files changed, 4 insertions(+), 0 deletions(-)

src/analyze.cpp+2
...@@ -4020,6 +4020,8 @@ static TypeTableEntry *analyze_builtin_fn_call_expr(CodeGen *g, ImportTableEntry...@@ -4020,6 +4020,8 @@ static TypeTableEntry *analyze_builtin_fn_call_expr(CodeGen *g, ImportTableEntry
40204020
4021 if (buf_eql_str(&var_name, "is_big_endian")) {4021 if (buf_eql_str(&var_name, "is_big_endian")) {
4022 return resolve_expr_const_val_as_bool(g, node, g->is_big_endian);4022 return resolve_expr_const_val_as_bool(g, node, g->is_big_endian);
4023 } else if (buf_eql_str(&var_name, "is_release")) {
4024 return resolve_expr_const_val_as_bool(g, node, g->build_type == CodeGenBuildTypeRelease);
4023 } else {4025 } else {
4024 add_node_error(g, *str_node,4026 add_node_error(g, *str_node,
4025 buf_sprintf("unrecognized compile variable: '%s'", buf_ptr(&var_name)));4027 buf_sprintf("unrecognized compile variable: '%s'", buf_ptr(&var_name)));
src/codegen.cpp+2
...@@ -1353,6 +1353,8 @@ static LLVMValueRef gen_struct_memcpy(CodeGen *g, AstNode *source_node, LLVMValu...@@ -1353,6 +1353,8 @@ static LLVMValueRef gen_struct_memcpy(CodeGen *g, AstNode *source_node, LLVMValu
1353 TypeTableEntry *isize = g->builtin_types.entry_isize;1353 TypeTableEntry *isize = g->builtin_types.entry_isize;
1354 uint64_t size_bytes = LLVMStoreSizeOfType(g->target_data_ref, type_entry->type_ref);1354 uint64_t size_bytes = LLVMStoreSizeOfType(g->target_data_ref, type_entry->type_ref);
1355 uint64_t align_bytes = get_memcpy_align(g, type_entry);1355 uint64_t align_bytes = get_memcpy_align(g, type_entry);
1356 assert(size_bytes > 0);
1357 assert(align_bytes > 0);
13561358
1357 LLVMValueRef params[] = {1359 LLVMValueRef params[] = {
1358 dest_ptr, // dest pointer1360 dest_ptr, // dest pointer