NetBSD/lib/libc/arch/powerpc/gen/__sigsetjmp14.S
1998-10-03 12:30:37 +00:00

49 lines
736 B
ArmAsm

/* $NetBSD: __sigsetjmp14.S,v 1.1 1998/10/03 12:30:38 tsubai Exp $ */
#include <sys/syscall.h>
#include <machine/asm.h>
#if defined(LIBC_SCCS)
.text
.asciz "$NetBSD: __sigsetjmp14.S,v 1.1 1998/10/03 12:30:38 tsubai Exp $"
#endif
ENTRY(__sigsetjmp14)
mr 6,3
or. 7,4,4
beq 1f
li 3,1 # SIG_BLOCK
li 4,0
addi 5,6,100 # &sigmask
li 0,SYS___sigprocmask14
sc # assume no error XXX
1:
mflr 11
mfcr 12
mr 10,1
mr 9,2
stmw 7,0(6) # save r7-r31
li 3,0
blr
ENTRY(__siglongjmp14)
lmw 7,0(3) # load r7-r31
mr 6,4
mtlr 11
mtcr 12
mr 2,9
mr 1,10
or. 7,7,7
beq 1f
addi 4,3,100 # &sigmask
li 3,3 # SIG_SETMASK
li 5,0
li 0,SYS___sigprocmask14
sc # assume no error XXX
1:
or. 3,6,6
bnelr
li 3,1
blr