authorgravatar for luuk@degram.devLuuk de Gram <luuk@degram.dev> 2023-10-08 15:18:40+02:00
committergravatar for luuk@degram.devLuuk de Gram <luuk@degram.dev> 2023-10-08 15:18:40+02:00
log8e836cb59a63449bc4d3e82df4e35f947ceace39
treed798c81f001047a5e2ee7fd2c7e32a07dc1e4d34
parenta9b37ac63724a79805f00b4e6966ebb8329151a2
signaturelock-open Commit is signed but in an unrecognized format.

wasm: correctly lower signed value in `@tagName`


1 files changed, 2 insertions(+), 2 deletions(-)

src/arch/wasm/CodeGen.zig+2-2
...@@ -7215,12 +7215,12 @@ fn getTagNameFunction(func: *CodeGen, enum_ty: Type) InnerError!u32 {...@@ -7215,12 +7215,12 @@ fn getTagNameFunction(func: *CodeGen, enum_ty: Type) InnerError!u32 {
7215 switch (tag_value) {7215 switch (tag_value) {
7216 .imm32 => |value| {7216 .imm32 => |value| {
7217 try writer.writeByte(std.wasm.opcode(.i32_const));7217 try writer.writeByte(std.wasm.opcode(.i32_const));
7218 try leb.writeULEB128(writer, value);7218 try leb.writeILEB128(writer, @as(i32, @bitCast(value)));
7219 try writer.writeByte(std.wasm.opcode(.i32_ne));7219 try writer.writeByte(std.wasm.opcode(.i32_ne));
7220 },7220 },
7221 .imm64 => |value| {7221 .imm64 => |value| {
7222 try writer.writeByte(std.wasm.opcode(.i64_const));7222 try writer.writeByte(std.wasm.opcode(.i64_const));
7223 try leb.writeULEB128(writer, value);7223 try leb.writeILEB128(writer, @as(i64, @bitCast(value)));
7224 try writer.writeByte(std.wasm.opcode(.i64_ne));7224 try writer.writeByte(std.wasm.opcode(.i64_ne));
7225 },7225 },
7226 else => unreachable,7226 else => unreachable,