8sa1-gcc/libgo/go
Lynn Boger 2fbed0dc6c libgo: ensure memmove, memset 8 byte atomicity on ppc64x
Go requires that pointer moves are done 8 bytes at a time,
but gccgo uses libc's memmove and memset which does not require
that, and there are some cases where an 8 byte move might be
done as 4+4.

To enforce 8 byte moves for memmove and memset, this adds a
C implementation in libgo/runtime for memmove and memset to be
used on ppc64le and ppc64. Asm implementations were considered
but discarded to avoid different implementations for different
target ISAs.

Fixes golang/go#41428

Reviewed-on: https://go-review.googlesource.com/c/gofrontend/+/294931
2021-02-25 17:01:23 -08:00
..
archive libgo: update to Go1.16 release 2021-02-19 12:33:25 -08:00
bufio
builtin
bytes
cmd libgo: update to Go1.16 release 2021-02-19 12:33:25 -08:00
compress
container
context
crypto
database/sql
debug
embed libgo: update to Go1.16 release 2021-02-19 12:33:25 -08:00
encoding
errors
expvar
flag
fmt
go
golang.org/x
hash
html
image
index/suffixarray
internal libgo: update to Go1.16 release 2021-02-19 12:33:25 -08:00
io libgo: update to Go1.16 release 2021-02-19 12:33:25 -08:00
log
math libgo: update to Go1.16 release 2021-02-19 12:33:25 -08:00
mime
net libgo: update to Go1.16 release 2021-02-19 12:33:25 -08:00
os libgo: update to Go1.16 release 2021-02-19 12:33:25 -08:00
path
plugin
reflect
regexp
runtime libgo: ensure memmove, memset 8 byte atomicity on ppc64x 2021-02-25 17:01:23 -08:00
sort
strconv
strings
sync
syscall
testdata
testing libgo: update to Go1.16 release 2021-02-19 12:33:25 -08:00
text
time
unicode
vendor
go.mod