gingerBill
5f001f6d51
Allow casting between a bit_field and its backing type
2024-02-22 18:15:13 +00:00
gingerBill
3c47503780
Improve foreign variable fuzzy type checking
2024-01-28 23:35:01 +00:00
gingerBill
67dcd916e8
Update instrumentation signature to support runtime.Source_Code_Location as last parameter.
2024-01-09 11:01:18 +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
d7d23e65ea
Clean up error block usage
2024-01-05 13:47:00 +00:00
gingerBill
2820bbc269
Add @(entry_point_only) for procedures
2024-01-05 13:38:30 +00:00
gingerBill
963559676e
Fix build times for -o:<string> in LLVM-17
2023-09-21 16:48:00 +01:00
gingerBill
b72f009d87
Disallow aliasing of any and typeid
2023-08-08 15:10:57 +01:00
gingerBill
65206fe33e
Go through loads of TODOs
2023-08-01 11:39:04 +01:00
gingerBill
69e1f42aed
Replace a lot of warnings with errors; remove deprecated stuff
2023-08-01 11:11:15 +01:00
gingerBill
0de7df9eab
Improve //+vet; remove using in many places; add //+vet !using-stmt where necessary
2023-07-31 11:37:14 +01:00
gingerBill
60e509b1e0
Add separate -vet flags; -vet-using-* flags; //+vet file flags
2023-07-31 11:09:19 +01:00
gingerBill
921530dd01
Fix to allow procedure groups on objective-c types
2023-07-17 12:43:56 +01:00
gingerBill
1247d36a12
Fix #2562 caused by inlining of procedure call
2023-05-29 22:57:42 +01:00
gingerBill
8bf32ac697
Minor change to handling of propagation of errors with --- as a value
2023-05-22 12:53:29 +01:00
gingerBill
d5a8f2298e
Restrict --- to variable declarations only
2023-05-22 12:37:26 +01:00
gingerBill
56c0d32ea0
Fix #2526
2023-05-18 11:52:16 +01:00
gingerBill
e24315eed8
Improve grammar
2023-04-15 16:16:16 +01:00
gingerBill
5da76ae34b
Add struct #no_copy
2023-04-15 15:37:32 +01:00
bumbread
5134d6bc63
rename -no-tls to -no-thread-local
2023-03-14 16:32:42 +11:00
bumbread
5f3b6c9722
Added -no-tls flag
2023-03-13 20:25:13 +11:00
gingerBill
f5d507a9b9
Improve errors about conversions of constant integers
2023-02-22 11:30:08 +00:00
gingerBill
20eacc4a84
Fix issue that conflicts with constant parapoly procedures and deferred_* procedures
2023-02-19 12:10:28 +00:00
gingerBill
c40b6c7c2f
Add constant data to the identifier directly
2023-02-17 13:02:41 +00:00
gingerBill
8a2a70a3c2
Fix overriding procedure information for literals
2023-02-17 13:00:37 +00:00
gingerBill
94c1331c07
Implement @(fini) (opposite of @(init))
2023-02-15 11:31:51 +00:00
gingerBill
38136e15fc
add_deps_from_child_to_parent always
2023-01-12 15:44:55 +00:00
gingerBill
e97bf2ef35
Minimize contention on the deps for decls
2023-01-12 15:38:23 +00:00
gingerBill
cbe3791b42
Replace all queues with MPSCQueue where possible
2023-01-12 13:11:17 +00:00
gingerBill
b470ceb470
Correct mpsc_dequeue
2023-01-12 12:59:09 +00:00
gingerBill
520ff731de
Add ArenaTemp to the compiler
2023-01-12 00:47:20 +00:00
gingerBill
1517f1d779
Add uncomment add_type_info_type calls for type assertions
2023-01-05 11:54:21 +00:00
gingerBill
9455918eec
Fix min dep type info problem caused by const ref of map_set
2023-01-04 22:20:18 +00:00
gingerBill
d4e18109da
Move walking of dependencies for procedures to just before calculating the min dep set
2023-01-04 13:52:38 +00:00
gingerBill
3dee3205b2
Use RwMutex for DeclInfo `deps
2023-01-03 15:34:52 +00:00
gingerBill
c7a704d345
Use RwMutex for the Scope
2023-01-03 15:26:47 +00:00
gingerBill
69934c3b0b
More for_array(i, y) to for (x : y) translations
2023-01-03 13:04:09 +00:00
gingerBill
747a11a954
Allow all set entry types to be implicitly cast to their key/value type to allow for easier iteration
2023-01-03 12:18:35 +00:00
gingerBill
600f2b7284
Use heap_allocator for all hash set types
2023-01-03 11:53:59 +00:00
gingerBill
69b075782b
Use a package local mutex for add_type_and_value
2023-01-02 22:40:28 +00:00
gingerBill
bc9ee8e1a4
Remove loops within futex signals on Linux
2023-01-02 22:13:49 +00:00
gingerBill
d2ec2d1606
Remove another use of a global mutex
2023-01-02 19:46:55 +00:00
gingerBill
529383f5b1
Correct a race condition when checking the procedure body
2023-01-02 15:30:04 +00:00
gingerBill
015fe924b8
Remove use of queues for procedure checking.
2023-01-02 12:28:38 +00:00
gingerBill
00823ca88c
Remove a few TODOs
2022-12-22 13:03:34 +00:00
gingerBill
c1f5be24e2
Remove dead code in the compiler
2022-12-18 22:49:10 +00:00
gingerBill
690666537c
Add gb_internal to checker
2022-12-18 21:46:27 +00:00
gingerBill
34a048f7da
Replace compiler for loops for the hash-table types to simplify code usage
2022-12-09 11:29:28 +00:00
gingerBill
d88b052d2d
Naïve optimization of named _split_ multiple return valued when defer is never used
...
This is a naïve optimization but it helps a lot in the general case where callee temporary stack variables
are not allocated to represent the named return values by using that specific memory.
In the future, try to check if a specific named return value is ever used a `defer` within a procedure or not,
or is ever passed to a nested procedure call (e.g. possibly escapes).
2022-11-25 23:57:55 +00:00