Jakub Doka
58479deca1
polishing the compiler cli (cheating with clap)
...
also adding the raylib example
Signed-off-by: Jakub Doka <jakub.doka2@gmail.com>
2024-12-30 13:26:38 +01:00
Jakub Doka
ee67ebb017
adding cranelift backend
...
also splitting hbc binary into a separate crate to avoid dependency
cycle, the backand is thus far capable of compiling the simplest program
that returns an custom status code
Signed-off-by: Jakub Doka <jakub.doka2@gmail.com>
2024-12-29 13:30:29 +01:00
Jakub Doka
6085177982
fixed the unreachable functions deleting branches
...
Signed-off-by: Jakub Doka <jakub.doka2@gmail.com>
2024-12-17 20:53:13 +01:00
Jakub Doka
3b4b30b2bd
Restructuring the compiler
...
Signed-off-by: Jakub Doka <jakub.doka2@gmail.com>
2024-12-01 14:01:44 +01:00
Jakub Doka
cf672beb79
making ableos path resolver public
...
Signed-off-by: Jakub Doka <jakub.doka2@gmail.com>
2024-11-30 22:45:59 +01:00
Jakub Doka
19aca050ed
add new ableos path resolver, separate platform independent code
...
Signed-off-by: Jakub Doka <jakub.doka2@gmail.com>
2024-11-30 18:57:29 +01:00
Jakub Doka
d368ac023b
making error fields public
...
Signed-off-by: Jakub Doka <jakub.doka2@gmail.com>
2024-11-30 16:49:42 +01:00
Jakub Doka
8ea6c5cfcc
fixing miscompilation of generic struct functions
...
Signed-off-by: Jakub Doka <jakub.doka2@gmail.com>
2024-11-30 16:30:58 +01:00
Jakub Doka
e7cd2c0129
making the loader function customizable
...
Signed-off-by: Jakub Doka <jakub.doka2@gmail.com>
2024-11-30 15:44:51 +01:00
Jakub Doka
8892dd729a
fixing the false return location
2024-11-17 18:15:58 +01:00
Jakub Doka
e94b812b3b
removing the regalloc dependency
2024-11-16 14:22:34 +01:00
Jakub Doka
454b0ffd1c
adding regalloc option
2024-11-14 21:34:31 +01:00
Jakub Doka
68c0248189
making type manipulation nicer
2024-11-08 10:25:34 +01:00
Jakub Doka
455f70db6e
adding better error reporting when compiler crashes errors are now sent trough out buffer
2024-11-08 08:36:00 +01:00
Jakub Doka
0374848b28
fixing formatter not reporting errors
2024-11-07 17:02:22 +01:00
Jakub Doka
87cb77a553
making a Backend trait to separate the different backends we will have in the fucture
2024-11-05 14:52:30 +01:00
Jakub Doka
849e842336
dont write to the file if the contents did not differ from formatted
2024-10-27 18:56:29 +01:00
Jakub Doka
5c82623db9
removing stuff
2024-10-27 18:37:18 +01:00
Jakub Doka
5926f69e6c
fixing missing upcast
2024-10-27 18:04:50 +01:00
Jakub Doka
b187af64a8
removing old compiler
2024-10-27 13:57:00 +01:00
Jakub Doka
af4d965b8c
fixed fmt error reporting
2024-10-26 09:53:14 +02:00
Jakub Doka
517850f283
fixing undescriptive error or not enough arguments
2024-10-25 22:59:01 +02:00
Jakub Doka
41b70bec43
should work better
2024-10-23 12:26:07 +02:00
Jakub Doka
b95bddac7b
ups
2024-10-22 12:57:49 +02:00
Jakub Doka
7d53706e71
adding --optimize flag to the compiler
2024-10-22 12:50:54 +02:00
Jakub Doka
19a6cdd764
implementing embeds
2024-10-13 15:33:57 +02:00
Jakub Doka
2660d976fe
fixing arithmetic bug
2024-10-13 15:22:16 +02:00
Jakub Doka
0f4ff918d2
fixing bugs and improving memory consumption
2024-10-13 12:25:12 +02:00
Jakub Doka
f0ae65606d
renaming directories, reducing temporary allocations during parsing
2024-10-10 15:48:08 +02:00