gingerBill
|
382ca20916
|
Correct procedure checking flag handling, and correct the (bodge) handle of unchecked procedure bodies
|
2021-08-23 19:24:53 +01:00 |
|
gingerBill
|
8694a0f68a
|
Update signature_parameter_similar_enough for multi pointers
|
2021-08-22 12:31:03 +01:00 |
|
gingerBill
|
38841dd46e
|
Fix race condition from add_entity_use due to Entity.identifier
|
2021-08-19 17:38:18 +01:00 |
|
gingerBill
|
7845769d4b
|
Remove unused code
|
2021-08-19 15:03:10 +01:00 |
|
gingerBill
|
a01c946c20
|
Add mutex to Scope lookups and insertions
|
2021-08-18 11:17:14 +01:00 |
|
gingerBill
|
beaad719ad
|
Reallow using on enum declarations temporarily but with a warning.
|
2021-08-05 17:51:45 +01:00 |
|
gingerBill
|
0d257c61cd
|
Disallow using on an enum declaration.
|
2021-08-05 17:46:42 +01:00 |
|
gingerBill
|
9e6e769141
|
Add sanity checks to checker
|
2021-08-02 18:32:17 +01:00 |
|
gingerBill
|
ccbdf086ff
|
Add @(warning=<string>)
|
2021-08-02 16:58:50 +01:00 |
|
gingerBill
|
a5d6fda433
|
Define which mutexes are blocking and recursive explicitly
|
2021-07-27 23:14:01 +01:00 |
|
gingerBill
|
99080d41f3
|
INTERNAL USE ONLY: //+lazy build flag
|
2021-07-25 13:06:09 +01:00 |
|
gingerBill
|
2938ec028f
|
Remove dead code
|
2021-07-15 00:37:59 +01:00 |
|
gingerBill
|
bd8e2f82be
|
Replace non-recursive mutexes with BlockingMutex; Minor improves to initialization improves
|
2021-07-14 00:34:34 +01:00 |
|
gingerBill
|
7a9b7af078
|
Reduce mutex usage and convert things to queues from arrays
|
2021-07-13 23:09:24 +01:00 |
|
gingerBill
|
cec2309504
|
Big improvement to the -threaded-checker code, unifying the logic and simplify behaviour
|
2021-07-13 16:58:40 +01:00 |
|
gingerBill
|
d9e6ade030
|
Add experimental support for a threaded semantic checker to -threaded-checker
|
2021-07-10 23:51:37 +01:00 |
|
gingerBill
|
ed8a6f872d
|
Move things around for sanity checking for multithread preparation
|
2021-07-10 21:29:49 +01:00 |
|
gingerBill
|
9f7154a039
|
Prepare for multithreading the semantic checker by giving mutexes to variables of contention
NOTE(bill): I know this is dodgy, but I want to make sure it is correct logic before improve those data structures
|
2021-07-10 15:14:25 +01:00 |
|
gingerBill
|
4a932616fc
|
Improve CheckerContext usage
|
2021-07-10 13:02:13 +01:00 |
|
gingerBill
|
41f2539484
|
Improve logic for diverging procedures by checking if it terminates
|
2021-06-16 12:07:24 +01:00 |
|
gingerBill
|
f19bb0f4d4
|
Make default calling convention code more correct to read
|
2021-06-08 14:33:49 +01:00 |
|
gingerBill
|
c440296ae8
|
Add @(link_section=<string>) for global variables
|
2021-05-24 15:41:22 +01:00 |
|
gingerBill
|
26ce40c188
|
Remove @(static) for global variables
|
2021-05-19 11:51:48 +01:00 |
|
gingerBill
|
7b7081d607
|
Remove old dead code
|
2021-05-15 18:59:54 +01:00 |
|
gingerBill
|
da9cabc334
|
Fix #682
|
2021-05-12 23:02:57 +01:00 |
|
gingerBill
|
e7e1866e50
|
Fix #893
|
2021-04-27 13:09:37 +01:00 |
|
gingerBill
|
04535b2913
|
Fix constant aliasing for debug information
|
2021-04-26 22:36:20 +01:00 |
|
gingerBill
|
a38586420c
|
Fix race condition with procedure aliases checking for declarations on constant aliases
|
2021-04-26 19:46:42 +01:00 |
|
gingerBill
|
01db195b47
|
Make main calling convention "odin" rather than "contextless" to simplify code generation
|
2021-04-22 16:26:28 +01:00 |
|
gingerBill
|
65551ba8fb
|
Add optimization_mode attribute for procedures
Allowed modes: "none", "minimal", "size", "speed"
Currently: none == minimal and size == speed
|
2021-04-22 00:04:47 +01:00 |
|
gingerBill
|
a4d0092b16
|
Remove temporary reference types
|
2021-04-19 11:02:09 +01:00 |
|
gingerBill
|
eb49b5f84a
|
Fix override_entity_in_scope behaviour to correctly to report the changes upstream better
|
2021-04-19 11:01:00 +01:00 |
|
gingerBill
|
9adec628c1
|
Add @(cold) attribute to procedure declarations
|
2021-04-14 17:15:28 +01:00 |
|
gingerBill
|
c62980eaea
|
Minor improvement to error message about assigning a type to a variable with no inference
|
2021-03-23 22:33:32 +00:00 |
|
gingerBill
|
f5142aaec4
|
Change from test_* prefix to @(test) attribute for odin test
|
2021-03-14 18:43:21 +00:00 |
|
gingerBill
|
15dbc99cb9
|
Minimize TokenPos size by using i32 for line/column/offset and file_id instead of String
To make `i32` safe, the parser limits the file size of odin files to a maximum of 2GiB (which will be good enough for the vast vast majority of cases)
|
2021-03-04 16:45:30 +00:00 |
|
gingerBill
|
41b854f192
|
Remove #opaque types
|
2021-02-23 15:45:06 +00:00 |
|
gingerBill
|
28f279329d
|
Remove bit_field keyword and parsing logic
|
2021-02-23 15:29:54 +00:00 |
|
gingerBill
|
28ed310f31
|
Remove "pure" and "pure_none" calling conventions
|
2021-02-23 13:10:23 +00:00 |
|
gingerBill
|
efdee0dafb
|
Remove bit_field type from Odin (keyword and dead runtime code still exists)
|
2021-02-19 11:31:14 +00:00 |
|
gingerBill
|
089eccb245
|
Fix minor constant value declaration bug
|
2020-12-14 22:47:21 +00:00 |
|
gingerBill
|
6f71d1f2a9
|
Add -show-unused (Shows unused package declarations of all imported packages)
Crude output at the moment but better than nothing
|
2020-11-17 12:10:25 +00:00 |
|
gingerBill
|
ca4b0527e8
|
Minimize memory usage for AST nodes by using Slice<T> rather than Array<T> when the parameter doesn't need to grow
|
2020-11-16 15:18:25 +00:00 |
|
gingerBill
|
0d6f5cec37
|
Implement custom temporary allocator using ring buffer
|
2020-11-15 19:36:37 +00:00 |
|
gingerBill
|
17ec3e72a6
|
Add SCOPED_TEMPORARY_BLOCK for temporary allocations within a block
|
2020-11-15 18:45:40 +00:00 |
|
gingerBill
|
4629754f7c
|
Inline asm expression (-llvm-api)
See https://llvm.org/docs/LangRef.html#inline-assembler-expressions
Example:
```
x := asm(i32) -> i32 {
"bswap $0",
"=r,r",
}(123);
```
Allowed directives `#side_effect`, `#align_stack`, `#att`, `#intel` e.g. `asm() #side_effect #intel {...}`
|
2020-10-24 16:32:37 +01:00 |
|
gingerBill
|
6aa708a455
|
Fix Odin bug with "none" procedure calling conventions in the runtime
|
2020-09-10 16:36:33 +01:00 |
|
gingerBill
|
c1149dbdee
|
Update math and math/linalg; add "pure_none" calling convention
|
2020-09-10 15:00:19 +01:00 |
|
gingerBill
|
7bdd8094d6
|
Fix signature_parameter_similar_enough logic
|
2020-06-30 19:10:24 +01:00 |
|
gingerBill
|
92363da58e
|
Add -show-system-calls; Update runtime for windows_386; Fix some minor bugs
|
2020-06-30 10:09:58 +01:00 |
|