]> Cypherpunks repositories - gostls13.git/commit
runtime: store pointer-size words in memclr
authornimelehin <nimelehin@gmail.com>
Mon, 9 May 2022 20:22:14 +0000 (23:22 +0300)
committerKeith Randall <khr@golang.org>
Tue, 10 May 2022 20:52:34 +0000 (20:52 +0000)
commite0f99775f24cd19ad96847b0a5b00952aac9d548
treef34556190f4b2d3878e94f5573def51e6e86e714
parentaeaf4b0e5b21ea0819b4e862ed86ce44760516bf
runtime: store pointer-size words in memclr

GC requires the whole zeroed word to be visible for a memory subsystem.
While the implementation of Enhanced REP STOSB tries to use as efficient
stores as possible, e.g writing the whole cache line and not byte-after-byte,
we should use REP STOSQ to guarantee the requirements of the GC.

The performance is not affected.

Change-Id: I1b0fd1444a40bfbb661541291ab96eba11bcc762
Reviewed-on: https://go-review.googlesource.com/c/go/+/405274
Reviewed-by: Cherry Mui <cherryyz@google.com>
Reviewed-by: Keith Randall <khr@google.com>
Reviewed-by: Keith Randall <khr@golang.org>
src/runtime/memclr_amd64.s