2
0
Эх сурвалжийг харах

Make static value atomic too

gingerBill 2 жил өмнө
parent
commit
7416f72565
1 өөрчлөгдсөн 2 нэмэгдсэн , 2 устгасан
  1. 2 2
      src/llvm_backend.cpp

+ 2 - 2
src/llvm_backend.cpp

@@ -467,10 +467,10 @@ gb_internal lbValue lb_map_get_proc_for_type(lbModule *m, Type *type) {
 		GB_ASSERT(*found != nullptr);
 		return {(*found)->value, (*found)->type};
 	}
-	static u32 proc_index = 0;
+	static std::atomic<u32> proc_index;
 
 	char buf[32] = {};
-	isize n = gb_snprintf(buf, 32, "__$map_get-%u", ++proc_index);
+	isize n = gb_snprintf(buf, 32, "__$map_get-%u", 1+proc_index.fetch_add(1));
 	char *str = gb_alloc_str_len(permanent_allocator(), buf, n-1);
 	String proc_name = make_string_c(str);