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
..
2021-02-19 12:33:25 -08:00
2021-01-29 11:04:55 -08:00
2020-08-10 16:45:16 -07:00
2020-08-01 11:21:40 -07:00
2020-12-30 15:13:24 -08:00
2020-08-01 11:21:40 -07:00
2020-08-01 11:21:40 -07:00
2021-01-29 11:04:55 -08:00
2020-12-30 15:13:24 -08:00
2020-08-01 11:21:40 -07:00
2021-01-29 11:04:55 -08:00
2020-08-01 11:21:40 -07:00
2020-08-01 11:21:40 -07:00
2020-08-10 16:45:16 -07:00
2020-12-30 15:13:24 -08:00
2021-01-29 11:04:55 -08:00
2020-12-30 15:13:24 -08:00
2020-02-15 09:14:10 -08:00
2020-08-01 11:21:40 -07:00
2021-01-29 11:04:55 -08:00
2021-02-19 12:33:25 -08:00
2020-08-01 11:21:40 -07:00
2020-01-21 23:53:22 -08:00
2020-08-01 11:21:40 -07:00
2020-08-01 11:21:40 -07:00
2020-08-01 11:21:40 -07:00
2020-12-30 15:13:24 -08:00
2020-12-30 15:13:24 -08:00
2020-12-30 15:13:24 -08:00
2021-01-29 11:04:55 -08:00
2021-01-29 11:04:55 -08:00
2020-12-30 15:13:24 -08:00
2020-01-21 23:53:22 -08:00
2020-12-30 15:13:24 -08:00
2021-01-29 11:04:55 -08:00
2021-01-29 11:04:55 -08:00
2020-12-30 15:13:24 -08:00
2021-01-29 11:04:55 -08:00
2020-08-01 11:21:40 -07:00
2020-12-30 15:13:24 -08:00
2020-12-30 15:13:24 -08:00
2020-01-21 23:53:22 -08:00
2021-01-14 09:57:04 -08:00
2020-08-01 11:21:40 -07:00
2020-08-01 11:21:40 -07:00
2020-01-21 23:53:22 -08:00
2020-08-01 11:21:40 -07:00
2020-08-01 11:21:40 -07:00
2020-08-01 11:21:40 -07:00
2020-08-01 11:21:40 -07:00
2020-01-21 23:53:22 -08:00
2021-01-29 11:04:55 -08:00
2021-01-29 11:04:55 -08:00
2021-01-14 09:57:04 -08:00
2020-01-21 23:53:22 -08:00
2021-01-29 11:04:55 -08:00
2020-01-21 23:53:22 -08:00
2020-08-01 11:21:40 -07:00
2020-01-21 23:53:22 -08:00
2021-01-29 11:04:55 -08:00
2020-08-01 11:21:40 -07:00
2020-12-30 15:13:24 -08:00
2020-12-30 15:13:24 -08:00
2021-01-29 11:04:55 -08:00
2020-12-30 15:13:24 -08:00
2021-01-29 11:04:55 -08:00
2020-01-21 23:53:22 -08:00
2020-08-01 11:21:40 -07:00
2020-12-30 15:13:24 -08:00
2020-08-01 11:21:40 -07:00
2020-01-21 23:53:22 -08:00
2021-01-29 11:04:55 -08:00
2021-01-29 11:04:55 -08:00
2020-08-01 11:21:40 -07:00
2020-12-30 15:13:24 -08:00
2020-12-30 15:13:24 -08:00
2021-01-29 11:04:55 -08:00
2020-01-21 23:53:22 -08:00
2020-01-21 23:53:22 -08:00
2020-01-21 23:53:22 -08:00
2021-01-29 11:04:55 -08:00
2021-01-29 11:04:55 -08:00
2020-12-30 15:13:24 -08:00
2020-08-01 11:21:40 -07:00
2020-02-15 09:14:10 -08:00