diff --git a/src/Air.zig b/src/Air.zig index de02ea8cf2..0bd496ca2c 100644 --- a/src/Air.zig +++ b/src/Air.zig @@ -746,7 +746,9 @@ pub const Inst = struct { /// Dest slice may have any alignment; source pointer may have any alignment. /// The two memory regions must not overlap. /// Result type is always void. + /// /// Uses the `bin_op` field. LHS is the dest slice. RHS is the source pointer. + /// /// If the length is compile-time known (due to the destination or /// source being a pointer-to-array), then it is guaranteed to be /// greater than zero. @@ -758,7 +760,9 @@ pub const Inst = struct { /// Dest slice may have any alignment; source pointer may have any alignment. /// The two memory regions may overlap. /// Result type is always void. + /// /// Uses the `bin_op` field. LHS is the dest slice. RHS is the source pointer. + /// /// If the length is compile-time known (due to the destination or /// source being a pointer-to-array), then it is guaranteed to be /// greater than zero. diff --git a/src/arch/wasm/CodeGen.zig b/src/arch/wasm/CodeGen.zig index 44f6ac78a4..acb79ad4fa 100644 --- a/src/arch/wasm/CodeGen.zig +++ b/src/arch/wasm/CodeGen.zig @@ -1959,7 +1959,7 @@ fn genInst(cg: *CodeGen, inst: Air.Inst.Index) InnerError!void { .wasm_memory_size => cg.airWasmMemorySize(inst), .wasm_memory_grow => cg.airWasmMemoryGrow(inst), - .memcpy => cg.airMemcpy(inst), + .memcpy, .memmove => cg.airMemcpy(inst), .ret_addr => cg.airRetAddr(inst), .tag_name => cg.airTagName(inst), @@ -1983,7 +1983,6 @@ fn genInst(cg: *CodeGen, inst: Air.Inst.Index) InnerError!void { .c_va_copy, .c_va_end, .c_va_start, - .memmove, => |tag| return cg.fail("TODO: Implement wasm inst: {s}", .{@tagName(tag)}), .atomic_load => cg.airAtomicLoad(inst),