xref: /openbsd-src/lib/libc/arch/amd64/sys/sigpending.S (revision 39b8558c7ed42088504f32a89aaec359144031a7)
1*39b8558cSmortimer/*	$OpenBSD: sigpending.S,v 1.4 2023/01/11 01:55:17 mortimer Exp $	*/
2118f6189Smickey/*	$NetBSD: sigpending.S,v 1.1 2001/06/19 00:25:06 fvdl Exp $	*/
3118f6189Smickey
4118f6189Smickey/*-
5118f6189Smickey * Copyright (c) 1990 The Regents of the University of California.
6118f6189Smickey * All rights reserved.
7118f6189Smickey *
8118f6189Smickey * This code is derived from software contributed to Berkeley by
9118f6189Smickey * William Jolitz.
10118f6189Smickey *
11118f6189Smickey * Redistribution and use in source and binary forms, with or without
12118f6189Smickey * modification, are permitted provided that the following conditions
13118f6189Smickey * are met:
14118f6189Smickey * 1. Redistributions of source code must retain the above copyright
15118f6189Smickey *    notice, this list of conditions and the following disclaimer.
16118f6189Smickey * 2. Redistributions in binary form must reproduce the above copyright
17118f6189Smickey *    notice, this list of conditions and the following disclaimer in the
18118f6189Smickey *    documentation and/or other materials provided with the distribution.
1924fdaee6Sjsg * 3. Neither the name of the University nor the names of its contributors
20118f6189Smickey *    may be used to endorse or promote products derived from this software
21118f6189Smickey *    without specific prior written permission.
22118f6189Smickey *
23118f6189Smickey * THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND
24118f6189Smickey * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
25118f6189Smickey * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
26118f6189Smickey * ARE DISCLAIMED.  IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE
27118f6189Smickey * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
28118f6189Smickey * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
29118f6189Smickey * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
30118f6189Smickey * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
31118f6189Smickey * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
32118f6189Smickey * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
33118f6189Smickey * SUCH DAMAGE.
34118f6189Smickey *
35118f6189Smickey *	from: @(#)sigpending.s	5.1 (Berkeley) 7/1/90
36118f6189Smickey */
37118f6189Smickey
38118f6189Smickey#include <machine/asm.h>
39118f6189Smickey
40118f6189Smickey#include "SYS.h"
41118f6189Smickey
42118f6189SmickeySYSCALL(sigpending)
43*39b8558cSmortimer	RETGUARD_SETUP(_thread_sys_sigpending, r11);
44*39b8558cSmortimer	RETGUARD_PUSH(r11);
45118f6189Smickey	movl	%eax,(%rdi)		# store old mask
46118f6189Smickey	xorl	%eax,%eax
47*39b8558cSmortimer	RETGUARD_POP(r11)
48*39b8558cSmortimer	RETGUARD_CHECK(_thread_sys_sigpending, r11);
49118f6189Smickey	ret
50c9935a76SuebayasiSYSCALL_END(sigpending)
51