alder_lake_bios/Intel/AlderLake/AlderLakeChipsetPkg/I2cMaster/Dxe/X64/Intr.nasm

39 lines
737 B
NASM

ALIGN 8
;DEFAULT REL
SECTION .text
;--------------------------------------------------------------
; VOID
; LocalIrqSave(
; OUT UINT32 * eflags // rcx
; );
;
;
; PROC: the compiler will automatically insert prolog and epilog
;--------------------------------------------------------------
global ASM_PFX(LocalIrqSave)
ASM_PFX(LocalIrqSave):
; mov rcx, eflagsPtr
pushfq
pop rax
mov qword [rcx],rax
cli
ret
;--------------------------------------------------------------
; VOID
; LocalIrqRestore(
; IN UINT32 eflags // rcx
; );
;
;--------------------------------------------------------------
global ASM_PFX(LocalIrqRestore)
ASM_PFX(LocalIrqRestore):
mov rax, rcx
push rax
popfq
ret