aboutsummaryrefslogtreecommitdiff
path: root/src/checker.cpp
diff options
context:
space:
mode:
authorgingerBill <bill@gingerbill.org>2021-05-31 20:50:21 +0100
committergingerBill <bill@gingerbill.org>2021-05-31 20:50:21 +0100
commit3bf00e6125734de653d7b25202c14058b16c066f (patch)
treec4f93fc494bbfe742d86ead5ea6c71ce77802a4f /src/checker.cpp
parent8fd4fe25d6e8862c77233de61f51994f7dbac33e (diff)
Comment on the required `generate_minimum_dependency_set` entities
Diffstat (limited to 'src/checker.cpp')
-rw-r--r--src/checker.cpp38
1 files changed, 19 insertions, 19 deletions
diff --git a/src/checker.cpp b/src/checker.cpp
index e18e11a1e..092d7bc31 100644
--- a/src/checker.cpp
+++ b/src/checker.cpp
@@ -1718,45 +1718,45 @@ void generate_minimum_dependency_set(Checker *c, Entity *start) {
ptr_set_init(&c->info.minimum_dependency_type_info_set, heap_allocator());
String required_runtime_entities[] = {
+ // Odin types
+ str_lit("Type_Info"),
+ str_lit("Source_Code_Location"),
+ str_lit("Context"),
str_lit("Allocator"),
str_lit("Logger"),
- str_lit("__init_context"),
-
+ // Global variables
str_lit("args__"),
str_lit("type_table"),
+
+ // Odin internal procedures
+ str_lit("__init_context"),
str_lit("__type_info_of"),
- str_lit("default_allocator"),
- str_lit("default_allocator_proc"),
- str_lit("default_temp_allocator"),
- str_lit("default_temp_allocator_proc"),
+ str_lit("cstring_to_string"),
- str_lit("Type_Info"),
- str_lit("Source_Code_Location"),
- str_lit("Context"),
+ // Pseudo-CRT required procedures
+ str_lit("memset"),
+ str_lit("memcpy"),
+ str_lit("memmove"),
- str_lit("cstring_to_string"), // Is this needed?
+ // Utility procedures
+ str_lit("memory_equal"),
+ str_lit("memory_compare"),
+ str_lit("memory_compare_zero"),
+ // Extended data type internal procedures
str_lit("umodti3"),
str_lit("udivti3"),
str_lit("modti3"),
str_lit("divti3"),
str_lit("fixdfti"),
str_lit("floattidf"),
-
str_lit("truncsfhf2"),
str_lit("truncdfhf2"),
str_lit("gnu_h2f_ieee"),
str_lit("gnu_f2h_ieee"),
str_lit("extendhfsf2"),
- str_lit("memset"),
- str_lit("memcpy"),
- str_lit("memmove"),
-
- str_lit("memory_equal"),
- str_lit("memory_compare"),
- str_lit("memory_compare_zero"),
};
for (isize i = 0; i < gb_count_of(required_runtime_entities); i++) {
force_add_dependency_entity(c, c->info.runtime_package->scope, required_runtime_entities[i]);
@@ -1775,10 +1775,10 @@ void generate_minimum_dependency_set(Checker *c, Entity *start) {
if (!build_context.no_bounds_check) {
String bounds_check_entities[] = {
+ // Bounds checking related procedures
str_lit("bounds_check_error"),
str_lit("slice_expr_error_hi"),
str_lit("slice_expr_error_lo_hi"),
- str_lit("dynamic_array_expr_error"),
};
for (isize i = 0; i < gb_count_of(bounds_check_entities); i++) {
force_add_dependency_entity(c, c->info.runtime_package->scope, bounds_check_entities[i]);