|
|
8ba5345daf
|
Implement ternary ifs
|
2026-04-02 20:19:55 +03:00 |
|
|
|
b3fc435dd6
|
Fix initializing variable (lmao)
|
2026-04-02 20:19:39 +03:00 |
|
|
|
471b3319a2
|
Fix comparing pointer types
|
2026-04-02 19:42:09 +03:00 |
|
|
|
06d509bcab
|
Add break & continue statements
|
2026-04-02 17:10:42 +03:00 |
|
|
|
e0c1db4978
|
Fix calling functions by pointer in Aarch64 compiler
|
2026-04-01 23:43:47 +03:00 |
|
|
|
d17f48cf7f
|
Fix some escape character literals & add a few more
|
2026-04-01 17:03:13 +03:00 |
|
|
|
7b6f88ea5a
|
Add bounds checks for aarch64 instruction builder immediate arguments
|
2026-03-31 19:28:00 +03:00 |
|
|
|
5450fe8077
|
Fix comparing pointers
|
2026-03-31 19:27:36 +03:00 |
|
|
|
e2781fef8f
|
Add ast::type_alignment
|
2026-03-31 19:27:14 +03:00 |
|
|
|
d5eab856c8
|
Change double-precision suffix from l to d
|
2026-03-31 16:00:34 +03:00 |
|
|
|
e573081647
|
Add logical-compound-assigment operators (^=, &=, |=)
|
2026-03-31 16:00:23 +03:00 |
|
|
|
3ea319f7bf
|
Fix evaluating array address in IR compiler
|
2026-03-31 15:59:47 +03:00 |
|
|
|
6863cdf567
|
Fix calling function returning large structs from functions returning large structs in Aarch64 compiler
|
2026-03-31 13:29:37 +03:00 |
|
|
|
8fd548fb92
|
Fix casting array to pointer in IR compiler
|
2026-03-31 13:07:44 +03:00 |
|
|
|
fefe741b16
|
Fix address of operator in IR compiler
|
2026-03-31 13:07:28 +03:00 |
|
|
|
0784e27a01
|
Fix jumping in Aarch64 compiler
|
2026-03-30 20:29:58 +03:00 |
|
|
|
580ae22a98
|
Fix printing struct fields
|
2026-03-30 20:29:39 +03:00 |
|
|
|
b8658816b4
|
Fix short-circuiting operators (SQUASH)
|
2026-03-30 20:29:25 +03:00 |
|
|
|
ac6eacd80b
|
Add a hacky implememntation of global constants
|
2026-03-30 20:02:41 +03:00 |
|
|
|
86216e8cf3
|
Fix short-circuiting operators
|
2026-03-30 20:02:13 +03:00 |
|
|
|
75f1cea3f3
|
Support casting pointers <-> u64
|
2026-03-30 20:01:56 +03:00 |
|
|
|
52a2a00d1f
|
Fix returning large structs from functions in Aarch64
|
2026-03-30 16:53:02 +03:00 |
|
|
|
6d69f846f4
|
Add compound assignment operators
|
2026-03-30 13:33:16 +03:00 |
|
|
|
171e07c58d
|
Fix type expression parsing precedence: (t -> t mut *) caused shift/reduce conflict
|
2026-03-30 13:32:36 +03:00 |
|
|
|
38fd23b50e
|
Add left/right shift operators
|
2026-03-30 12:04:34 +03:00 |
|
|
|
138bddf187
|
Remove old aarch64 compiler and update plans
|
2026-03-29 23:22:29 +03:00 |
|
|
|
e771542773
|
Implement array-types function arguments & return values in Aarch64 compiler
|
2026-03-29 22:52:48 +03:00 |
|
|
|
1404437324
|
IR & Aarch64 compiler arrays support wip
|
2026-03-29 19:37:49 +03:00 |
|
|
|
46c33b2acf
|
Implement proper struct field assigment in IR compiler
|
2026-03-29 12:20:49 +03:00 |
|
|
|
79101ff3bd
|
Fix computing struct layouts
|
2026-03-29 12:20:17 +03:00 |
|
|
|
041513f33e
|
Support struct return values in aarch64 compiler
|
2026-03-27 20:25:16 +03:00 |
|
|
|
7622a882b5
|
Support struct function arguments + fixes
|
2026-03-27 20:02:50 +03:00 |
|
|
|
62fc4c88de
|
Fix floating-point function arguments in Aarch64 compiler v2
|
2026-03-27 16:17:37 +03:00 |
|
|
|
0dc740d656
|
IR & Aarch64 compiler structs support wip: struct constructors, assignment, field access
|
2026-03-27 14:53:36 +03:00 |
|
|
|
14cb393076
|
Support comparison operators for integers of different types
|
2026-03-26 23:49:28 +03:00 |
|
|
|
81825aee7f
|
Tweak reporting function call type error
|
2026-03-26 15:53:06 +03:00 |
|
|
|
d31758eb4a
|
Support frame pointers
|
2026-03-25 19:23:12 +03:00 |
|
|
|
64514d9bf4
|
Fix storing <8 byte sized objects on stack
|
2026-03-25 19:22:52 +03:00 |
|
|
|
5d7968c30b
|
Implement IR + Aarch64 pointers
|
2026-03-25 16:30:43 +03:00 |
|
|
|
42e7f7961e
|
New IR -> Aarch64 compiler wip: basic operations done (no pointers, structs, arrays)
|
2026-03-25 00:22:50 +03:00 |
|
|
|
c3c5010e04
|
Store node list via shared_ptr in module_context
|
2026-03-23 21:53:42 +03:00 |
|
|
|
dd3eb5d14b
|
Implement pointer support in IR via load/store instructions
|
2026-03-23 15:35:28 +03:00 |
|
|
|
0c11b09548
|
Pointers wip
|
2026-03-23 14:41:47 +03:00 |
|
|
|
776c12f6b5
|
Update plans
|
2026-03-23 00:26:58 +03:00 |
|
|
|
b267f09ea4
|
Fix abi.cpp indentation
|
2026-03-23 00:17:26 +03:00 |
|
|
|
e084b48fd3
|
Refactor IR compiler: get rid of useless scoping
|
2026-03-23 00:12:55 +03:00 |
|
|
|
ebc19fad20
|
Refactor type checker: remove useless scoping, resolve type layouts all in one go
|
2026-03-22 23:49:29 +03:00 |
|
|
|
c4d1252462
|
Refactor return AST node: store direct function node reference instead of relative scope level
|
2026-03-22 20:18:39 +03:00 |
|
|
|
5d00f1ddb7
|
Refactor AST: store direct references to AST nodes in indentifiers
|
2026-03-22 20:02:40 +03:00 |
|
|
|
292d6eeabf
|
Refactor: split pre-AST (contains if/else if/else blocks, field definitions, no hierarchy) and the actual AST obtained after resolving scoping & indentation (contains if chains, no field definitions)
|
2026-03-22 14:06:34 +03:00 |
|