From 4f8a6b0888c8d1df87d254b68344bb99edcfe57c Mon Sep 17 00:00:00 2001 From: Andrew Kelley Date: Wed, 18 Dec 2024 22:11:20 -0800 Subject: wasm linker: implement data fixups one hash table lookup per fixup --- src/codegen.zig | 10 ++++++---- 1 file changed, 6 insertions(+), 4 deletions(-) (limited to 'src/codegen.zig') diff --git a/src/codegen.zig b/src/codegen.zig index df88682466..3971d8f521 100644 --- a/src/codegen.zig +++ b/src/codegen.zig @@ -674,8 +674,9 @@ fn lowerUavRef( .addend = @intCast(offset), }); } else { - try wasm.uav_fixups.append(gpa, .{ - .ip_index = uav.val, + try wasm.uav_fixups.ensureUnusedCapacity(gpa, 1); + wasm.uav_fixups.appendAssumeCapacity(.{ + .uavs_exe_index = try wasm.refUavExe(pt, uav.val), .offset = @intCast(code.items.len), }); } @@ -745,8 +746,9 @@ fn lowerNavRef( .addend = @intCast(offset), }); } else { - try wasm.nav_fixups.append(gpa, .{ - .nav_index = nav_index, + try wasm.nav_fixups.ensureUnusedCapacity(gpa, 1); + wasm.nav_fixups.appendAssumeCapacity(.{ + .navs_exe_index = try wasm.refNavExe(nav_index), .offset = @intCast(code.items.len), }); } -- cgit v1.2.3