| ... | @@ -564,13 +564,12 @@ pub fn finish(f: *Flush, wasm: *Wasm) !void { | ... | @@ -564,13 +564,12 @@ pub fn finish(f: *Flush, wasm: *Wasm) !void { |
| 564 | .__heap_base => @panic("TODO"), | 564 | .__heap_base => @panic("TODO"), |
| 565 | .__heap_end => @panic("TODO"), | 565 | .__heap_end => @panic("TODO"), |
| 566 | .__stack_pointer => { | 566 | .__stack_pointer => { |
| 567 | try binary_bytes.appendSlice(gpa, &.{ | 567 | try binary_bytes.ensureUnusedCapacity(gpa, 9); |
| 568 | @intFromEnum(std.wasm.Valtype.i32), | 568 | binary_bytes.appendAssumeCapacity(@intFromEnum(std.wasm.Valtype.i32)); |
| 569 | @intFromBool(true), // mutable | 569 | binary_bytes.appendAssumeCapacity(1); // mutable |
| 570 | @intFromEnum(std.wasm.Opcode.i32_const), | 570 | binary_bytes.appendAssumeCapacity(@intFromEnum(std.wasm.Opcode.i32_const)); |
| 571 | 0, // leb128 init value | 571 | leb.writeUleb128(binary_bytes.fixedWriter(), virtual_addrs.stack_pointer) catch unreachable; |
| 572 | @intFromEnum(std.wasm.Opcode.end), | 572 | binary_bytes.appendAssumeCapacity(@intFromEnum(std.wasm.Opcode.end)); |
| 573 | }); | | |
| 574 | }, | 573 | }, |
| 575 | .__tls_align => @panic("TODO"), | 574 | .__tls_align => @panic("TODO"), |
| 576 | .__tls_base => @panic("TODO"), | 575 | .__tls_base => @panic("TODO"), |