summaryrefslogtreecommitdiff
path: root/src/signal/x86_64/sigsetjmp.s
blob: ac02adb2ce5eb35b8113df5f2bec54157de2c140 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
/* Copyright 2011 Nicholas J. Kain, licensed GNU LGPL 2.1 or later */
.global sigsetjmp
sigsetjmp:
	andl %esi,%esi
	movq %rsi,64(%rdi)
	jz 1f
	pushq %rdi
	leaq 72(%rdi),%rsi
	xorl %edx,%edx
	movl $2,%edi
	call sigprocmask
	popq %rdi
1:	jmp setjmp