Commit Graph

61 Commits

Author SHA1 Message Date
61ba00ea58 Transform AST into MIR successfully, completing the chain 2025-07-05 01:34:57 +03:00
a66fc61c07 Fiddle with names a bit 2025-07-04 21:54:07 +03:00
8a32e66ba8 Refactor a bunch of stuff, produce compiling MIR 2025-07-04 21:30:40 +03:00
05c585d47c Add sub and fibonacci calculation 2025-06-29 19:11:56 +03:00
7b93ab5d2e Fix from_cstring from taking ownership 2025-06-29 18:19:59 +03:00
814b816450 Add phi 2025-06-29 01:18:17 +03:00
5b23d7d4d5 rework 2025-06-28 21:58:35 +03:00
740aee1382 Add SIGN to IntegerType 2025-06-28 18:56:24 +03:00
02d8b37424 Move context.rs to lib.rs 2025-06-28 18:49:54 +03:00
85564c74c9 Rework api 2025-06-28 00:14:56 +03:00
54f25481f4 Misc changes 2025-06-27 20:37:31 +03:00
922afaa672 Change clang-command to ld, add util.rs 2025-06-25 21:38:30 +03:00
d0aa3e1410 Add the ability to call functions 2025-06-24 23:30:29 +03:00
5f93b7c9c2 Add rudamentary LLVM lib stuff, make a fully compiling executable 2025-06-24 23:10:44 +03:00
6d3d0fd03e Move reid to subproject 2025-06-24 17:17:15 +03:00
a3642f127c Verify before printing 2024-09-12 20:41:23 +03:00
7f3a3ac1f8 modify how block is codegenerated 2024-08-25 23:28:01 +03:00
e21f47e34b Implement some kind of if/else 2024-08-25 23:17:52 +03:00
8defa39b31 Restructure a bit 2024-08-25 22:29:45 +03:00
6a4c30e49e Add scope.inner 2024-08-22 00:34:58 +03:00
8b8cd2c464 Add comments to easy.reid 2024-08-21 23:31:31 +03:00
6448b0c438 Add necessary codegen for easy.reid 2024-08-21 23:31:09 +03:00
e00d9afc7b Add Scope 2024-08-21 23:07:04 +03:00
7208fe962e Read return and function name from signature 2024-08-21 22:14:32 +03:00
525dab2147 dd IRValue, IRBlock 2024-08-21 22:00:53 +03:00
9b5d8acdb4 Add IRFunction, mess with lifetimes 2024-08-21 21:16:23 +03:00
22ee941ad6 Move module creation to IRModule 2024-08-21 20:12:47 +03:00
9a74158ae7 Minor tweaks 2024-08-21 20:08:02 +03:00
dd3e0618ae Add the very most basic codegen 2024-07-17 20:43:28 +03:00
8176dc98a3 Add TokenStream 2024-07-17 20:08:24 +03:00
c5c9cd3458 Add parse_if and parse_map 2024-07-17 19:28:06 +03:00
c6e6e1dbee Fix operator precedence parsing 2024-07-17 18:39:31 +03:00
47b9d7e044 Disable warnings for lacking ; for if-statements 2023-12-13 00:33:13 +02:00
5084f21ff9 Add parsing for if-statements 2023-08-03 21:24:57 +03:00
4c8417cbee Add return types, function args 2023-08-03 20:30:00 +03:00
420fd7b74b Implement block-level-expressions 2023-08-03 20:10:12 +03:00
413cd87a02 Add soft/hard returns 2023-08-03 20:08:20 +03:00
f22505be91 Add function calls and mult 2023-08-03 00:53:39 +03:00
4e89cd7355 Add more error raporting 2023-08-02 20:22:10 +03:00
9710406747 Fix error 2023-08-02 20:17:59 +03:00
91a6485d5a Add more error handling 2023-08-02 20:17:06 +03:00
9b7a31c988 Add errors for lexer and parser 2023-08-02 19:58:10 +03:00
c7f11e5091 Add errors, move compiling to examples 2023-08-02 19:17:57 +03:00
e9aab4f43e Use print to string instead of dump 2023-08-02 18:48:56 +03:00
2ced45eb40 Refactor 2023-08-02 18:43:47 +03:00
08909d76ee Fix warnings 2023-08-02 18:38:38 +03:00
9019e1e5a7 Split codegen properly 2023-08-02 18:37:31 +03:00
817b7c2096 Add Scope-struct 2023-08-02 18:29:20 +03:00
612b4d63a8 Reorganize code 2023-08-02 18:19:30 +03:00
297ff832b5 Remove comment 2023-08-02 17:03:21 +03:00