codegen almost finished

This commit is contained in:
Lorenzo Torres 2026-01-16 23:26:28 +01:00
parent ed0ad1d095
commit 870cf8f0b4
15 changed files with 523 additions and 126 deletions

22
test.l
View file

@ -1,10 +1,20 @@
struct point {
i32 x,
i32 y
}
extern i64 write(i32 fd, *u8 buf, u64 count);
extern void exit(i32 code);
extern *u8 malloc(usize size);
i32 main()
{
point result = .{ x = 2, y = 1 };
return (result.y) + 2;
[u8] message = "Hello world!\n";
*u8 message_heap = malloc(message.len);
[u8] new_message = message_heap[0..13];
u32 i = 0;
loop while i < message.len {
new_message[i] = message[i];
i = i + 1;
}
write(1, new_message.ptr, new_message.len);
return 0;
}