Commit Graph

257 Commits

Author SHA1 Message Date
115f46c12d
Moved AST generation to its own package 2024-07-01 15:05:15 +02:00
f479b5a03a
Implemented an abstract syntax tree 2024-06-30 22:54:59 +02:00
27c707b6ff
Reorganized functions 2024-06-30 14:14:24 +02:00
7e5d45f17d
Implemented definitions 2024-06-30 12:28:43 +02:00
247b82b529
Implemented compilation finished events 2024-06-30 11:41:59 +02:00
3fe2cd1da2
Improved variable lifetime tracking 2024-06-30 00:17:14 +02:00
6e1af81733
Added tests for examples 2024-06-29 21:40:14 +02:00
83640ba590
Implemented return values 2024-06-29 21:06:59 +02:00
3e47a12ecd
Cleaned up function type 2024-06-29 11:49:32 +02:00
5f2ff5e74e
Added more tests 2024-06-28 23:13:55 +02:00
445556b64d
Reordered tokenizer cases 2024-06-28 21:11:05 +02:00
2520681ad3
Added single line comments 2024-06-28 20:29:07 +02:00
3664e74074
Implemented invalid character checks 2024-06-28 19:54:26 +02:00
6852cbb24e
Improved tokenizer benchmarks 2024-06-28 19:33:02 +02:00
98f5f021f0
Improved benchmarks 2024-06-28 15:34:25 +02:00
8ae5246807
Improved performance 2024-06-28 11:45:54 +02:00
c8b25dd5b7
Reduced memory usage 2024-06-28 10:28:23 +02:00
668971808b
Added more tests 2024-06-27 21:39:04 +02:00
77cfe9ff31
Cleaned up linter warnings 2024-06-27 20:54:07 +02:00
a64169d624
Improved CLI 2024-06-27 20:30:33 +02:00
526b92aa09
Implemented dead code elimination 2024-06-27 17:36:45 +02:00
d86d411959
Improved verbose output 2024-06-27 17:13:48 +02:00
61024bb133
Added assembler syntax highlighting 2024-06-27 16:05:23 +02:00
a62006b4c8
Simplified test program 2024-06-27 15:26:18 +02:00
ec5240425b
Added simple variable lifetimes 2024-06-27 15:23:02 +02:00
dc497ba4fb
Added call registers 2024-06-27 14:25:53 +02:00
735057ac74
Added push and pop instructions 2024-06-27 12:59:41 +02:00
8e64271f74
Implemented parameters 2024-06-27 10:12:41 +02:00
94151773a5
Enforced consistent naming 2024-06-26 23:24:11 +02:00
d1a3ffb1a5
Implemented complex expressions 2024-06-26 22:51:14 +02:00
988a538661
Added build result struct 2024-06-26 20:16:18 +02:00
3268f7a7ee
Added tokenizer benchmark 2024-06-26 18:49:03 +02:00
49b75dbda4
Improved test coverage 2024-06-26 15:24:10 +02:00
68ec1467ef
Improved assembler 2024-06-26 14:14:11 +02:00
e23c1ece80
Added more tests 2024-06-26 12:55:22 +02:00
e69d695f6b
Improved function names 2024-06-25 23:37:14 +02:00
e6462266ef
Implemented simple expressions 2024-06-25 20:50:06 +02:00
2569c1bf63
Implemented assignments 2024-06-25 17:09:25 +02:00
c7d90a2d11
Reversed parameter order 2024-06-25 16:31:59 +02:00
a87775a1db
Implemented register push and pop 2024-06-25 16:19:47 +02:00
2cbc064f14
Implemented division 2024-06-25 00:19:01 +02:00
34af20d7a0
Implemented multiplication 2024-06-24 22:43:01 +02:00
625e8d5e2e
Improved x64 encoder 2024-06-24 21:54:03 +02:00
862598cfc1
Added more tests 2024-06-24 17:51:24 +02:00
b018d8de61
Implemented subtraction 2024-06-24 16:55:15 +02:00
597cb9abed
Implemented addition 2024-06-24 14:14:07 +02:00
41f5dcbe62
Implemented infinite loops 2024-06-24 11:00:32 +02:00
dd495fab4e
Implemented block instruction parsing 2024-06-24 00:03:26 +02:00
4fc1935183
Implemented register to register instructions 2024-06-23 20:26:53 +02:00
31845dbc48
Reduced number of tokens processed 2024-06-23 14:46:04 +02:00