]> Cypherpunks repositories - gostls13.git/commit
runtime: add wasm bulk memory operations
authorGaret Halliday <me@garet.holiday>
Sat, 22 Oct 2022 03:22:12 +0000 (22:22 -0500)
committerGopher Robot <gobot@golang.org>
Thu, 27 Oct 2022 10:37:01 +0000 (10:37 +0000)
commit50557edf10161b1aedd3654d84a94b49bae05c43
tree51451dde59cf75623e8e9261545cfa0b0801c48d
parent599a1e40c6dc4d02e2d0ae5a22659b49dc327e40
runtime: add wasm bulk memory operations

The existing implementation uses loops to implement bulk memory
operations such as memcpy and memclr. Now that bulk memory operations
have been standardized and are implemented in all major browsers and
engines (see https://webassembly.org/roadmap/), we should use them
to improve performance.

Updates #28360

Change-Id: I28df0e0350287d5e7e1d1c09a4064ea1054e7575
Reviewed-on: https://go-review.googlesource.com/c/go/+/444935
Reviewed-by: Cherry Mui <cherryyz@google.com>
Reviewed-by: Keith Randall <khr@google.com>
TryBot-Result: Gopher Robot <gobot@golang.org>
Run-TryBot: Richard Musiol <neelance@gmail.com>
Reviewed-by: David Chase <drchase@google.com>
Auto-Submit: Richard Musiol <neelance@gmail.com>
Reviewed-by: Richard Musiol <neelance@gmail.com>
15 files changed:
src/cmd/compile/internal/ir/symtab.go
src/cmd/compile/internal/ssa/_gen/Wasm.rules
src/cmd/compile/internal/ssa/_gen/WasmOps.go
src/cmd/compile/internal/ssa/rewriteWasm.go
src/cmd/compile/internal/ssagen/ssa.go
src/cmd/compile/internal/wasm/ssa.go
src/cmd/internal/obj/wasm/a.out.go
src/cmd/internal/obj/wasm/anames.go
src/cmd/internal/obj/wasm/wasmobj.go
src/cmd/link/internal/wasm/asm.go
src/runtime/asm_wasm.s
src/runtime/memclr_wasm.s
src/runtime/memmove_wasm.s
src/runtime/sys_wasm.go
src/runtime/sys_wasm.s