|
|
1404437324
|
IR & Aarch64 compiler arrays support wip
|
2026-03-29 19:37:49 +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 |
|
|
|
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 |
|
|
|
0c11b09548
|
Pointers wip
|
2026-03-23 14:41:47 +03:00 |
|
|
|
b267f09ea4
|
Fix abi.cpp indentation
|
2026-03-23 00:17:26 +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 |
|
|
|
56c63d50ac
|
Struct types refactor v2: store AST node pointer in struct type
|
2026-03-22 13:34:35 +03:00 |
|
|
|
1a0dd2a48f
|
Aarch64 JIT compiler wip: partial struct support
|
2026-03-17 18:08:23 +03:00 |
|
|
|
b25400ad65
|
Properly implement inner functions in aarch64 compiler & support module entry point
|
2026-03-15 14:16:33 +03:00 |
|
|
|
89b6b09be5
|
Fix scope stack offset cleanup in aarch64 compiler
|
2026-03-13 14:25:05 +03:00 |
|
|
|
51c78169b3
|
Validate functions with no return & automatically add return in the end of a function returning unit
|
2026-03-13 13:40:09 +03:00 |
|
|
|
ad46b230d8
|
Fix missing handling of expression statements in aarch64 compiler
|
2026-03-13 12:53:18 +03:00 |
|
|
|
e5ce32d25f
|
Fix handling empty returns in aarch64 compiler
|
2026-03-13 12:53:03 +03:00 |
|
|
|
788e98409a
|
Implement remainder operator in aarch64 compiler
|
2026-03-13 11:24:43 +03:00 |
|
|
|
0541068c2b
|
Improve 'not implemented' error messages
|
2026-03-13 11:09:39 +03:00 |
|
|
|
7f574eabbd
|
Fix extending register after logical not in aarch64 compiler
|
2026-03-13 11:05:20 +03:00 |
|
|
|
c8cd86dd0b
|
Add foreign functions (stub in interpreter, implemented in aarch64 compiler)
|
2026-03-13 11:01:53 +03:00 |
|
|
|
cb433d87bf
|
Fix short-circuit || for small integer types
|
2026-03-12 23:13:42 +03:00 |
|
|
|
927368aa80
|
Add short-circuiting versions of and/or (&& and ||) and implement them for bools and integers in interpreter and aarch64 compiler
|
2026-03-12 21:37:15 +03:00 |
|
|
|
30b88d4add
|
Aarch64 JIT compiler: Fix else blocks
|
2026-01-19 15:13:55 +03:00 |
|
|
|
aab10621cc
|
Don't check the host OS when determining host ABI
|
2026-01-11 16:25:48 +03:00 |
|
|
|
687cf31063
|
Check for mmap call failure
|
2026-01-11 15:47:57 +03:00 |
|
|
|
1dc60011d7
|
Implement function calls
|
2026-01-06 22:10:22 +03:00 |
|
|
|
cb32ec3459
|
Refactor jit-compiling interface: introduce common global program context with shared code & symbol tables
|
2026-01-06 19:10:52 +03:00 |
|
|
|
668851f6bf
|
Aarch64 jit compiler wip: fix loading/storing floating-point values
|
2026-01-06 12:45:12 +03:00 |
|
|
|
00d8f0fe52
|
Aarch64 jit compiler wip: implement integer & floating-point type conversions
|
2026-01-06 12:11:56 +03:00 |
|
|
|
12a4f64aed
|
Aarch64 jit compiler wip: suppport floating-point variables
|
2026-01-05 10:46:53 +03:00 |
|
|
|
c9f4a9c19d
|
Aarch64 jit compiler wip: suppport floating-point arguments
|
2026-01-05 10:29:46 +03:00 |
|
|
|
428283dbf8
|
Aarch64 jit compiler wip: floating-point comparisons
|
2026-01-05 10:23:33 +03:00 |
|
|
|
8f5744c3f4
|
Aarch64 jit compiler wip: floating-point arithmetic operators
|
2026-01-05 01:03:52 +03:00 |
|
|
|
c253041068
|
Aarch64 jit compiler wip: support f16 literals
|
2026-01-05 00:49:47 +03:00 |
|
|
|
0d87d35c47
|
Aarch 64 jit compiler wip: floating-point support wip
|
2026-01-05 00:05:20 +03:00 |
|
|
|
8b560b660b
|
Aarch 64 jit compiler wip: fix loading literals
|
2026-01-05 00:05:04 +03:00 |
|
|
|
e5b11fd707
|
Aarch64 jit compiler wip: support bool function arguments
|
2026-01-04 13:52:53 +03:00 |
|
|
|
f28138e5b9
|
Aarch64 jit compiler wip: implement branching and loops
|
2026-01-04 13:45:03 +03:00 |
|
|
|
db4a8ac264
|
Aarch64 compiler wip: replace csel with csetm for comparisons
|
2026-01-04 12:36:24 +03:00 |
|
|
|
7ed008543c
|
Aarch64 compiler wip: support function arguments (integers only)
|
2026-01-04 12:27:46 +03:00 |
|
|
|
43f2d4531a
|
Aarch64 compiler wip: properly handle scopes
|
2026-01-04 12:17:12 +03:00 |
|
|
|
716d51221f
|
Aarch64 compiler wip: simplify stack, always 16-byte-align pushed values
|
2026-01-04 12:15:52 +03:00 |
|
|
|
4df89de879
|
Aarch64 compiler wip: variables
|
2026-01-04 12:07:35 +03:00 |
|
|
|
d5065ec38e
|
Aarch64 JIT-compiling wip: no-argument functions, arithmetic & logical operations, comparisons (integers only)
|
2026-01-03 22:38:43 +03:00 |
|
|
|
98a5720141
|
Split compiled module code & data segments and use mprotect to make a module host-executable
|
2026-01-02 11:37:03 +03:00 |
|