gingerBill
|
9408eb9580
|
Update odin doc to support multiple package outputs by passing multiple paths; Replace -all with -short
Example:
odin doc core/path core/path/filepath
|
2020-11-18 23:22:27 +00:00 |
|
gingerBill
|
2bd0fd932a
|
Begin rudimentary work on implementing odin test tooling with *_test.odin files
|
2020-11-17 18:50:30 +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
|
adf6c85fd3
|
Minimize Ast flags usage
|
2020-11-16 01:42:30 +00:00 |
|
gingerBill
|
3c1c10a178
|
Begin clarifying allocation patterns by changing from heap_allocator to specific arenas
|
2020-11-15 18:08:52 +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
|
b1bdd95f19
|
Begin work on making packages import assembly sort files (.S)
|
2020-10-16 15:32:09 +01:00 |
|
gingerBill
|
289908e0b8
|
Add +build ignore tag
|
2020-10-15 16:25:57 +01:00 |
|
gingerBill
|
c1149dbdee
|
Update math and math/linalg; add "pure_none" calling convention
|
2020-09-10 15:00:19 +01:00 |
|
gingerBill
|
df3690c32a
|
Revert accidental removal of #const for procedure variable parameters #718
|
2020-08-26 22:46:54 +01:00 |
|
gingerBill
|
c18fc2da9f
|
Remove some dead code
|
2020-07-14 16:36:33 +01:00 |
|
gingerBill
|
1a0614b0d7
|
Improve performance of tokenization and parsing
|
2020-05-27 18:23:37 +01:00 |
|
gingerBill
|
aa029fe8d9
|
Add "pure" procedure types
|
2020-05-23 13:38:06 +01:00 |
|
gingerBill
|
7bd1039a49
|
Selector Call Expressions: x->y(123) == x.y(x, 123)
|
2020-05-22 14:54:30 +01:00 |
|
gingerBill
|
d09ac8943a
|
Minor fixes to improve hash map/set performance
|
2020-05-21 16:27:40 +01:00 |
|
gingerBill
|
ff92eb9112
|
Relative pointers
|
2020-05-15 17:37:00 +01:00 |
|
gingerBill
|
af1d4d6e72
|
Implement Allow .? operator to unwrap any union #549
|
2020-05-14 00:00:10 +01:00 |
|
gingerBill
|
e27f5796d6
|
Add experimental atom op tables for llvm-backend
|
2020-05-02 18:45:57 +01:00 |
|
gingerBill
|
97f7a558fa
|
#optional_ok tag for procedures
|
2020-04-19 21:45:04 +01:00 |
|
gingerBill
|
f09b6a4c90
|
Simplify compiler's Map and create a StringMap specifically for strings
|
2020-04-13 13:02:30 +01:00 |
|
gingerBill
|
d0b913dad1
|
Add extra internal memory analysis
|
2020-04-06 12:17:54 +01:00 |
|
gingerBill
|
db7a3ffd2a
|
Merge branch 'master' into llvm-integration
|
2020-03-05 21:12:16 +00:00 |
|
gingerBill
|
e92fdb4a99
|
x if cond else y and x when cond else y expressions
|
2020-03-05 20:34:30 +00:00 |
|
gingerBill
|
8ec5987ae1
|
Merge branch 'master' into llvm-integration
|
2020-02-29 09:55:25 +00:00 |
|
gingerBill
|
3d74c2f6c0
|
Add proc(#const x: Type) to enforce a constant parameter (but not polymorphic) to a procedure
|
2020-02-26 22:53:40 +00:00 |
|
gingerBill
|
2180f4a475
|
Basic work on obj generation
|
2020-02-23 10:04:25 +00:00 |
|
gingerBill
|
35711a400c
|
Anonymous procedure literal support
|
2020-02-08 12:49:38 +00:00 |
|
gingerBill
|
b555b0083a
|
Slowly add more statements and expressions; Add header file
|
2020-02-05 20:18:19 +00:00 |
|
gingerBill
|
0f399a7294
|
Add union #maybe
|
2020-02-01 11:10:28 +00:00 |
|
gingerBill
|
d1c9fd4e01
|
Implement #complete switch by default, replace with #partial switch #511
|
2019-12-22 12:03:48 +00:00 |
|
gingerBill
|
4ba579bc25
|
Also allow #no_bounds_check on an expression #499
|
2019-12-15 11:41:21 +00:00 |
|
gingerBill
|
7f5021c8e9
|
Disallow procedure calls with an associated deferred procedure to be used in logical binary expressions (short-circuiting)
|
2019-12-15 11:10:50 +00:00 |
|
gingerBill
|
e229885b2b
|
Remove addressing mode Addressing_Immutable
|
2019-12-01 19:11:00 +00:00 |
|
gingerBill
|
d22e5b697d
|
Add new #soa and #vector syntax
|
2019-11-17 10:30:37 -08:00 |
|
gingerBill
|
dfb3101ecf
|
SOA Struct support intrinsics.soa_struct
|
2019-11-02 21:08:51 +00:00 |
|
gingerBill
|
3b898e5224
|
Add @force to foreign import
|
2019-11-01 19:26:22 +00:00 |
|
gingerBill
|
14e8b299b7
|
Fix slice and dynamic array lengths determined from ranged compound literals
|
2019-10-26 14:43:06 +01:00 |
|
gingerBill
|
7fae890ef9
|
Allow ranges for array-like compound literals
|
2019-10-26 14:06:29 +01:00 |
|
gingerBill
|
f12ded54f2
|
Support for named indices for array-like compound literals {3 = a, 1 = b}
|
2019-10-20 13:11:28 +01:00 |
|
gingerBill
|
4afc78efc6
|
Add where clauses to struct and union
|
2019-09-08 12:12:41 +01:00 |
|
gingerBill
|
97dece15d7
|
Minor changes
|
2019-09-01 22:18:55 +01:00 |
|
gingerBill
|
657103c4cf
|
ThreadPool for the parser
|
2019-09-01 20:02:39 +01:00 |
|
gingerBill
|
b9d3129fb3
|
where clauses for procedure literals
|
2019-08-31 20:13:28 +01:00 |
|
gingerBill
|
01c10aa944
|
inline for loops (only for 'in' based for loops)
|
2019-08-26 13:54:35 +01:00 |
|
gingerBill
|
9c63212824
|
Struct field tags
|
2019-08-09 21:59:58 +01:00 |
|
gingerBill
|
f25818e923
|
Make procedure parameters just named values rather than copied variables
|
2019-07-15 21:18:37 +01:00 |
|
gingerBill
|
4ab9edeb53
|
union #no_nil
|
2019-07-09 10:28:13 +01:00 |
|
gingerBill
|
bdab5e00da
|
Minor code clean up
|
2019-03-11 19:52:40 +00:00 |
|
gingerBill
|
ad3b6ab718
|
Implicit Selector Expressions: .A
|
2019-03-06 16:19:47 +00:00 |
|
gingerBill
|
a9ab90bd24
|
Make static an attribute rather than a keyword prefix
|
2019-02-23 22:17:27 +00:00 |
|