4 # Copyright (c) 2007 - 2008, Intel Corporation
5 # All rights reserved. This program and the accompanying materials
6 # are licensed and made available under the terms and conditions of the BSD License
7 # which accompanies this distribution. The full text of the license may be found at
8 # http://opensource.org/licenses/bsd-license.php
10 # THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS,
11 # WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED.
20 .globl ASM_PFX(AsmGetVectorTemplatInfo)
21 .globl ASM_PFX(AsmVectorFixup)
24 ;-----------------------------------------------------------------------
25 ; Template of IDT Vector Handlers.
27 ;-----------------------------------------------------------------------
31 .byte 0x6a # push #VectorNum
34 movl CommonInterruptEntry, %eax
39 ASM_PFX(AsmGetVectorTemplatInfo):
41 movl $@VectorTemplateBase, (%ecx)
42 movl $(@VectorTemplateEnd - @VectorTemplateBase), %eax
45 ASM_PFX(AsmVectorFixup):
48 movb %al, (@VectorNum - @VectorTemplateBase)(%ecx)
52 ; The follow algorithm is used for the common interrupt routine.
55 ; +---------------------+ <-- 16-byte aligned ensured by processor
57 ; +---------------------+
59 ; +---------------------+
61 ; +---------------------+
63 ; +---------------------+
65 ; +---------------------+
67 ; +---------------------+
69 ; +---------------------+