gcc/libgo/runtime
Ian Lance Taylor e73d9fcafb runtime: portable access to sigev_notify_thread_id
Previously, libgo relied on the _sigev_un implementation-specific
field in struct sigevent, which is only available on glibc.
This patch uses the sigev_notify_thread_id macro instead which is
mandated by timer_create(2). In theory, this should work with any libc
implementation for Linux. Unfortunately, there is an open glibc bug
as glibc does not define this macro. For this reason, a glibc-specific
workaround is required. Other libcs (such as musl) define the macro
and don't require the workaround.

See https://sourceware.org/bugzilla/show_bug.cgi?id=27417

This makes libgo compatible with musl libc.

Based on patch by Sören Tempel.

Reviewed-on: https://go-review.googlesource.com/c/gofrontend/+/434755
2022-09-27 09:30:23 -07:00
..
aeshash.c
arch.h
array.h
defs.h
env_posix.c
go-assert.c
go-assert.h
go-caller.c libgo: update to Go1.16beta1 release 2020-12-30 15:13:24 -08:00
go-callers.c runtime: ignore __morestack function in runtime.Callers 2022-09-06 18:39:50 -07:00
go-cgo.c
go-construct-map.c
go-context.S
go-ffi.c
go-fieldtrack.c runtime: update type descriptor name in fieldtrack C support code 2020-12-04 14:51:09 -08:00
go-libmain.c
go-main.c
go-matherr.c
go-memclr.c libgo: ensure memmove, memset 8 byte atomicity on ppc64x 2021-02-25 17:01:23 -08:00
go-memequal.c
go-memmove.c libgo: ensure memmove, memset 8 byte atomicity on ppc64x 2021-02-25 17:01:23 -08:00
go-nanotime.c
go-nosys.c
go-now.c libgo: update to Go1.17rc2 2021-08-12 20:23:07 -07:00
go-reflect-call.c
go-setenv.c
go-signal.c runtime: portable access to sigev_notify_thread_id 2022-09-27 09:30:23 -07:00
go-string.h
go-unsafe-pointer.c
go-unsetenv.c
go-unwind.c
go-varargs.c
panic.c
print.c
proc.c runtime: remove direct assignments to memory locations 2021-07-09 19:48:53 -07:00
rtems-task-variable-add.c
runtime.h libgo: ensure memmove, memset 8 byte atomicity on ppc64x 2021-02-25 17:01:23 -08:00
runtime_c.c libgo: update to Go1.17rc2 2021-08-12 20:23:07 -07:00
stack.c runtime: use C cast syntax in stack.c 2021-08-13 10:38:36 -07:00
yield.c