Commit graph

417 commits

Author SHA1 Message Date
Eduard Urbach
7b18056006
Reorganized file structure 2024-07-11 12:04:51 +02:00
Eduard Urbach
c2401bf826
Reordered jump cases 2024-07-11 11:53:49 +02:00
Eduard Urbach
e24d9ebb50
Implemented 32-bit jumps 2024-07-10 15:01:46 +02:00
Eduard Urbach
d3436b13a5
Reduced usage of temporary registers 2024-07-10 10:48:15 +02:00
Eduard Urbach
4386392844
Improved code generation 2024-07-09 17:00:04 +02:00
Eduard Urbach
1204591cdc
Improved code generation 2024-07-09 12:43:29 +02:00
Eduard Urbach
59d6653eba
Implemented a basic optimization 2024-07-09 11:43:33 +02:00
Eduard Urbach
5cbc3315a7
Added fibonacci example 2024-07-09 10:28:14 +02:00
Eduard Urbach
b5bb291e47
Implemented boolean operators 2024-07-08 13:38:44 +02:00
Eduard Urbach
ee16774fe7
Improved branch compilation 2024-07-07 21:55:32 +02:00
Eduard Urbach
6aad74d6dd
Simplified branch jumps 2024-07-07 19:44:54 +02:00
Eduard Urbach
9f341a6146
Added more tests 2024-07-07 17:13:22 +02:00
Eduard Urbach
23b4e6442d
Improved branch code generation 2024-07-07 15:20:21 +02:00
Eduard Urbach
403e78f655
Improved branch code generation 2024-07-07 14:07:34 +02:00
Eduard Urbach
91e300e49a
Implemented if statements 2024-07-07 12:30:57 +02:00
Eduard Urbach
6fc234c700
Implemented run command 2024-07-06 19:40:20 +02:00
Eduard Urbach
a9f305dec2
Removed incorrect optimization 2024-07-06 15:20:52 +02:00
Eduard Urbach
8f9481c548
Added more tests 2024-07-06 13:06:39 +02:00
Eduard Urbach
cc66b02bf8
Added more tests 2024-07-05 17:11:30 +02:00
Eduard Urbach
d771708693
Improved code generation 2024-07-05 16:31:33 +02:00
Eduard Urbach
3e92c83c0d
Improved code generation 2024-07-05 15:51:19 +02:00
Eduard Urbach
62057704f3
Improved assignment error message 2024-07-05 09:50:46 +02:00
Eduard Urbach
3340a5824f
Improved code generation 2024-07-04 12:32:56 +02:00
Eduard Urbach
4d88260333
Improved code generation 2024-07-03 16:37:59 +02:00
Eduard Urbach
feebfe65bb
Refactored code structure 2024-07-03 11:39:24 +02:00
Eduard Urbach
ed03f6a802
Cleaned up tokenizer 2024-07-01 21:23:36 +02:00
Eduard Urbach
115f46c12d
Moved AST generation to its own package 2024-07-01 15:05:15 +02:00
Eduard Urbach
f479b5a03a
Implemented an abstract syntax tree 2024-06-30 22:54:59 +02:00
Eduard Urbach
27c707b6ff
Reorganized functions 2024-06-30 14:14:24 +02:00
Eduard Urbach
7e5d45f17d
Implemented definitions 2024-06-30 12:28:43 +02:00
Eduard Urbach
247b82b529
Implemented compilation finished events 2024-06-30 11:41:59 +02:00
Eduard Urbach
3fe2cd1da2
Improved variable lifetime tracking 2024-06-30 00:17:14 +02:00
Eduard Urbach
6e1af81733
Added tests for examples 2024-06-29 21:40:14 +02:00
Eduard Urbach
83640ba590
Implemented return values 2024-06-29 21:06:59 +02:00
Eduard Urbach
3e47a12ecd
Cleaned up function type 2024-06-29 11:49:32 +02:00
Eduard Urbach
5f2ff5e74e
Added more tests 2024-06-28 23:13:55 +02:00
Eduard Urbach
445556b64d
Reordered tokenizer cases 2024-06-28 21:11:05 +02:00
Eduard Urbach
2520681ad3
Added single line comments 2024-06-28 20:29:07 +02:00
Eduard Urbach
3664e74074
Implemented invalid character checks 2024-06-28 19:54:26 +02:00
Eduard Urbach
6852cbb24e
Improved tokenizer benchmarks 2024-06-28 19:33:02 +02:00
Eduard Urbach
8ae5246807
Improved performance 2024-06-28 11:45:54 +02:00
Eduard Urbach
c8b25dd5b7
Reduced memory usage 2024-06-28 10:28:23 +02:00
Eduard Urbach
668971808b
Added more tests 2024-06-27 21:39:04 +02:00
Eduard Urbach
77cfe9ff31
Cleaned up linter warnings 2024-06-27 20:54:07 +02:00
Eduard Urbach
a64169d624
Improved CLI 2024-06-27 20:30:33 +02:00
Eduard Urbach
526b92aa09
Implemented dead code elimination 2024-06-27 17:36:45 +02:00
Eduard Urbach
d86d411959
Improved verbose output 2024-06-27 17:13:48 +02:00
Eduard Urbach
61024bb133
Added assembler syntax highlighting 2024-06-27 16:05:23 +02:00
Eduard Urbach
ec5240425b
Added simple variable lifetimes 2024-06-27 15:23:02 +02:00
Eduard Urbach
dc497ba4fb
Added call registers 2024-06-27 14:25:53 +02:00