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
Lucas Perlind
5c73b4ef58
Add attribute @(no_sanitize_address)
...
The purposes of this attribute is to let procedures opt-out of being
instrumented with asan. Typically an allocator that includes 'in-band'
meta-data will be accessing poisoned values (such as tlsf).
Making asan work with these allocators becomes very challenging so
just being to ignore asan within specific allocator procedures
makes it easier to reason and removes the need to temporarily
poison and unpoison allocator data.
2025-05-01 20:42:21 +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
47abea1229
Add support for Objective-C method implementation with Odin calling convention.
...
Use @objc_context_provider to provide a context for a type.
2025-04-23 02:05:51 -04:00
Harold Brenes
a3de9c8de4
Add initial support for Objective-C class implementation
2025-04-20 21:53:46 -04:00
gingerBill
99d91ccd31
Work on making name mangling deterministic
2025-02-17 11:32:49 +00:00
gingerBill
868ab27720
Add @(ignore_duplicates) for foreign import declarations
2025-01-28 10:31:46 +00:00
gingerBill
7b334d2bd9
Add #branch_location
2025-01-01 17:26:15 +00:00
Laytan Laats
603efa860a
add '#caller_expression'
2024-09-14 22:13:37 +02:00
gingerBill
edc793d7c1
Add #no_capture args: ..T to reuse the backing array stack memory
2024-07-14 11:39:05 +01:00
gingerBill
34c6868e78
Merge pull request #3895 from laytan/fix-optimization-mode-attribute
...
remove misleading @(optimization_mode) values and make "none" inhibit optimizations
2024-07-10 13:22:57 +01:00
Laytan Laats
1a20b78633
remove misleading @(optimization_mode) values and make "none" inhibit optimizations
2024-07-08 21:06:57 +02:00
gingerBill
2a219fa830
Correct -use-separate-module behaviour
2024-07-08 15:13:40 +01:00
gingerBill
0b02c67cdf
Minor clean up for backend
2024-06-11 12:19:52 +01:00
gingerBill
9ef43fc782
Add @(rodata)
2024-06-06 15:16:34 +01:00
gingerBill
66acbb7fed
Add @(link_suffix=<string>)
2024-05-30 21:48:23 +01:00
gingerBill
a1b8749e74
Delay checking foreign import paths until after global scope is checked
2024-05-28 00:23:23 +01:00
gingerBill
a344bc4c0e
Remove the old switch/for semantics entirely and enforce switch &x in y
2024-05-16 14:39:16 +01:00
gingerBill
d85c8f0b2c
Fix #3555
2024-05-09 10:58:57 +01:00
Laytan Laats
25f1d0906d
compiler: improve target features support
2024-05-02 00:59:52 +02:00
gingerBill
45d7a670ce
Fix @(static) error message bug
2024-04-11 15:34:34 +01:00
gingerBill
624b870f28
Add some basic escape analysis errors for return &x
2024-03-23 14:58:10 +00:00
gingerBill
006ea11c56
Update doc-format for #by_ptr and #no_broadcast parameters
2024-03-21 11:58:32 +00:00
gingerBill
29e5f94c2a
Add #no_broadcast procedure parameter to disallow automatic array programming broadcasting on procedure arguments
2024-03-21 11:52:48 +00:00
gingerBill
5a84a08225
Add general support for bit_fields
2024-02-22 17:24:42 +00:00
gingerBill
f4782157d3
Implement instrumentation pass
2024-01-07 21:34:44 +00:00
gingerBill
aff8f06e3c
Add frontend stuff instrumentation tooling
...
//+no-instrumentation
@(no_instrumentation)
@(instrumentation_enter)
@(instrumentation_exit)
2024-01-07 19:56:00 +00:00
gingerBill
2820bbc269
Add @(entry_point_only) for procedures
2024-01-05 13:38:30 +00:00
gingerBill
0600054ad4
Remove temporary assert
2023-08-07 15:21:18 +01:00
gingerBill
b782fca75b
Fix using bug
2023-08-07 15:18:45 +01:00
gingerBill
b495a302b0
Merge branch 'master' into tilde
2023-08-03 13:14:09 +01:00
gingerBill
65206fe33e
Go through loads of TODOs
2023-08-01 11:39:04 +01:00
gingerBill
7cd2d14b64
Very start of working on Tilde Backend for Odin
2023-07-14 11:58:18 +01:00
gingerBill
00d60e28c2
Allow switch &v in ... work to be consistent with for &e in ...
2023-06-26 15:41:53 +01:00
gingerBill
ea00619c3b
for &e, i in array and for k, &v in map (alternative to passing the iterable by pointer)
2023-06-26 15:20:40 +01:00
gingerBill
2c4a478987
Add @(extra_linker_flags=<string>)
2023-03-21 13:30:58 +00:00
gingerBill
94c1331c07
Implement @(fini) (opposite of @(init))
2023-02-15 11:31:51 +00:00
gingerBill
2dca39b557
Remove auto_cast procedure field flag
...
Fixes #2285
2023-01-16 12:06:03 +00:00
gingerBill
12e42d92d3
Localize GenProcsData to the entity itself
2023-01-04 15:35:24 +00:00
gingerBill
5c519f0e8d
Remove the synchronization primitive init/destroy calls
2023-01-01 16:19:21 +00:00
gingerBill
c1f5be24e2
Remove dead code in the compiler
2022-12-18 22:49:10 +00:00
gingerBill
056ba1ed13
Even more gb_internal everywhere
2022-12-18 21:24:45 +00:00
gingerBill
c8ab1b7ee1
Add #by_ptr procedure attribute to enforce a parameter to be passed by pointer internally
2022-07-24 13:11:48 +01:00
gingerBill
f3aefbc443
@(require_target_feature=<string>) @(enable_target_feature=<string>)
...
require_target_feature - required by the target micro-architecture
enable_target_feature - will be enabled for the specified procedure only
2022-05-30 14:53:12 +01:00
gingerBill
e4743b15b1
Add @(priority_index=<int>) for foreign import
2022-05-04 16:40:12 +01:00
gingerBill
a232c0888c
intrinsics.atomic_type_is_lock_free
2022-04-02 14:38:42 +01:00
gingerBill
a68f0b2d72
Improve procedure group selection based on the minimum number of arguments
2022-03-18 22:18:12 +00:00
gingerBill
65dedbb1ca
Add #subtype struct field prefix, required to have a COM interface hierarchy
2022-02-16 11:54:15 +00:00
gingerBill
f8afda3b22
Add more objc attributes
2022-02-11 22:54:51 +00:00
gingerBill
0cc40db565
Begin work on support objc intrinsics
2022-02-08 17:04:55 +00:00