summaryrefslogtreecommitdiffstats
path: root/lib/libc
diff options
context:
space:
mode:
authorpeter <peter@FreeBSD.org>2003-06-02 21:59:13 +0000
committerpeter <peter@FreeBSD.org>2003-06-02 21:59:13 +0000
commit58b9cc83ad08e252efdd2bb1ef346696aaec625a (patch)
tree45850e0e87cf82ae182eda9ad91eb5d73a53ab67 /lib/libc
parent54294f1739a4b46f029cab4511f55cd9eba1b196 (diff)
downloadFreeBSD-src-58b9cc83ad08e252efdd2bb1ef346696aaec625a.zip
FreeBSD-src-58b9cc83ad08e252efdd2bb1ef346696aaec625a.tar.gz
Fix sigsetjmp(). It helps if we do not try to save the old signal mask
to a random memory location. Perl works a lot better with this.
Diffstat (limited to 'lib/libc')
-rw-r--r--lib/libc/amd64/gen/sigsetjmp.S1
1 files changed, 1 insertions, 0 deletions
diff --git a/lib/libc/amd64/gen/sigsetjmp.S b/lib/libc/amd64/gen/sigsetjmp.S
index 6795307..94e1578 100644
--- a/lib/libc/amd64/gen/sigsetjmp.S
+++ b/lib/libc/amd64/gen/sigsetjmp.S
@@ -62,6 +62,7 @@ ENTRY(sigsetjmp)
testl %esi,%esi
jz 2f
pushq %rdi
+ movq %rdi,%rcx
movq $1,%rdi /* SIG_BLOCK */
movq $0,%rsi /* (sigset_t*)set */
leaq 72(%rcx),%rdx /* (sigset_t*)oset */
OpenPOWER on IntegriCloud