reactos/hal/halx86/apic/apictrap.S
Timo Kreuzer 8d459f2820 [NTOS:KE/x64] Clean up EnterTrap/ExitTrap
- Always save and restore all non-volatile registers, including xmm
- Remove the obsolete flags
2024-04-14 16:09:20 +02:00

49 lines
1.1 KiB
ArmAsm

/*
* FILE: hal/halx86/apic/apictrap.S
* COPYRIGHT: See COPYING in the top level directory
* PURPOSE: System Traps, Entrypoints and Exitpoints
* PROGRAMMER: Timo Kreuzer (timo.kreuzer@reactos.org)
* NOTE: See asmmacro.S for the shared entry/exit code.
*/
/* INCLUDES ******************************************************************/
#include <asm.inc>
#ifdef _M_AMD64
#include <ksamd64.inc>
#include <trapamd64.inc>
.code
TRAP_ENTRY HalpClockInterrupt, TF_SEND_EOI
TRAP_ENTRY HalpClockIpi, TF_SEND_EOI
TRAP_ENTRY HalpProfileInterrupt, TF_SEND_EOI
PUBLIC ApicSpuriousService
ApicSpuriousService:
iretq
#else
#include <ks386.inc>
#include <internal/i386/asmmacro.S>
.code
TRAP_ENTRY HalpClockInterrupt, KI_PUSH_FAKE_ERROR_CODE
TRAP_ENTRY HalpClockIpi, KI_PUSH_FAKE_ERROR_CODE
TRAP_ENTRY HalpProfileInterrupt, KI_PUSH_FAKE_ERROR_CODE
TRAP_ENTRY HalpTrap0D, 0
TRAP_ENTRY HalpApcInterrupt, KI_PUSH_FAKE_ERROR_CODE
TRAP_ENTRY HalpDispatchInterrupt, KI_PUSH_FAKE_ERROR_CODE
PUBLIC _ApicSpuriousService
_ApicSpuriousService:
iret
#endif
END