diff options
Diffstat (limited to 'coroutine/ppc64')
| -rw-r--r-- | coroutine/ppc64/Context.S | 5 | ||||
| -rw-r--r-- | coroutine/ppc64/Context.h | 2 |
2 files changed, 3 insertions, 4 deletions
diff --git a/coroutine/ppc64/Context.S b/coroutine/ppc64/Context.S index f8561e0e7d..20a47c61c6 100644 --- a/coroutine/ppc64/Context.S +++ b/coroutine/ppc64/Context.S @@ -8,15 +8,14 @@ ; To add support for AIX, *BSD or *Linux, please make separate implementations. #define TOKEN_PASTE(x,y) x##y -#define PREFIXED_SYMBOL(prefix,name) TOKEN_PASTE(prefix,name) .machine ppc64 ; = G5 .text -.globl PREFIXED_SYMBOL(SYMBOL_PREFIX,coroutine_transfer) +.globl PREFIXED_SYMBOL(coroutine_transfer) .align 2 -PREFIXED_SYMBOL(SYMBOL_PREFIX,coroutine_transfer): +PREFIXED_SYMBOL(coroutine_transfer): ; Make space on the stack for caller registers ; (Should we rather use red zone? See libphobos example.) subi r1,r1,160 diff --git a/coroutine/ppc64/Context.h b/coroutine/ppc64/Context.h index 3e6f77f55a..085b475ed5 100644 --- a/coroutine/ppc64/Context.h +++ b/coroutine/ppc64/Context.h @@ -12,7 +12,7 @@ enum { COROUTINE_REGISTERS = - 20 /* 19 general purpose registers (r13–r31) and 1 return address */ + 20 /* 19 general purpose registers (r13-r31) and 1 return address */ + 4 /* space for fiber_entry() to store the link register */ }; |
