The fast syscall path clobbers 2 registers. Which is fine for a plain

system call, as long as the stub knows about it. However, it's bad
for sigreturn. Hence, use the old entry point for sigreturn. XXX
This commit is contained in:
fvdl 2002-12-13 17:43:02 +00:00
parent 6c9c8b753c
commit 50683c0ce9

View File

@ -1,4 +1,4 @@
/* $NetBSD: __sigtramp1.S,v 1.2 2002/07/14 12:29:59 fvdl Exp $ */
/* $NetBSD: __sigtramp1.S,v 1.3 2002/12/13 17:43:02 fvdl Exp $ */
/*
* Copyright (c) 2001 Wasabi Systems, Inc.
@ -49,6 +49,6 @@ NENTRY(__sigtramp_sigcontext_1)
movq %rsp,%rdi
pushq %rdi /* fake return address */
movq $SYS___sigreturn14,%rax
syscall
int $0x80 /* to avoid clobbering registers */
movq $SYS_exit,%rax
syscall