|
|
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 |
|
|
|
393db4b912
|
Dump AST and IR immediately after handling a file
|
2026-05-07 22:33:16 +03:00 |
|
|
|
ec751ec6c2
|
Fix treating ir::jump_if_nonzero as non-value instruction
|
2026-05-07 22:32:46 +03:00 |
|
|
|
ac58713fe1
|
Fix mandelbrot example
|
2026-05-07 13:47:27 +03:00 |
|
|
|
d146ec69fd
|
Allow mutable function arguments
|
2026-05-07 13:47:15 +03:00 |
|
|
|
79838a1bb3
|
Add raytracer example performance timings
|
2026-04-05 19:14:37 +03:00 |
|
|
|
bd9425ebec
|
Add fresnel in raytracer example
|
2026-04-04 16:59:21 +03:00 |
|
|
|
028895ce7f
|
Update spec
|
2026-04-03 13:18:45 +03:00 |
|
|
|
4a83c3b9df
|
Update spec
|
2026-04-03 00:15:02 +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 |
|
|
|
42defff7d6
|
Update spec
|
2026-04-02 21:19:36 +03:00 |
|
|
|
4545713bab
|
Use ternary if in a few more places in raytracer
|
2026-04-02 21:04:01 +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 |
|
|
|
356eea4fb8
|
Tweak readme
|
2026-04-01 23:45:54 +03:00 |
|
|
|
20c84596df
|
Add multi-threading in raytracer example
|
2026-04-01 23:43:58 +03:00 |
|
|
|
e0c1db4978
|
Fix calling functions by pointer in Aarch64 compiler
|
2026-04-01 23:43:47 +03:00 |
|
|
|
c83a5be119
|
Add raytracer example (wip)
|
2026-04-01 17:04:54 +03:00 |
|
|
|
07a50e5f7a
|
Update spec
|
2026-04-01 17:04:06 +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 |
|