From ab1de36d3423027eb2cd82551416866ef18c0e99 Mon Sep 17 00:00:00 2001 From: Brendan Hansen Date: Fri, 7 Aug 2020 13:55:14 -0500 Subject: [PATCH] Converted to using a proper stack system; many improvements will be needed but it works --- Makefile | 2 +- docs/plan | 8 ++ include/onyxastnodes.h | 33 ++++--- include/onyxwasm.h | 6 +- onyx | Bin 131408 -> 366456 bytes progs/stack_based.onyx | 28 ++++++ src/onyx.c | 27 +++++- src/onyxchecker.c | 3 +- src/onyxparser.c | 4 + src/onyxsymres.c | 14 ++- src/onyxwasm.c | 204 +++++++++++++++++++++++++++++++++-------- 11 files changed, 267 insertions(+), 62 deletions(-) create mode 100644 progs/stack_based.onyx diff --git a/Makefile b/Makefile index 0e514db6..6a575b28 100644 --- a/Makefile +++ b/Makefile @@ -1,4 +1,4 @@ -RELEASE=1 +RELEASE=0 OBJ_FILES=\ build/onyxlex.o \ diff --git a/docs/plan b/docs/plan index 25846cec..b26d4beb 100644 --- a/docs/plan +++ b/docs/plan @@ -144,6 +144,14 @@ HOW: [X] #file_contents + [X] Convert to using a proper stack based system + + [ ] Be smart about when to use the stack versus use the wasm locals + + [ ] Array literals + + [ ] Properly checking binary operators + [ ] Better checking for casts [ ] All code paths return correct value diff --git a/include/onyxastnodes.h b/include/onyxastnodes.h index 3f03c4e2..63a1f95d 100644 --- a/include/onyxastnodes.h +++ b/include/onyxastnodes.h @@ -129,27 +129,32 @@ typedef enum AstKind { // only 32-bits of flags to play with typedef enum AstFlags { // Top-level flags - Ast_Flag_Exported = BH_BIT(0), - Ast_Flag_Foreign = BH_BIT(1), - Ast_Flag_Const = BH_BIT(2), - Ast_Flag_Comptime = BH_BIT(3), - Ast_Flag_Private_Package = BH_BIT(4), + Ast_Flag_Exported = BH_BIT(0), + Ast_Flag_Foreign = BH_BIT(1), + Ast_Flag_Const = BH_BIT(2), + Ast_Flag_Comptime = BH_BIT(3), + Ast_Flag_Private_Package = BH_BIT(4), + + // Global flags + Ast_Flag_Global_Stack_Top = BH_BIT(8), + Ast_Flag_Global_Stack_Base = BH_BIT(9), // Function flags - Ast_Flag_Inline = BH_BIT(8), - Ast_Flag_Intrinsic = BH_BIT(9), - Ast_Flag_Function_Used = BH_BIT(10), + Ast_Flag_Inline = BH_BIT(8), + Ast_Flag_Intrinsic = BH_BIT(9), + Ast_Flag_Function_Used = BH_BIT(10), + Ast_Flag_No_Stack = BH_BIT(11), // Expression flags - Ast_Flag_Expr_Ignored = BH_BIT(8), - Ast_Flag_Param_Splatted = BH_BIT(9), - Ast_Flag_Param_Use = BH_BIT(10), + Ast_Flag_Expr_Ignored = BH_BIT(8), + Ast_Flag_Param_Splatted = BH_BIT(9), + Ast_Flag_Param_Use = BH_BIT(10), // Type flags - Ast_Flag_Type_Is_Resolved = BH_BIT(8), + Ast_Flag_Type_Is_Resolved = BH_BIT(8), // Enum flags - Ast_Flag_Enum_Is_Flags = BH_BIT(11), + Ast_Flag_Enum_Is_Flags = BH_BIT(11), } AstFlags; typedef enum UnaryOp { @@ -475,6 +480,8 @@ extern AstBasicType basic_type_f64; extern AstBasicType basic_type_rawptr; extern AstNumLit builtin_heap_start; +extern AstGlobal builtin_stack_base; +extern AstGlobal builtin_stack_top; typedef struct BuiltinSymbol { char* sym; diff --git a/include/onyxwasm.h b/include/onyxwasm.h index a42d78ac..4ef2ea38 100644 --- a/include/onyxwasm.h +++ b/include/onyxwasm.h @@ -258,7 +258,7 @@ typedef struct WasmFunc { typedef struct WasmGlobal { WasmType type; - u8 mutable; + u32 mutable : 1; bh_arr(WasmInstruction) initial_value; } WasmGlobal; @@ -296,7 +296,7 @@ typedef struct OnyxWasmModule { // NOTE: Mapping ptrs to function / global indicies bh_imap index_map; - // NOTE: Mapping from local ast node ptrs to indicies + // NOTE: Mapping from local ast node ptrs to indicies or offsets, depending on the mode bh_imap local_map; // NOTE: Mapping ptrs to elements @@ -329,6 +329,8 @@ typedef struct OnyxWasmModule { u32 next_foreign_global_idx; u32 next_datum_offset; u32 next_elem_idx; + + u32 *stack_top_ptr, *stack_base_ptr; } OnyxWasmModule; OnyxWasmModule onyx_wasm_module_create(bh_allocator alloc); diff --git a/onyx b/onyx index 0210d24e20ff7011972b018e66bfeaf1e2d7cc26..8a908bc8b4819ce7a7d153424cc8909528907acc 100755 GIT binary patch literal 366456 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 E2Uf&=jQ{`u literal 131408 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 JBtzuV`wta~0IvW5 diff --git a/progs/stack_based.onyx b/progs/stack_based.onyx new file mode 100644 index 00000000..52e495f0 --- /dev/null +++ b/progs/stack_based.onyx @@ -0,0 +1,28 @@ +package main + +use "progs/print_funcs" + +use package printing + +ret_val :: proc (x: i32, y: i32) -> i32 { + big_arr : [128] i32; + big_arr[127] = 1234; + return big_arr[127] + x + y; +} + +main :: proc #export { + print("Hello, World!"); + print(cast(i32) __heap_start); + a := 12345; + + arr : [5] i32; + arr[0] = 10; + arr[1] = 20; + arr[2] = 30; + arr[3] = 40; + arr[4] = 50; + + print(ret_val(10, 4)); + + for i: 0, 5 do print(arr[i]); +} \ No newline at end of file diff --git a/src/onyx.c b/src/onyx.c index ba454dda..6be4e6f0 100644 --- a/src/onyx.c +++ b/src/onyx.c @@ -267,11 +267,6 @@ static void merge_parse_results(CompilerState* compiler_state, ParseResults* res } } } - - qsort(compiler_state->prog_info.entities, - bh_arr_length(compiler_state->prog_info.entities), - sizeof(Entity), - sort_entities); } static CompilerProgress process_source_file(CompilerState* compiler_state, char* filename) { @@ -318,6 +313,28 @@ static i32 onyx_compile(CompilerState* compiler_state) { bh_arr_fastdelete(compiler_state->queued_files, 0); } + // Add builtin one-time entities + bh_arr_push(compiler_state->prog_info.entities, ((Entity) { + .type = Entity_Type_Global_Header, + .global = &builtin_stack_base + })); + bh_arr_push(compiler_state->prog_info.entities, ((Entity) { + .type = Entity_Type_Global_Header, + .global = &builtin_stack_top + })); + bh_arr_push(compiler_state->prog_info.entities, ((Entity) { + .type = Entity_Type_Global, + .global = &builtin_stack_base + })); + bh_arr_push(compiler_state->prog_info.entities, ((Entity) { + .type = Entity_Type_Global, + .global = &builtin_stack_top + })); + + qsort(compiler_state->prog_info.entities, + bh_arr_length(compiler_state->prog_info.entities), + sizeof(Entity), + sort_entities); // NOTE: Check types and semantic rules if (compiler_state->options->verbose_output) diff --git a/src/onyxchecker.c b/src/onyxchecker.c index 64390bcf..0b9a9c41 100644 --- a/src/onyxchecker.c +++ b/src/onyxchecker.c @@ -576,7 +576,8 @@ CHECK(address_of, AstAddressOf* aof) { if (aof->expr->kind != Ast_Kind_Array_Access && aof->expr->kind != Ast_Kind_Dereference && aof->expr->kind != Ast_Kind_Field_Access - && aof->expr->kind != Ast_Kind_Memres) { + && aof->expr->kind != Ast_Kind_Memres + && aof->expr->kind != Ast_Kind_Local) { onyx_message_add(Msg_Type_Literal, aof->token->pos, "cannot take the address of this"); diff --git a/src/onyxparser.c b/src/onyxparser.c index e8097273..2a7b53c4 100644 --- a/src/onyxparser.c +++ b/src/onyxparser.c @@ -1115,6 +1115,10 @@ static AstFunction* parse_function_definition(OnyxParser* parser) { } } + else if (parse_possible_directive(parser, "nostack")) { + func_def->flags |= Ast_Flag_No_Stack; + } + else { OnyxToken* directive_token = expect_token(parser, '#'); OnyxToken* symbol_token = expect_token(parser, Token_Type_Symbol); diff --git a/src/onyxsymres.c b/src/onyxsymres.c index 5f0a2869..0320cab4 100644 --- a/src/onyxsymres.c +++ b/src/onyxsymres.c @@ -19,7 +19,11 @@ AstBasicType basic_type_f64 = { { Ast_Kind_Basic_Type, 0, NULL, "f64" }, & AstBasicType basic_type_rawptr = { { Ast_Kind_Basic_Type, 0, NULL, "rawptr" }, &basic_types[Basic_Kind_Rawptr] }; static OnyxToken builtin_heap_start_token = { Token_Type_Symbol, 12, "__heap_start ", { 0 } }; +static OnyxToken builtin_stack_base_token = { Token_Type_Symbol, 12, "__stack_base ", { 0 } }; +static OnyxToken builtin_stack_top_token = { Token_Type_Symbol, 11, "__stack_top ", { 0 } }; AstNumLit builtin_heap_start = { Ast_Kind_NumLit, Ast_Flag_Const, &builtin_heap_start_token, NULL, (AstType *) &basic_type_rawptr, NULL, 0 }; +AstGlobal builtin_stack_base = { Ast_Kind_Global, Ast_Flag_Const | Ast_Flag_Global_Stack_Base, &builtin_stack_base_token, NULL, (AstType *) &basic_type_rawptr, NULL }; +AstGlobal builtin_stack_top = { Ast_Kind_Global, Ast_Flag_Const | Ast_Flag_Global_Stack_Top, &builtin_stack_top_token, NULL, (AstType *) &basic_type_rawptr, NULL }; const BuiltinSymbol builtin_symbols[] = { { "void", (AstNode *) &basic_type_void }, @@ -37,6 +41,8 @@ const BuiltinSymbol builtin_symbols[] = { { "rawptr", (AstNode *) &basic_type_rawptr }, { "__heap_start", (AstNode *) &builtin_heap_start }, + { "__stack_base", (AstNode *) &builtin_stack_base }, + { "__stack_top", (AstNode *) &builtin_stack_top }, { NULL, NULL }, }; @@ -524,8 +530,10 @@ void onyx_resolve_symbols() { } bh_arr_each(Entity, entity, semstate.program->entities) { - scope_enter(entity->package->private_scope); - semstate.curr_package = entity->package; + if (entity->package) { + scope_enter(entity->package->private_scope); + semstate.curr_package = entity->package; + } switch (entity->type) { case Entity_Type_Use_Package: symres_use_package(entity->use_package); break; @@ -540,6 +548,6 @@ void onyx_resolve_symbols() { default: break; } - scope_leave(); + if (entity->package) scope_leave(); } } diff --git a/src/onyxwasm.c b/src/onyxwasm.c index 6c24c76a..ad0d7811 100644 --- a/src/onyxwasm.c +++ b/src/onyxwasm.c @@ -263,9 +263,12 @@ COMPILE_FUNC(call, AstCall* call); COMPILE_FUNC(intrinsic_call, AstIntrinsicCall* call); COMPILE_FUNC(array_access_location, AstArrayAccess* aa, u64* offset_return); COMPILE_FUNC(field_access_location, AstFieldAccess* field, u64* offset_return); +COMPILE_FUNC(local_location, AstLocal* local, u64* offset_return); COMPILE_FUNC(expression, AstTyped* expr); COMPILE_FUNC(cast, AstUnaryOp* cast); COMPILE_FUNC(return, AstReturn* ret); +COMPILE_FUNC(stack_enter, u64 stacksize); +COMPILE_FUNC(stack_leave, u32 unused); COMPILE_FUNC(function_body, AstFunction* fd) { if (fd->body == NULL) return; @@ -278,8 +281,6 @@ COMPILE_FUNC(function_body, AstFunction* fd) { compile_deferred_stmts(mod, &code, (AstNode *) fd); - WI(WI_BLOCK_END); - *pcode = code; } @@ -354,10 +355,10 @@ COMPILE_FUNC(assignment, AstBinaryOp* assign) { AstTyped* lval = assign->left; if (lval->kind == Ast_Kind_Local) { - i32 localidx = (i32) bh_imap_get(&mod->local_map, (u64) lval); - + u64 offset = 0; + compile_local_location(mod, &code, (AstLocal *) lval, &offset); compile_expression(mod, &code, assign->right); - WID(WI_LOCAL_SET, localidx); + compile_store_instruction(mod, &code, lval->type, type_get_alignment_log2(lval->type), offset); } else if (lval->kind == Ast_Kind_Global) { i32 globalidx = (i32) bh_imap_get(&mod->index_map, (u64) lval); @@ -557,10 +558,15 @@ COMPILE_FUNC(while, AstWhile* while_node) { COMPILE_FUNC(for, AstFor* for_node) { bh_arr(WasmInstruction) code = *pcode; - i32 it_idx = (i32) bh_imap_get(&mod->local_map, (u64) for_node->var); + // i32 it_idx = (i32) bh_imap_get(&mod->local_map, (u64) for_node->var); + AstLocal* var = for_node->var; + + u64 offset = 0; + compile_local_location(mod, &code, var, &offset); compile_expression(mod, &code, for_node->start); - WID(WI_LOCAL_SET, it_idx); + compile_store_instruction(mod, &code, var->type, type_get_alignment_log2(var->type), offset); + //WID(WI_LOCAL_SET, it_idx); WID(WI_BLOCK_START, 0x40); WID(WI_LOOP_START, 0x40); @@ -568,7 +574,10 @@ COMPILE_FUNC(for, AstFor* for_node) { bh_arr_push(mod->structured_jump_target, 1); bh_arr_push(mod->structured_jump_target, 2); - WID(WI_LOCAL_GET, it_idx); + offset = 0; + compile_local_location(mod, &code, var, &offset); + compile_load_instruction(mod, &code, var->type, offset); + // WID(WI_LOCAL_GET, it_idx); compile_expression(mod, &code, for_node->end); WI(WI_I32_GE_S); WID(WI_COND_JUMP, 0x01); @@ -577,13 +586,19 @@ COMPILE_FUNC(for, AstFor* for_node) { compile_statement(mod, &code, stmt); } + offset = 0; + compile_local_location(mod, &code, var, &offset); + offset = 0; + compile_local_location(mod, &code, var, &offset); + compile_load_instruction(mod, &code, var->type, offset); if (for_node->step == NULL) WID(WI_I32_CONST, 0x01); else compile_expression(mod, &code, for_node->step); - WID(WI_LOCAL_GET, it_idx); + // WID(WI_LOCAL_GET, it_idx); WI(WI_I32_ADD); - WID(WI_LOCAL_SET, it_idx); + compile_store_instruction(mod, &code, var->type, type_get_alignment_log2(var->type), offset); + //WID(WI_LOCAL_SET, it_idx); compile_deferred_stmts(mod, &code, (AstNode *) for_node); @@ -623,7 +638,7 @@ COMPILE_FUNC(deferred_stmts, AstNode* node) { // NOTE: These need to be in the same order as // the OnyxBinaryOp enum static const WasmInstructionType binop_map[][4] = { - // I32 I64 F32 F64 + // I32 I64 F32 F64 /* ADD */ { WI_I32_ADD, WI_I64_ADD, WI_F32_ADD, WI_F64_ADD }, /* SUB */ { WI_I32_SUB, WI_I64_SUB, WI_F32_SUB, WI_F64_SUB }, /* MUL */ { WI_I32_MUL, WI_I64_MUL, WI_F32_MUL, WI_F64_MUL }, @@ -856,6 +871,9 @@ COMPILE_FUNC(array_access_location, AstArrayAccess* aa, u64* offset_return) { } else if (aa->addr->kind == Ast_Kind_Field_Access && aa->addr->type->kind == Type_Kind_Array) { compile_field_access_location(mod, &code, (AstFieldAccess *) aa->addr, &offset); + } else if (aa->addr->kind == Ast_Kind_Local + && aa->addr->type->kind == Type_Kind_Array) { + compile_local_location(mod, &code, (AstLocal *) aa->addr, &offset); } else { compile_expression(mod, &code, aa->addr); } @@ -882,6 +900,11 @@ COMPILE_FUNC(field_access_location, AstFieldAccess* field, u64* offset_return) { u64 o2 = 0; compile_array_access_location(mod, &code, (AstArrayAccess *) source_expr, &o2); offset += o2; + } else if (source_expr->kind == Ast_Kind_Local + && source_expr->type->kind != Type_Kind_Pointer) { + u64 o2 = 0; + compile_local_location(mod, &code, (AstLocal *) source_expr, &o2); + offset += o2; } else { compile_expression(mod, &code, source_expr); } @@ -891,11 +914,23 @@ COMPILE_FUNC(field_access_location, AstFieldAccess* field, u64* offset_return) { *pcode = code; } +COMPILE_FUNC(local_location, AstLocal* local, u64* offset_return) { + bh_arr(WasmInstruction) code = *pcode; + + i32 stack_base_idx = (i32) bh_imap_get(&mod->index_map, (u64) &builtin_stack_base); + i32 local_offset = (i32) bh_imap_get(&mod->local_map, (u64) local); + + WID(WI_GLOBAL_GET, stack_base_idx); + + *offset_return += local_offset; + + *pcode = code; +} + COMPILE_FUNC(expression, AstTyped* expr) { bh_arr(WasmInstruction) code = *pcode; switch (expr->kind) { - case Ast_Kind_Local: case Ast_Kind_Param: { i32 localidx = (i32) bh_imap_get(&mod->local_map, (u64) expr); @@ -903,6 +938,13 @@ COMPILE_FUNC(expression, AstTyped* expr) { break; } + case Ast_Kind_Local: { + u64 offset = 0; + compile_local_location(mod, &code, (AstLocal *) expr, &offset); + compile_load_instruction(mod, &code, expr->type, offset); + break; + } + case Ast_Kind_Global: { i32 globalidx = (i32) bh_imap_get(&mod->index_map, (u64) expr); @@ -954,6 +996,14 @@ COMPILE_FUNC(expression, AstTyped* expr) { AstAddressOf* aof = (AstAddressOf *) expr; switch (aof->expr->kind) { + case Ast_Kind_Local: { + u64 offset = 0; + compile_local_location(mod, &code, (AstLocal *) aof->expr, &offset); + WID(WI_I32_CONST, offset); + WI(WI_I32_ADD); + break; + } + case Ast_Kind_Dereference: { compile_expression(mod, &code, ((AstDereference *) aof->expr)->expr); break; @@ -1206,11 +1256,57 @@ COMPILE_FUNC(return, AstReturn* ret) { } } + compile_stack_leave(mod, &code, 0); + WI(WI_RETURN); *pcode = code; } +COMPILE_FUNC(stack_enter, u64 stacksize) { + bh_arr(WasmInstruction) code = *pcode; + + u32 stack_top_idx = bh_imap_get(&mod->index_map, (u64) &builtin_stack_top); + u32 stack_base_idx = bh_imap_get(&mod->index_map, (u64) &builtin_stack_base); + + WID(WI_GLOBAL_GET, stack_top_idx); + WID(WI_GLOBAL_GET, stack_base_idx); + WID(WI_I32_STORE, ((WasmInstructionData) { 2, 0 })); + WID(WI_GLOBAL_GET, stack_top_idx); + WID(WI_I32_CONST, 4); + WI(WI_I32_ADD); + WID(WI_GLOBAL_SET, stack_top_idx); + WID(WI_GLOBAL_GET, stack_top_idx); + WID(WI_GLOBAL_SET, stack_base_idx); + WID(WI_GLOBAL_GET, stack_top_idx); + WID(WI_I32_CONST, stacksize); + WI(WI_I32_ADD); + WID(WI_GLOBAL_SET, stack_top_idx); + + *pcode = code; +} + +COMPILE_FUNC(stack_leave, u32 unused) { + bh_arr(WasmInstruction) code = *pcode; + + u32 stack_top_idx = bh_imap_get(&mod->index_map, (u64) &builtin_stack_top); + u32 stack_base_idx = bh_imap_get(&mod->index_map, (u64) &builtin_stack_base); + + WID(WI_GLOBAL_GET, stack_base_idx); + WID(WI_GLOBAL_SET, stack_top_idx); + + WID(WI_GLOBAL_GET, stack_top_idx); + WID(WI_I32_CONST, 4); + WI(WI_I32_SUB); + WID(WI_GLOBAL_SET, stack_top_idx); + + WID(WI_GLOBAL_GET, stack_top_idx); + WID(WI_I32_LOAD, ((WasmInstructionData) { 2, 0 })); + WID(WI_GLOBAL_SET, stack_base_idx); + + *pcode = code; +} + static i32 generate_type_idx(OnyxWasmModule* mod, Type* ft) { if (ft->kind != Type_Kind_Function) return -1; @@ -1337,37 +1433,51 @@ static void compile_function(OnyxWasmModule* mod, AstFunction* fd) { // If there is no body then don't process the code if (fd->body != NULL) { - // NOTE: Generate the local map + // // NOTE: Generate the local map i32 localidx = 0; for (AstLocal *param = fd->params; param != NULL; param = (AstLocal *) param->next) { bh_imap_put(&mod->local_map, (u64) param, localidx++); } - static const WasmType local_types[4] = { WASM_TYPE_INT32, WASM_TYPE_INT64, WASM_TYPE_FLOAT32, WASM_TYPE_FLOAT64 }; + // static const WasmType local_types[4] = { WASM_TYPE_INT32, WASM_TYPE_INT64, WASM_TYPE_FLOAT32, WASM_TYPE_FLOAT64 }; - // HACK: This assumes that the order of the count members - // is the same as the order of the local_types above - u8* count = &wasm_func.locals.i32_count; - fori (ti, 0, 3) { - bh_arr_each(AstLocal *, local, fd->locals) { - if (onyx_type_to_wasm_type((*local)->type) == local_types[ti]) { - bh_imap_put(&mod->local_map, (u64) *local, localidx++); + // // HACK: This assumes that the order of the count members + // // is the same as the order of the local_types above + // u8* count = &wasm_func.locals.i32_count; + // fori (ti, 0, 3) { + // bh_arr_each(AstLocal *, local, fd->locals) { + // if (onyx_type_to_wasm_type((*local)->type) == local_types[ti]) { + // bh_imap_put(&mod->local_map, (u64) *local, localidx++); - (*count)++; - } - } + // (*count)++; + // } + // } + + // count++; + // } - count++; + i32 offset = 0; + bh_arr_each(AstLocal *, local, fd->locals) { + u32 size = type_size_of((*local)->type); + u32 align = type_alignment_of((*local)->type); + if (offset % align != 0) + offset += align - (offset % align); + + bh_imap_put(&mod->local_map, (u64) *local, offset); + offset += size; } + if (offset % 16 != 0) + offset += 16 - (offset % 16); + // Generate code + compile_stack_enter(mod, &wasm_func.code, (u64) offset); compile_function_body(mod, &wasm_func.code, fd); - - } else { - // NOTE: Empty bodies still need a block end instruction - bh_arr_push(wasm_func.code, ((WasmInstruction){ WI_BLOCK_END, 0x00 })); + compile_stack_leave(mod, &wasm_func.code, 0); } + bh_arr_push(wasm_func.code, ((WasmInstruction){ WI_BLOCK_END, 0x00 })); + bh_arr_push(mod->funcs, wasm_func); // NOTE: Clear the local map on exit of generating this function @@ -1422,6 +1532,12 @@ static void compile_global(OnyxWasmModule* module, AstGlobal* global) { } bh_arr_push(module->globals, glob); + + if (global->flags & Ast_Flag_Global_Stack_Top) + module->stack_top_ptr = &bh_arr_last(module->globals).initial_value[0].data.i1; + if (global->flags & Ast_Flag_Global_Stack_Base) + module->stack_base_ptr = &bh_arr_last(module->globals).initial_value[0].data.i1; + } static void compile_string_literal(OnyxWasmModule* mod, AstStrLit* strlit) { @@ -1527,6 +1643,8 @@ static void compile_file_contents(OnyxWasmModule* mod, AstFileContents* fc) { bh_arr_push(mod->data, datum); + mod->next_datum_offset = offset + length; + token_toggle_end(fc->filename); } @@ -1558,6 +1676,9 @@ OnyxWasmModule onyx_wasm_module_create(bh_allocator alloc) { .next_elem_idx = 0, .structured_jump_target = NULL, + + .stack_top_ptr = NULL, + .stack_base_ptr = NULL, }; bh_arr_new(alloc, module.types, 4); @@ -1597,12 +1718,21 @@ void onyx_wasm_module_compile(OnyxWasmModule* module, ProgramInfo* program) { bh_arr_each(Entity, entity, program->entities) { - // HACK: To put this here - // NOTE: Round up to the nearest multiple of 16 - builtin_heap_start.value.i = - (module->next_datum_offset & 15) - ? ((module->next_datum_offset >> 4) + 1) << 4 - : module->next_datum_offset; + if (module->stack_base_ptr) { + *module->stack_base_ptr = module->next_datum_offset; + + if (*module->stack_base_ptr % 16 != 0) { + *module->stack_base_ptr += 16 - (*module->stack_base_ptr % 16); + } + + if (module->stack_top_ptr) + *module->stack_top_ptr = *module->stack_base_ptr; + + builtin_heap_start.value.i = *module->stack_base_ptr + (1 << 16); + if (builtin_heap_start.value.i % 16 != 0) { + builtin_heap_start.value.i += 16 - (builtin_heap_start.value.i % 16); + } + } switch (entity->type) { case Entity_Type_Function_Header: { @@ -1833,7 +1963,7 @@ static i32 output_memorysection(OnyxWasmModule* module, bh_buffer* buff) { u8* leb = uint_to_uleb128((u64) 1, &leb_len); bh_buffer_append(&vec_buff, leb, leb_len); - output_limits(4, -1, &vec_buff); + output_limits(256, -1, &vec_buff); leb = uint_to_uleb128((u64) (vec_buff.length), &leb_len); bh_buffer_append(buff, leb, leb_len); @@ -1857,7 +1987,7 @@ static i32 output_globalsection(OnyxWasmModule* module, bh_buffer* buff) { bh_arr_each(WasmGlobal, global, module->globals) { bh_buffer_write_byte(&vec_buff, global->type); - bh_buffer_write_byte(&vec_buff, global->mutable ? 0x01 : 0x00); + bh_buffer_write_byte(&vec_buff, 0x01); bh_arr_each(WasmInstruction, instr, global->initial_value) output_instruction(instr, &vec_buff); -- 2.25.1