|
|
393db4b912
|
Dump AST and IR immediately after handling a file
|
2026-05-07 22:33:16 +03:00 |
|
|
|
42e7f7961e
|
New IR -> Aarch64 compiler wip: basic operations done (no pointers, structs, arrays)
|
2026-03-25 00:22:50 +03:00 |
|
|
|
ae01f53d15
|
Improve interpreter input handling
|
2026-03-18 18:48:01 +03:00 |
|
|
|
25672d3f05
|
First common arch-independent IR prototype (no structs or arrays yet)
|
2026-03-18 18:35:47 +03:00 |
|
|
|
b25400ad65
|
Properly implement inner functions in aarch64 compiler & support module entry point
|
2026-03-15 14:16:33 +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 |
|
|
|
11656fb296
|
Support printing multiline error context in interpreter
|
2026-03-13 13:39:28 +03:00 |
|
|
|
788e98409a
|
Implement remainder operator in aarch64 compiler
|
2026-03-13 11:24:43 +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 |
|
|
|
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 |
|
|
|
c7e0232b15
|
Aarch64 JIT: check function pointer support
|
2026-01-19 15:14:13 +03:00 |
|
|
|
7a3c7cca5d
|
Support mutually recursive functions in identifier resolution & type checker
|
2026-01-16 15:25:44 +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 |
|
|
|
0d87d35c47
|
Aarch 64 jit compiler wip: floating-point support wip
|
2026-01-05 00:05:20 +03:00 |
|
|
|
f28138e5b9
|
Aarch64 jit compiler wip: implement branching and loops
|
2026-01-04 13:45:03 +03:00 |
|
|
|
7ed008543c
|
Aarch64 compiler wip: support function arguments (integers only)
|
2026-01-04 12:27:46 +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 |
|
|
|
0ba3e4324d
|
Interpreter clean-up (wip - identifier/function resolving is broken)
|
2025-12-29 14:42:25 +03:00 |
|
|
|
a36ba2610b
|
Add inferred type to AST nodes & implement type checking & inference
|
2025-12-23 12:17:42 +03:00 |
|
|
|
a35add07db
|
Refactor error types
|
2025-12-22 23:50:52 +03:00 |
|
|
|
26ab539d3c
|
Preprocess tabs when printing error context
|
2025-12-20 12:52:23 +03:00 |
|
|
|
709c7a7a0a
|
Introduce dedicated type tree & AST tree visitors and use them in pretty-printing
|
2025-12-20 01:06:54 +03:00 |
|
|
|
437123f6f4
|
Add scope levels to identifier AST nodes & implement identifier resolution
|
2025-12-19 17:42:40 +03:00 |
|
|
|
cad6c06607
|
Add JIT library & basic jit interface (not implemented yet)
|
2025-12-18 18:57:55 +03:00 |
|
|
|
d64b6db229
|
Remove interpreter <- parser dependency
|
2025-12-18 17:13:00 +03:00 |
|
|
|
6a3835951f
|
Make sure parsed filenames live as long as the AST
|
2025-12-18 12:49:53 +03:00 |
|
|
|
6aaa58f518
|
Refactor interpreter: parse all files before executing them & improve error reporting
|
2025-12-18 11:44:28 +03:00 |
|
|
|
ff4d0a9c3e
|
Rename 'interpreter.hpp' -> 'exec.hpp'
|
2025-12-17 15:53:24 +03:00 |
|
|
|
41d3bb0f3d
|
Implement functions in parser & interpreter
|
2025-12-16 19:19:46 +03:00 |
|
|
|
ae3e2270c0
|
Add dedicated parse_error exception
|
2025-12-16 15:08:16 +03:00 |
|
|
|
9d7f81d7fc
|
Initial commit: wip spec, ast definition, parser & interpreter
|
2025-12-16 14:01:50 +03:00 |
|