gingerBill
0fafa30bfe
Remove old bodge which checked for missing procedures by reordering things
2026-03-18 14:42:44 +00:00
gingerBill
f05ae76ef9
Multithread RTTI generation in backend
2026-03-17 15:14:49 +00:00
gingerBill
fc41e44140
Improve bounds checking to minimize its need
2026-03-16 14:29:44 +00:00
gingerBill
5d165f70e1
Add loads of RVO optimizations for basic 1-value return cases
2026-03-15 21:53:38 +00: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
Jeroen van Rijn
579b2612b1
Fix #6347
2026-03-01 14:54:26 +01:00
gingerBill
63c4faca75
Fix positions for debug locations in defer, loops, and switch clauses
2026-02-02 11:19:00 +00:00
gingerBill
dc6067a8a9
Unify "mem*.inline" logic to only inline for <=8 bytes on all platforms
2026-01-22 13:18:22 +00:00
gingerBill
59ae82634e
Add preserve/most and preserve/all
2026-01-15 17:52:36 +00:00
gingerBill
5f07055ac1
Add #must_tail and "preserve/none" calling convention
2026-01-15 17:28:28 +00:00
gingerBill
0366cd3304
Add #must_tail (similar syntax to #force_inline
2026-01-15 16:32:52 +00:00
Laytan
e7ecb16a1e
llvm 21 support
2025-10-14 19:55:00 +02:00
Harold Brenes
e79e53dbbd
Use module-prefixed naming scheme for tracking
...
objc block instead of shared id counter.
2025-10-05 16:14:32 -04: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
gingerBill
17204bd1c2
Global const unions with @(rodata)
2025-09-28 20:40:26 +01:00
gingerBill
a974c51d57
First step towards constant unions
2025-09-28 19:52:52 +01:00
gingerBill
9b8771b475
Handle missing procedures better
2025-09-19 16:15:04 +01:00
gingerBill
76705c6800
Convert missing_procedures_to_check to a queue
2025-09-19 14:18:09 +01:00
gingerBill
6bca1475ed
Convert procedures_to_generate to a queue
2025-09-19 14:15:25 +01: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
5d14df4112
Multithread lb_module_init
2025-09-18 23:26:11 +01:00
gingerBill
9cf69576ab
More improvements to minimize code gen size
2025-09-18 20:58:24 +01:00
gingerBill
5bc9d79f77
Change mutex usage for missing procedures
2025-09-18 16:56:19 +01:00
gingerBill
5559916d5c
Mulithread startup procedure body generation
2025-09-18 16:35:04 +01:00
gingerBill
0f307fbc5d
Use multiple modules per file in package runtime
2025-09-18 15:34:19 +01:00
gingerBill
738a72943b
Try moving parapoly procs into a separate module when doing weak monomorphization
2025-09-18 15:04:16 +01:00
Harold Brenes
9d8e15b3af
Implementes the block ABI.2010.3.16 natively via the objc_block intrinsic and the Objc_Block builtin type.
...
See: https://clang.llvm.org/docs/Block-ABI-Apple.html
2025-08-06 20:27:31 -04:00
gingerBill
620bf162a0
Cache const string16 in LLVM
2025-08-02 12:32:18 +01:00
Harold Brenes
9a87611609
Fix leftover poor indentation for objc_ivars MPSCQueue
2025-07-13 15:39:41 -04:00
gingerBill
c383e550f9
Merge branch 'master' into bill/raddebugger-custom-section
2025-05-22 16:04:42 +01:00
gingerBill
92df892f25
Merge pull request #5064 from harold-b/hb/objc-classes
...
Add support for Objective-C class implementation
2025-05-08 12:58:33 +01:00
gingerBill
ea65a7b870
Move raddbg string stuff to a thread-safe queue
2025-05-07 14:26:10 +01:00
Laytan Laats
ad4866653a
fix disposing builder when not created
...
Fixes #5128
p->builder is created in lb_begin_procedure_body, but that isn't called
if there is no body, and we were still calling dispose at that point.
Moved it into lb_end_procedure_body to match.
2025-05-07 14:39:51 +02:00
Lucas Perlind
83bc2d3c4a
Add asan support for various allocators
2025-05-06 14:55:50 +10:00
Harold Brenes
f3923ed666
Fix indentations
...
Fix Objective-C wrapper procs not forwarding return value
2025-04-27 22:55:53 -04:00
Harold Brenes
a3de9c8de4
Add initial support for Objective-C class implementation
2025-04-20 21:53:46 -04:00
gingerBill
fe040d1bbd
Propagate @(link_section=<string>) to nested declarations
2025-04-08 11:36:53 +01:00
gingerBill
cd5bef4f61
Rewrite objc SEL/Class register handling code
2025-04-03 09:37:38 +01:00
gingerBill
5eaff20f4a
Add mutex for lb_handle_objc_find_or_register_class
2025-04-02 18:26:40 +01:00
gingerBill
d0dd1b2d80
Add mutex for lb_handle_objc_find_or_register_selector
2025-04-02 18:23:08 +01:00
gingerBill
400348c925
Improve global array index to be on a per module basis
2025-02-25 15:06:13 +00:00
gingerBill
5aafbc7f30
Use more deterministic module names
2025-02-25 14:35:54 +00:00
gingerBill
f9d85a7311
Try to make globally generated variables deterministic in name
2025-02-25 14:29:14 +00:00
gingerBill
f56a0a80d3
Use type hash for doc writer
2025-02-24 15:37:54 +00:00
gingerBill
de70e6faa0
Use more type hashes where possible
2025-02-24 15:33:35 +00:00
gingerBill
83f1c879ec
Canonicalize generated procedures (hasher/equal/map)
2025-02-24 15:18:27 +00:00
gingerBill
f0f395c510
Fix canonicalization
2025-02-24 14:24:06 +00:00
gingerBill
46a8991d0f
Canonicalize generated procedures
2025-02-24 14:19:02 +00:00
gingerBill
99d91ccd31
Work on making name mangling deterministic
2025-02-17 11:32:49 +00:00
Laytan Laats
9dc17f4c47
optimize fix
2025-01-24 19:33:57 +01:00