فهرست منبع

Enforce dynamic map calls for the time being

gingerBill 2 سال پیش
والد
کامیت
0324281634
2فایلهای تغییر یافته به همراه5 افزوده شده و 2 حذف شده
  1. 3 0
      src/build_settings.cpp
  2. 2 2
      src/llvm_backend_proc.cpp

+ 3 - 0
src/build_settings.cpp

@@ -1253,6 +1253,9 @@ gb_internal void init_build_context(TargetMetrics *cross_target) {
 
 	bc->optimization_level = gb_clamp(bc->optimization_level, 0, 3);
 
+	// ENFORCE DYNAMIC MAP CALLS
+	bc->dynamic_map_calls = true;
+
 	bc->ODIN_VALGRIND_SUPPORT = false;
 	if (build_context.metrics.os != TargetOs_windows) {
 		switch (bc->metrics.arch) {

+ 2 - 2
src/llvm_backend_proc.cpp

@@ -1035,8 +1035,8 @@ gb_internal lbValue lb_emit_call(lbProcedure *p, lbValue value, Array<lbValue> c
 					if (is_odin_cc) {
 						if (are_types_identical(original_type, t_source_code_location)) {
 							ptr = lb_address_from_load_or_generate_local(p, x);
-						} else {
-							ptr = lb_address_from_load_if_readonly_parameter(p, x);
+						// } else {
+						// 	ptr = lb_address_from_load_if_readonly_parameter(p, x);
 						}
 					}
 					if (ptr.value == nullptr) {