authorgravatar for 19855629+SuperAuguste@users.noreply.github.comAuguste Rame <19855629+SuperAuguste@users.noreply.github.com> 2023-04-07 01:27:32-04:00
committergravatar for git@vexu.euVeikka Tuominen <git@vexu.eu> 2023-04-07 14:59:22+03:00
logdac62424f9dc1b775b7b47f954bea9f0326d81a1
treec11d9e09680213f070c6d09b122508a1cd7ac174
parent13aa7871b274fd22c7fdf277174a43d09788bd27

Make self-hosted wasm @returnAddress return 0


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

src/arch/wasm/CodeGen.zig+6-1
......@@ -1929,10 +1929,11 @@ fn genInst(func: *CodeGen, inst: Air.Inst.Index) InnerError!void {
19291929
19301930 .memcpy => func.airMemcpy(inst),
19311931
1932 .ret_addr => func.airRetAddr(inst),
1933
19321934 .mul_sat,
19331935 .mod,
19341936 .assembly,
1935 .ret_addr,
19361937 .frame_addr,
19371938 .bit_reverse,
19381939 .is_err_ptr,
......@@ -4967,6 +4968,10 @@ fn airMemcpy(func: *CodeGen, inst: Air.Inst.Index) InnerError!void {
49674968 func.finishAir(inst, .none, &.{ pl_op.operand, bin_op.lhs, bin_op.rhs });
49684969}
49694970
4971fn airRetAddr(func: *CodeGen, inst: Air.Inst.Index) InnerError!void {
4972 func.finishAir(inst, .{ .imm32 = 0 }, &.{});
4973}
4974
49704975fn airPopcount(func: *CodeGen, inst: Air.Inst.Index) InnerError!void {
49714976 const ty_op = func.air.instructions.items(.data)[inst].ty_op;
49724977 if (func.liveness.isUnused(inst)) return func.finishAir(inst, .none, &.{ty_op.operand});