Ariadne Conill
fb1d203677
everywhere: drop _GNU_SOURCE requirement
2021-03-09 00:25:13 -07:00
Ariadne Conill
09f78ddc28
alias __makecontext too
2021-01-08 10:37:27 +00:00
osy
f7eed30132
build: guard _GNU_SOURCE define if build system defines it
2021-01-08 03:16:05 -07:00
osy
d31c95a11a
build: remove -DLIBUCONTEXT_ASSEMBLY
...
Meson does not support separate defines for .S compile.
2021-01-08 03:11:25 -07:00
osy
73d5e101ad
build: respect EXPORT_UNPREFIXED for libucontext_makecontext
2021-01-08 03:02:43 -07:00
Ariadne Conill
c10cde83da
ppc: fix build with libucontext_ namespacing changes
2020-12-06 14:04:22 +00:00
Ariadne Conill
c31decc3d4
build: use internal definitions to replace things pulled in from ucontext.h
2020-12-06 03:44:45 -06:00
Ariadne Conill
2f31efaa95
everywhere: rename __start_context to better descriptive libucontext_trampoline
2020-12-06 02:59:59 -06:00
Ariadne Conill
c693dc663c
rename __makecontext to libucontext_makecontext
2020-12-06 02:56:59 -06:00
Ariadne Conill
b1ea2ae83b
everywhere: use ucontext.h instead of signal.h for pulling in ucontext definitions
...
This allows building libucontext against newlib.
2020-12-04 11:19:02 -07:00
Ariadne Conill
d31eaabbaf
update copyright statements, add mailmap
2020-03-27 09:23:49 +00:00
Bobby Bingham
90ff6330e6
ppc32/64: update copyright
2019-04-05 14:18:20 -05:00
Bobby Bingham
29eac4259a
ppc32/64: remove unused includes
2019-04-05 14:18:20 -05:00
Bobby Bingham
40d07758a5
ppc32/64: correct signature of function parameter to makecontext
...
Because makecontext can pass a set of integer arguments to the provided
function, it is incorrect to require that this function accept no
parameters.
2019-04-05 14:18:20 -05:00
Bobby Bingham
55168fcb18
ppc32/64: simplify storage of stack parameters
...
The switch statement is simpler as an if/else, and removing the argp
variable makes the code more symmetric between the register and stack
parameter cases.
2019-04-05 14:18:20 -05:00
Bobby Bingham
b500b054c7
ppc32/64: don't store uc_link on the stack
...
This was previously stored either in the CR (ppc64) or LR (ppc32) save
area of the stack, or to one of the parameter save slots.
In either case, the saved value was unused. This value is also passed
to __start_context via r31, so there's no need to pass it on the stack.
2019-04-05 14:15:49 -05:00
Bobby Bingham
b9bd4045fb
ppc32/64: fix back chain pointer
...
The ABI states that sp[0] should point to the previous stack frame, or be
zero if there is no previous stack frame. makecontext previously set this
slot to point to the __start_context function, rather than to a valid
stack frame.
2019-04-05 14:15:49 -05:00
Bobby Bingham
b6a9b5e279
ppc32: fix stack alignment
...
The stack should be 16-byte aligned, not 8 mod 16.
2019-04-05 14:15:44 -05:00
William Pitcock
f3fe8ea781
arch: ppc: new port
2018-02-02 18:46:21 +00:00