r240044 - in /trunk: gcc/go/gofrontend/MERGE li...
ian@gcc.gnu.org
ian@gcc.gnu.org
Fri Sep 9 13:31:00 GMT 2016
Author: ian
Date: Fri Sep 9 13:31:49 2016
New Revision: 240044
URL: https://gcc.gnu.org/viewcvs?rev=240044&root=gcc&view=rev
Log:
runtime: align ucontext_t argument to 16 byte boundary
Some systems, such as ia64 and PPC, require that a ucontext_t pointer
passed to getcontext and friends be aligned to a 16-byte boundary.
Currently the ucontext_t fields in the g structure are defined in Go,
and Go has no way to ensure a 16-byte alignment for a struct field.
The fields are currently represented by an array of unsafe.Pointer.
Enforce the alignment by making the array larger, and picking an offset
into the array that is 16-byte aligned.
Reviewed-on: https://go-review.googlesource.com/28910
Modified:
trunk/gcc/go/gofrontend/MERGE
trunk/libgo/go/runtime/runtime2.go
trunk/libgo/runtime/proc.c
More information about the Gcc-cvs
mailing list