summaryrefslogtreecommitdiff
path: root/arch/x86/kernel/irqflags.S
blob: ddeeaac8addadcb0556975d31a3262e5473a0141 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
/* SPDX-License-Identifier: GPL-2.0 */

#include <asm/asm.h>
#include <asm/export.h>
#include <linux/linkage.h>

/*
 * unsigned long native_save_fl(void)
 */
ENTRY(native_save_fl)
	pushf
	pop %_ASM_AX
	ret
ENDPROC(native_save_fl)
EXPORT_SYMBOL(native_save_fl)

/*
 * void native_restore_fl(unsigned long flags)
 * %eax/%rdi: flags
 */
ENTRY(native_restore_fl)
	push %_ASM_ARG1
	popf
	ret
ENDPROC(native_restore_fl)
EXPORT_SYMBOL(native_restore_fl)