Browse Source

Place optimization level flag in condition again; `-memcpyopt -die` only in non-debug builds

gingerBill 6 years ago
parent
commit
5c608b01ba
1 changed files with 3 additions and 1 deletions
  1. 3 1
      src/build_settings.cpp

+ 3 - 1
src/build_settings.cpp

@@ -590,12 +590,14 @@ void init_build_context(void) {
 	bc->optimization_level = gb_clamp(bc->optimization_level, 0, 3);
 	bc->optimization_level = gb_clamp(bc->optimization_level, 0, 3);
 
 
 	gbString opt_flags = gb_string_make_reserve(heap_allocator(), 64);
 	gbString opt_flags = gb_string_make_reserve(heap_allocator(), 64);
-	opt_flags = gb_string_append_fmt(opt_flags, "-O%d ", bc->optimization_level);
 	if (bc->optimization_level != 0) {
 	if (bc->optimization_level != 0) {
+		opt_flags = gb_string_append_fmt(opt_flags, "-O%d ", bc->optimization_level);
 		// NOTE(lachsinc): The following options were previously passed during call
 		// NOTE(lachsinc): The following options were previously passed during call
 		// to opt in main.cpp:exec_llvm_opt().
 		// to opt in main.cpp:exec_llvm_opt().
 		//   -die:       Dead instruction elimination
 		//   -die:       Dead instruction elimination
 		//   -memcpyopt: MemCpy optimization
 		//   -memcpyopt: MemCpy optimization
+	}
+	if (bc->ODIN_DEBUG == false) {
 		opt_flags = gb_string_appendc(opt_flags, "-memcpyopt -die ");
 		opt_flags = gb_string_appendc(opt_flags, "-memcpyopt -die ");
 	}
 	}