From e24f635c758242b9c8d8aacac668d31dead7623e Mon Sep 17 00:00:00 2001 From: Andrew Kelley Date: Fri, 6 Dec 2024 23:50:30 -0800 Subject: wasm: implement errors_len as a MIR opcode with no linker involvement --- src/arch/wasm/CodeGen.zig | 6 ++---- 1 file changed, 2 insertions(+), 4 deletions(-) (limited to 'src/arch/wasm/CodeGen.zig') diff --git a/src/arch/wasm/CodeGen.zig b/src/arch/wasm/CodeGen.zig index 5990e683c9..2f23f5267c 100644 --- a/src/arch/wasm/CodeGen.zig +++ b/src/arch/wasm/CodeGen.zig @@ -3634,14 +3634,12 @@ fn airCmpVector(func: *CodeGen, inst: Air.Inst.Index) InnerError!void { fn airCmpLtErrorsLen(func: *CodeGen, inst: Air.Inst.Index) InnerError!void { const un_op = func.air.instructions.items(.data)[@intFromEnum(inst)].un_op; const operand = try func.resolveInst(un_op); - const sym_index = try func.wasm.getGlobalSymbol("__zig_errors_len", null); - const errors_len: WValue = .{ .memory = @intFromEnum(sym_index) }; try func.emitWValue(operand); const pt = func.pt; const err_int_ty = try pt.errorIntType(); - const errors_len_val = try func.load(errors_len, err_int_ty, 0); - const result = try func.cmp(.stack, errors_len_val, err_int_ty, .lt); + try func.addTag(.errors_len); + const result = try func.cmp(.stack, .stack, err_int_ty, .lt); return func.finishAir(inst, result, &.{un_op}); } -- cgit v1.2.3