Commit Graph

877 Commits

Author SHA1 Message Date
gingerBill
7b97530443 Add intrinsics.c_var_* 2026-04-28 15:00:53 +01:00
Ignacy Koper
3e64a72bad removed Essence from supported targets
Signed-off-by: Ignacy Koper <ignacy423@gmail.com>
2026-04-27 11:10:48 +02:00
gingerBill
021c224f5c Fix alignment 2026-04-22 13:38:47 +01:00
FourteenBrush
44938b6b64 Make @(rodata) on constants yield 'not supported' message 2026-04-22 14:33:21 +02:00
Harold Brenes
e11bbdaa37 Fix issue where 2 when statements which eval to true
in a `foreign` block cause the rest of the statements on
the block to go unchecked
2026-03-26 19:53:59 -04:00
gingerBill
25c10c18cc Remove tilde backend 2026-03-26 11:49:39 +00:00
gingerBill
46936e0e52 General improvements 2026-03-17 12:55:25 +00:00
gingerBill
9ad3a23f27 More improvements to performance; AtomicFreelist abstraction 2026-03-17 12:10:49 +00:00
gingerBill
b19e89578f Improve check_struct_fields performance; use CheckerTypePath free list 2026-03-17 11:42:03 +00:00
gingerBill
04cb889aed Begin interning ScopeMap strings 2026-03-17 11:04:32 +00:00
gingerBill
36d5a19115 Replace Scope.elements to use a custom hash map ScopeMap
This hash map is robin hood based with a inline slot amount for small scopes
2026-03-16 17:41:58 +00:00
gingerBill
1744f57d01 Use permanent_alloc_item directly rather than through the gb_alloc_item generic interface 2026-03-16 16:03:27 +00:00
gingerBill
55b3ea7c2d Allow @(deprecated=<string>) on types 2026-03-15 18:58:48 +00:00
gingerBill
c6772dfd06 Merge branch 'master' into bill/fixed-capacity-dynamic-array 2026-03-15 11:41:01 +00:00
gingerBill
0e6ea3884d General improves 2026-03-14 16:26:42 +00:00
Laytan Laats
f56ec37d1b fix type info of u16 could not be found 2026-03-13 20:43:03 +01:00
gingerBill
f1dbe9c242 [dynamic; N]T proof of concept: fixed capacity dynamic array (akin to small_array.Small_Array(N, T)) 2026-03-11 16:46:33 +00:00
gingerBill
b7bb7a1dc4 Use scope_reserve call directly 2026-03-11 14:22:36 +00:00
gingerBill
041ebdd8f6 Add parent mutex lock for scope_insert_with_name 2026-02-02 11:39:17 +00:00
gingerBill
ad2122a7fc Move alignas to before name 2026-02-02 11:05:30 +00:00
gingerBill
c7f40b8b8f Use mutex striping for add_type_and_value 2026-02-02 11:03:50 +00:00
gingerBill
f4a7e0b279 Add @(no_sanitize_thread) 2026-01-15 18:06:25 +00:00
gingerBill
7fa05f16bf Minor change from make_checker_context to init_checker_context 2026-01-03 20:14:15 +00:00
gingerBill
93d7e2a452 Add globaldynamic thread_local model (same as the current default) 2025-12-30 13:08:30 +00:00
Krzesimir Nowak
8ca7fc481f Fix misleading error messages for init, fini and test attributes
These look like copy-pasta from the private attribute.
2025-12-21 18:59:26 +01:00
Franz
ba9b9eacb5 Fix #5967 (Incorrect stack overflow warning for by ref switches over unions) 2025-11-28 13:55:07 +01:00
Laytan
eb089a1c98 skip collision panic when package names aren't unique 2025-11-16 15:06:30 +01:00
gingerBill
816c47058d For test runner, try to look for os.exit or os2.exit 2025-10-30 16:14:32 +00:00
Jeroen van Rijn
e4db455458 Fix #5785 2025-10-11 20:32:09 +02:00
Harold Brenes
86f9c920da Fix Objective-C block symbols naming conflict across modules.
Fix assert triggered when there's checker errors and
 Objective-C method implementations.
2025-10-05 15:53:42 -04:00
Harold Brenes
fc44b10431 Include objc runtime type dependencies only on darwin 2025-09-29 20:38:16 -04:00
Harold Brenes
5af13f5d53 Automatically emit objc_msgSend calls when calling imported or implemented Objective-C methods
- Add intrinsics.objc_super()

- Emit objc_msgSendSuper2 calls when an objc method call is combined with objc_super(self)

- Fix objc_block return value ABI for large struct returns

- Fix objc_implement method wrappers bad ABI for large struct returns and indirect args

- Simplify parameter forwarding for objc_imlpement methods

- Add intrinsics.objc_instancetype to mimi Objective-C instancetype* returns
  This facilitates returning the correct type on subclasses when calling mehtods
  such as `alloc`, `init`, `retain`, etc.

- Refactor Objective-C class implementations generation so that hierarchies are properly initialized

- Better codegen for context passing with ivar-based autocontext

- Allow @superclass on imported objc-c objects

- Better codegen for block forwarding invoker, arguments are forwarded directly
2025-09-29 20:37:48 -04:00
gingerBill
6ce889f4eb Entity * to std::atomic<Entity *> to remove the need for a PtrMap+Mutex 2025-09-19 11:01:41 +01:00
gingerBill
5ea2e1fe60 Minimize mutex usage when in single threaded mode. 2025-09-10 21:41:52 +01:00
gingerBill
0476d33a6c Remove global PtrMap<Type *, GenTypesData *> and store on the TypeNamed directly 2025-09-10 20:45:26 +01:00
gingerBill
d3602ca634 Removal of some old checks 2025-09-10 20:37:39 +01:00
gingerBill
bc36ea4170 Use macro instead of a C++ iterator - for speed
C++ iterators are bad.
2025-09-10 20:11:36 +01:00
gingerBill
228ddd6903 Inline some ptr set iterators 2025-09-10 20:02:39 +01:00
gingerBill
1c648126c7 Move more from heap_allocator() to temporary_allocator() 2025-09-10 19:47:29 +01:00
gingerBill
01258d4817 Multithread "check all scope usages" 2025-09-10 19:38:30 +01:00
gingerBill
a36a8722dc Minimize more thread contention 2025-09-10 19:30:32 +01:00
gingerBill
21b1173076 Minor clean up of permanent/temporary arena usage 2025-09-10 18:20:20 +01:00
gingerBill
af37ba76c1 Use arena in calculate_global_init_order 2025-09-10 18:02:02 +01:00
gingerBill
1e0902677f Multithread min dep set by removing the set itself 2025-09-10 17:29:11 +01:00
gingerBill
60684ff028 Multithread some of the min dep system 2025-09-10 13:39:06 +01:00
gingerBill
70d396c8ad Split type and inline cycles into separate loops 2025-09-10 13:26:07 +01:00
gingerBill
629777b988 Multithread check_update_dependency_tree_for_procedures 2025-09-10 12:42:36 +01:00
smoke-y
5f60e7cdc0 formatting 2025-09-05 21:28:49 +05:30
smoke-y
c01ba41955 fix empty parentheses seg fault 2025-09-05 11:02:01 +05:30
gingerBill
9381040711 Fix parentheses for raddbg expression 2025-08-22 09:32:17 +01:00