From e1ed7ffd9ffd0e16ea1c4770f8301d71d8caacba Mon Sep 17 00:00:00 2001 From: git <593+git@user.noreply.gitee.com> Date: Wed, 6 Aug 2025 02:08:47 +0000 Subject: [PATCH 1/2] update src/backend/Assembly.zig. Signed-off-by: git <593+git@user.noreply.gitee.com> --- src/backend/Assembly.zig | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/backend/Assembly.zig b/src/backend/Assembly.zig index ec9d671..914bffb 100644 --- a/src/backend/Assembly.zig +++ b/src/backend/Assembly.zig @@ -11,7 +11,7 @@ pub fn deinit(self: *const Assembly, gpa: Allocator) void { gpa.free(self.text); } -pub fn writeToFile(self: Assembly, file: std.fs.File) !void { +pub fn writeToAllFile(self: Assembly, file: std.fs.File) !void { var vec: [2]std.posix.iovec_const = .{ .{ .base = self.data.ptr, .len = self.data.len }, .{ .base = self.text.ptr, .len = self.text.len }, -- Gitee From 1289b0b53561d98fbaaad68b5cb226d842ab54d3 Mon Sep 17 00:00:00 2001 From: git Date: Tue, 27 Jan 2026 05:47:20 +0000 Subject: [PATCH 2/2] =?UTF-8?q?=E7=94=9F=E6=88=90Assembly.zig=E6=96=87?= =?UTF-8?q?=E6=A1=A3=E6=B3=A8=E9=87=8A?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/backend/Assembly.zig | 10 ++++++++++ 1 file changed, 10 insertions(+) diff --git a/src/backend/Assembly.zig b/src/backend/Assembly.zig index 914bffb..3663fa7 100644 --- a/src/backend/Assembly.zig +++ b/src/backend/Assembly.zig @@ -6,11 +6,21 @@ text: []const u8, const Assembly = @This(); +/// 释放Assembly对象持有的内存资源 +/// 负责释放data和text字段分配的内存 +/// @param self Assembly对象的常量指针 +/// @param gpa 使用的内存分配器 pub fn deinit(self: *const Assembly, gpa: Allocator) void { gpa.free(self.data); gpa.free(self.text); } +/// 将Assembly的数据和文本段写入文件 +/// 使用writev系统调用一次性写入data和text两个段,减少系统调用次数 +/// @param self Assembly对象的拷贝(按值传递) +/// @param file 目标文件句柄 +/// @return void 成功时返回,失败时返回错误 +/// @error 返回可能的文件写入错误 pub fn writeToAllFile(self: Assembly, file: std.fs.File) !void { var vec: [2]std.posix.iovec_const = .{ .{ .base = self.data.ptr, .len = self.data.len }, -- Gitee