diff options
| author | gingerBill <bill@gingerbill.org> | 2022-02-08 17:04:55 +0000 |
|---|---|---|
| committer | gingerBill <bill@gingerbill.org> | 2022-02-08 17:04:55 +0000 |
| commit | 0cc40db565a9c4b99e6fa0844b9ac512558626e4 (patch) | |
| tree | 0273b88ab9e4b98fa6be130d808c9ed63dd8a35c /src/llvm_backend_general.cpp | |
| parent | 30bb2382aa0c7a9d6407c0b28258cd9fd00c560d (diff) | |
Begin work on support objc intrinsics
Diffstat (limited to 'src/llvm_backend_general.cpp')
| -rw-r--r-- | src/llvm_backend_general.cpp | 8 |
1 files changed, 7 insertions, 1 deletions
diff --git a/src/llvm_backend_general.cpp b/src/llvm_backend_general.cpp index 2fc21b534..1c98aa77f 100644 --- a/src/llvm_backend_general.cpp +++ b/src/llvm_backend_general.cpp @@ -72,6 +72,9 @@ void lb_init_module(lbModule *m, Checker *c) { map_init(&m->debug_values, a); array_init(&m->debug_incomplete_types, a, 0, 1024); + + string_map_init(&m->objc_classes, a); + string_map_init(&m->objc_selectors, a); } bool lb_init_generator(lbGenerator *gen, Checker *c) { @@ -2450,7 +2453,7 @@ lbValue lb_find_procedure_value_from_entity(lbModule *m, Entity *e) { return {}; } -lbAddr lb_add_global_generated(lbModule *m, Type *type, lbValue value) { +lbAddr lb_add_global_generated(lbModule *m, Type *type, lbValue value, Entity **entity_) { GB_ASSERT(type != nullptr); type = default_type(type); @@ -2476,6 +2479,9 @@ lbAddr lb_add_global_generated(lbModule *m, Type *type, lbValue value) { lb_add_entity(m, e, g); lb_add_member(m, name, g); + + if (entity_) *entity_ = e; + return lb_addr(g); } |