|
|
38e1e77aed
|
Compilation fix
|
2026-08-05 16:51:28 +03:00 |
|
|
|
e0bc4a361d
|
Support multiline comments
|
2026-08-05 14:47:53 +03:00 |
|
|
|
26b0e6771d
|
Remove comments from parser & grammar
|
2026-08-05 14:34:28 +03:00 |
|
|
|
a0dd6f9ca6
|
Modules wip: huge refactor + support linking several input files into a single executable memory blob
|
2026-08-05 14:30:38 +03:00 |
|
|
|
5c3e59eaf5
|
Modules wip: refactor IR compiler
|
2026-08-02 22:27:30 +03:00 |
|
|
|
cb84430883
|
Modules wip: extract AST preprocessing to a separate 'semantic' library, move fake root AST node for module entry point to IR compiler internals
|
2026-08-02 22:00:02 +03:00 |
|
|
|
b16894ebd1
|
x86_64 backend: tons of fixes + raytracer example works!
|
2026-08-02 15:24:50 +03:00 |
|
|
|
4c583c8b3b
|
x86_64 backend: support returning structs & arrays
|
2026-08-02 15:24:50 +03:00 |
|
|
|
866af8d21c
|
x86_64 backend: fix handling large struct function arguments
|
2026-08-02 15:24:50 +03:00 |
|
|
|
d504a90555
|
Support structs and arrays as function arguments on x86_64
|
2026-08-02 15:24:50 +03:00 |
|
|
|
649574c573
|
Add software implementation of float16
|
2026-08-02 15:24:47 +03:00 |
|
|
|
e56242ca62
|
Fix macos_aarch64 backend integer casts
|
2026-07-29 16:28:44 +03:00 |
|
|
|
f727883f46
|
x86_64 compiler backend wip
|
2026-07-28 23:21:45 +03:00 |
|
|
|
877efa6981
|
Add jit/helpers.hpp
|
2026-07-28 23:21:22 +03:00 |
|
|
|
09f52ab0d2
|
Support pointers in types::type_size
|
2026-07-28 23:20:58 +03:00 |
|
|
|
8aec010bd0
|
Aarch64 compiler cleanup
|
2026-07-28 23:20:14 +03:00 |
|
|
|
2c11ee39de
|
Linux compilation fixes
|
2026-07-27 17:45:08 +03:00 |
|
|
|
88b215e5cd
|
Split jit::abi into isa & platform enums, rename arch/aarch64 -> arch/macos_aarch64 backend
|
2026-07-27 17:36:02 +03:00 |
|
|
|
893aa5d979
|
Switch to curly braces for scoping instead of indentation
|
2026-07-27 16:12:56 +03:00 |
|
|
|
9337490f5b
|
Implement global variables
|
2026-05-08 21:38:44 +03:00 |
|
|
|
ec751ec6c2
|
Fix treating ir::jump_if_nonzero as non-value instruction
|
2026-05-07 22:32:46 +03:00 |
|
|
|
d146ec69fd
|
Allow mutable function arguments
|
2026-05-07 13:47:15 +03:00 |
|
|
|
800de413cf
|
Add sizeof & alignof builtins
|
2026-04-03 00:04:12 +03:00 |
|
|
|
2a3e2171b0
|
Implement field access for pointer-to-struct
|
2026-04-02 22:48:54 +03:00 |
|
|
|
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 |
|