diff options
| author | David Xu <davidxu@FreeBSD.org> | 2004-06-15 21:46:36 +0000 |
|---|---|---|
| committer | David Xu <davidxu@FreeBSD.org> | 2004-06-15 21:46:36 +0000 |
| commit | 2ff285bf2eda9011bb336ff3c279be9c8adcdd41 (patch) | |
| tree | 2f8723c9735c2787504a475098c4efd60b615f50 /lib/libc | |
| parent | da8f1aa53deeb5085422fe63ece817bb5533083c (diff) | |
Notes
Diffstat (limited to 'lib/libc')
| -rw-r--r-- | lib/libc/amd64/gen/signalcontext.c | 2 |
1 files changed, 1 insertions, 1 deletions
diff --git a/lib/libc/amd64/gen/signalcontext.c b/lib/libc/amd64/gen/signalcontext.c index 4eb1919c4cc0..e24f6cb325d4 100644 --- a/lib/libc/amd64/gen/signalcontext.c +++ b/lib/libc/amd64/gen/signalcontext.c @@ -58,7 +58,7 @@ __signalcontext(ucontext_t *ucp, int sig, __sighandler_t *func) * This means that we need an 8-byte-odd alignment since the ABI expects * the return address to be pushed, thus breaking the 16 byte alignment. */ - sp = (ucp->uc_mcontext.mc_rsp - sizeof(ucontext_t)) & ~15UL; + sp = (ucp->uc_mcontext.mc_rsp - 128 - sizeof(ucontext_t)) & ~15UL; sig_uc = (ucontext_t *)sp; bcopy(ucp, sig_uc, sizeof(*sig_uc)); sp = (sp - sizeof(siginfo_t)) & ~15UL; |
