From bf3bd19f79936fa519a5285701763da58935592a Mon Sep 17 00:00:00 2001 From: hachem Date: Wed, 9 Sep 2026 05:43:06 +0200 Subject: refactor: split code gen into arch seam --- src/ast.c | 8 ++++++++ 1 file changed, 8 insertions(+) (limited to 'src/ast.c') diff --git a/src/ast.c b/src/ast.c index da51b05..b775857 100644 --- a/src/ast.c +++ b/src/ast.c @@ -58,6 +58,11 @@ void free_statement(struct Statement* statement) free_expr(statement->call.args[i]); free(statement->call.args); break; + case STATEMENT_INSTRUCTION: + for (size_t i = 0; i < statement->instruction.operand_count; i += 1) + free_expr(statement->instruction.operands[i]); + free(statement->instruction.operands); + break; case STATEMENT_STACK: free_expr(statement->stack.size); break; @@ -81,6 +86,9 @@ struct Program create_program(void) program.config.bits = 64; program.config.has_entry = false; program.config.logical_registers = false; + program.config.format = OUTPUT_ELF; + program.config.has_org = false; + program.config.boot = false; program.consts = NULL; program.const_count = 0; program.const_capacity = 0; -- cgit v1.3