]> git.proxmox.com Git - mirror_edk2.git/blame - UefiCpuPkg/CpuDxe/Ia32/IvtAsm.S
Remove ".intel_syntax", convert MASM to GAS.
[mirror_edk2.git] / UefiCpuPkg / CpuDxe / Ia32 / IvtAsm.S
CommitLineData
a47463f2 1#------------------------------------------------------------------------------
2#
3# Copyright (c) 2006 - 2009, Intel Corporation
4# All rights reserved. This program and the accompanying materials
5# are licensed and made available under the terms and conditions of the BSD License
6# which accompanies this distribution. The full text of the license may be found at
7# http://opensource.org/licenses/bsd-license.php
8#
9# THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS,
10# WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED.
11#
12# Module Name:
13#
14# IvtAsm.S
15#
16# Abstract:
17#
18# Interrupt Vector Table
19#
20#------------------------------------------------------------------------------
21
22#
23# Interrupt Vector Table
24#
25
26.macro SingleIdtVectorMacro vectorNum
27 .intel_syntax
28 call ASM_PFX(CommonInterruptEntry)
29 .short \vectorNum
30 nop
31.endm
32
33.macro EightIdtVectors firstVectorNum
34 SingleIdtVectorMacro \firstVectorNum
35 SingleIdtVectorMacro "(\firstVectorNum+1)"
36 SingleIdtVectorMacro "(\firstVectorNum+2)"
37 SingleIdtVectorMacro "(\firstVectorNum+3)"
38 SingleIdtVectorMacro "(\firstVectorNum+4)"
39 SingleIdtVectorMacro "(\firstVectorNum+5)"
40 SingleIdtVectorMacro "(\firstVectorNum+6)"
41 SingleIdtVectorMacro "(\firstVectorNum+7)"
42.endm
43
44.macro SixtyFourIdtVectors firstVectorNum
45 EightIdtVectors \firstVectorNum
46 EightIdtVectors "(\firstVectorNum+0x08)"
47 EightIdtVectors "(\firstVectorNum+0x10)"
48 EightIdtVectors "(\firstVectorNum+0x18)"
49 EightIdtVectors "(\firstVectorNum+0x20)"
50 EightIdtVectors "(\firstVectorNum+0x28)"
51 EightIdtVectors "(\firstVectorNum+0x30)"
52 EightIdtVectors "(\firstVectorNum+0x38)"
53.endm
54
55ASM_GLOBAL ASM_PFX(AsmIdtVector00)
56.align 8
57ASM_PFX(AsmIdtVector00):
58 SixtyFourIdtVectors 0x00
59 SixtyFourIdtVectors 0x40
60 SixtyFourIdtVectors 0x80
61 SixtyFourIdtVectors 0xC0
62ASM_GLOBAL ASM_PFX(AsmCommonIdtEnd)
63ASM_PFX(AsmCommonIdtEnd):
64 .byte 0
65
66