From dce45e7d58f9bd0b265ef9c3d5d8abebc8f77290 Mon Sep 17 00:00:00 2001 From: gingerBill Date: Sun, 28 Jan 2018 14:42:22 +0000 Subject: [PATCH] Add ODIN_DEBUG --- src/build_settings.cpp | 2 +- src/checker.cpp | 1 + src/ir.cpp | 2 +- src/main.cpp | 2 +- 4 files changed, 4 insertions(+), 3 deletions(-) diff --git a/src/build_settings.cpp b/src/build_settings.cpp index e0bc71949..652d7bb28 100644 --- a/src/build_settings.cpp +++ b/src/build_settings.cpp @@ -7,6 +7,7 @@ struct BuildContext { String ODIN_VENDOR; // compiler vendor String ODIN_VERSION; // compiler version String ODIN_ROOT; // Odin ROOT + bool ODIN_DEBUG; // Odin in debug mode // In bytes i64 word_size; // Size of a pointer, must be >= 4 @@ -22,7 +23,6 @@ struct BuildContext { i32 optimization_level; bool show_timings; bool keep_temp_files; - bool debug; bool no_bounds_check; gbAffinity affinity; diff --git a/src/checker.cpp b/src/checker.cpp index f136ee776..10da68af6 100644 --- a/src/checker.cpp +++ b/src/checker.cpp @@ -548,6 +548,7 @@ void init_universal_scope(void) { add_global_string_constant(a, str_lit("ODIN_VENDOR"), bc->ODIN_VENDOR); add_global_string_constant(a, str_lit("ODIN_VERSION"), bc->ODIN_VERSION); add_global_string_constant(a, str_lit("ODIN_ROOT"), bc->ODIN_ROOT); + add_global_constant(a, str_lit("ODIN_DEBUG"), t_untyped_bool, exact_value_bool(bc->ODIN_DEBUG)); // Builtin Procedures diff --git a/src/ir.cpp b/src/ir.cpp index 4dbba4667..f2ab85e38 100644 --- a/src/ir.cpp +++ b/src/ir.cpp @@ -7598,7 +7598,7 @@ void ir_init_module(irModule *m, Checker *c) { m->info = &c->info; m->generate_debug_info = false; - if (build_context.debug) { + if (build_context.ODIN_DEBUG) { m->generate_debug_info = build_context.ODIN_OS == "windows" && build_context.word_size == 8; } diff --git a/src/main.cpp b/src/main.cpp index 1f2ffd17c..2991a2062 100644 --- a/src/main.cpp +++ b/src/main.cpp @@ -505,7 +505,7 @@ bool parse_build_flags(Array args) { } case BuildFlag_Debug: - build_context.debug = true; + build_context.ODIN_DEBUG = true; break; case BuildFlag_NoBoundsCheck: