Commit Graph

56 Commits

Author SHA1 Message Date
893eaaa865 Clean up and fix some warnings 2025-07-20 22:36:38 +03:00
33d5ee03f0 Improve LLVM IR SSA names 2025-07-20 20:50:32 +03:00
71a01dad69 Remove name from alloca 2025-07-20 20:24:26 +03:00
a62f9db422 Get static arrays actually working alone 2025-07-20 19:23:42 +03:00
de95db7cc1 Create named structs instead of anonymous 2025-07-20 17:51:08 +03:00
f952651a66 Get structs to work in debug information 2025-07-20 13:52:54 +03:00
c0b02f8a45 Clean up some prints 2025-07-20 05:04:12 +03:00
5f65d3438a Get arrays to work in DI, huzzah 2025-07-19 22:08:23 +03:00
c1cc1d28de Implement array and struct debug info 2025-07-19 20:51:06 +03:00
98169af415 Add array and pointer-types to lib 2025-07-19 16:18:29 +03:00
e12d0be08b Start adding debug-records 2025-07-19 13:14:53 +03:00
7c8a123945 Add variables to debug info 2025-07-19 12:15:56 +03:00
e75c38ad85 Add debug information to everything (for now) 2025-07-19 00:41:29 +03:00
e1d014bcc2 Fix warnings 2025-07-19 00:30:49 +03:00
92f12e90eb Make debug information work 2025-07-18 19:38:01 +03:00
b169e67ca4 Add debug locations to returns 2025-07-18 18:36:04 +03:00
1967cadbc0 Get debug info working very preliminarily 2025-07-18 17:26:11 +03:00
990d8cb448 Fix around in debug information generation, fix subprogram not being set 2025-07-18 16:59:05 +03:00
0c6d9885ec Add debug information compilation for subprograms and their parameters 2025-07-18 15:44:12 +03:00
3870b421a9 Refactor indexing/accessing a bit, no mutability 2025-07-16 22:04:11 +03:00
4ad871ff3d Remove dbg prints 2025-07-16 21:19:44 +03:00
dbd048c21c Fix struct indexing when setting a field 2025-07-16 20:38:21 +03:00
f2e4b3eff7 Do some cleanup 2025-07-16 18:57:42 +03:00
233ddb60f7 Fix struct gep return type, refactor a bit 2025-07-16 17:53:41 +03:00
2a879b5ef4 Implement codegen for structs 2025-07-16 17:08:15 +03:00
31185d921e Properly implement structs in lib 2025-07-16 16:11:45 +03:00
0ec427252f Add some support for custom struct types in lib 2025-07-15 20:28:59 +03:00
6788ef1690 Use AvailableExternally-linkage for externs for imports 2025-07-15 20:01:46 +03:00
bcad9b57fe Make the compiler produce .o/.asm/.ll according to input file name 2025-07-15 00:25:17 +03:00
5b5ec48b8d Put all debug prints behind debug-assertions 2025-07-14 23:43:03 +03:00
fa4df50a04 Fix linking so that non-imported functions don't bother main-module 2025-07-14 22:22:55 +03:00
2b47c4efc7 Make linking modules together work, fix printing modules 2025-07-14 21:10:13 +03:00
3d5ddc60dc Fix void function calls not discarding name 2025-07-14 19:16:52 +03:00
735c4370aa Add pub keyword 2025-07-14 18:47:02 +03:00
067c84e93e Implement external function linkage in lib 2025-07-14 18:29:45 +03:00
376baa2c9a Remove length param from string, use string pointers instead 2025-07-14 18:22:05 +03:00
83475b144c Codegen strings 2025-07-14 17:54:56 +03:00
1b9f3dbca0 Fix warnings 2025-07-14 02:26:55 +03:00
86eab29173 Make nested arrays work 2025-07-14 01:20:50 +03:00
5d06ecb874 Add broken support for nested arrays 2025-07-14 00:05:05 +03:00
cbb1be1161 Implement GEP instead of the weird thing before 2025-07-13 23:14:16 +03:00
312a777203 Get arrays to compile while still not supporting mutability for a bit 2025-07-13 22:04:49 +03:00
d62d6e2845 Actually finish array-support for lib 2025-07-13 20:56:24 +03:00
a2e52e0bd2 Add Array support to llvm-lib 2025-07-13 20:31:33 +03:00
14e0dcbe15 (broken) add part 1 of mutability 2025-07-12 02:38:31 +03:00
1aa9b3e76c Add RetVoid just in case 2025-07-09 22:01:32 +03:00
94c4ec0613 Add a block garbage-collector that will delete an unused block at end 2025-07-09 21:57:48 +03:00
d757ac4eb3 Fiddle around with if-expression codegen 2025-07-09 21:12:39 +03:00
a907fec967 Fix module docs 2025-07-09 20:07:30 +03:00
9710d17e00 Add a bunch of documentation 2025-07-09 20:01:24 +03:00