runtime: copy memory hash code from Go 1.7

Programming / Compilers / GCC - ian [138bc75d-0d04-0410-961f-82ee72b054a4] - 8 December 2016 11:37 EST

Rewrite the AES hashing code from gc assembler to C code using intrinsics. The resulting code generates the same hash code for the same input as the gc code--that doesn't matter as such, but testing it ensures that the C code does something useful.

Also change mips64pe32le to mips64p32le in configure script--noticed during CL review.

Reviewed-on: https://go-review.googlesource.com/34022

4cee892 runtime: copy memory hash code from Go 1.7
gcc/go/gofrontend/MERGE | 2 +-
gcc/go/gofrontend/types.cc | 2 +-
libgo/Makefile.am | 1 +
libgo/Makefile.in | 11 +-
libgo/configure | 2 +-
libgo/configure.ac | 2 +-
libgo/go/runtime/alg.go | 45 +++
libgo/go/runtime/hash32.go | 94 +++++++
libgo/go/runtime/hash64.go | 94 +++++++
libgo/go/runtime/os_gccgo.go | 23 ++
libgo/go/runtime/runtime2.go | 12 +-
libgo/go/runtime/stubs.go | 6 +
libgo/go/runtime/unaligned1.go | 17 ++
libgo/go/runtime/unaligned2.go | 20 ++
libgo/runtime/aeshash.c | 583 +++++++++++++++++++++++++++++++++++++++
libgo/runtime/go-libmain.c | 1 +
libgo/runtime/go-main.c | 1 +
libgo/runtime/go-type-identity.c | 40 +--
libgo/runtime/go-type.h | 1 -
libgo/runtime/proc.c | 3 +-
libgo/runtime/runtime.h | 6 +
libgo/runtime/runtime_c.c | 19 ++
22 files changed, 937 insertions(+), 48 deletions(-)

Upstream: gcc.gnu.org


  • Share