]> git.proxmox.com Git - mirror_edk2.git/blobdiff - UefiCpuPkg/CpuDxe/Ia32/IvtAsm.S
1. DxeIplPeim will locate Vector Handoff Table PPI and build GUIDed HOB if it has.
[mirror_edk2.git] / UefiCpuPkg / CpuDxe / Ia32 / IvtAsm.S
old mode 100755 (executable)
new mode 100644 (file)
index 2a6341a..c38461d
-#------------------------------------------------------------------------------
-#
-# Copyright (c) 2006 - 2009, Intel Corporation
-# All rights reserved. This program and the accompanying materials
-# are licensed and made available under the terms and conditions of the BSD License
-# which accompanies this distribution.  The full text of the license may be found at
-# http://opensource.org/licenses/bsd-license.php
-#
-# THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS,
-# WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED.
-#
-# Module Name:
-#
-#   IvtAsm.S
-#
-# Abstract:
-#
-#   Interrupt Vector Table
-#
-#------------------------------------------------------------------------------
-
-#
-# Interrupt Vector Table
-#
-
-.macro SingleIdtVectorMacro vectorNum
-    .intel_syntax
-    call    ASM_PFX(CommonInterruptEntry)
-    .short  \vectorNum
-    nop
-.endm
-
-.macro EightIdtVectors firstVectorNum
-    SingleIdtVectorMacro \firstVectorNum
-    SingleIdtVectorMacro "(\firstVectorNum+1)"
-    SingleIdtVectorMacro "(\firstVectorNum+2)"
-    SingleIdtVectorMacro "(\firstVectorNum+3)"
-    SingleIdtVectorMacro "(\firstVectorNum+4)"
-    SingleIdtVectorMacro "(\firstVectorNum+5)"
-    SingleIdtVectorMacro "(\firstVectorNum+6)"
-    SingleIdtVectorMacro "(\firstVectorNum+7)"
-.endm
-
-.macro SixtyFourIdtVectors firstVectorNum
-    EightIdtVectors \firstVectorNum
-    EightIdtVectors "(\firstVectorNum+0x08)"
-    EightIdtVectors "(\firstVectorNum+0x10)"
-    EightIdtVectors "(\firstVectorNum+0x18)"
-    EightIdtVectors "(\firstVectorNum+0x20)"
-    EightIdtVectors "(\firstVectorNum+0x28)"
-    EightIdtVectors "(\firstVectorNum+0x30)"
-    EightIdtVectors "(\firstVectorNum+0x38)"
-.endm
-
-ASM_GLOBAL ASM_PFX(AsmIdtVector00)
-.align  8
-ASM_PFX(AsmIdtVector00):
-    SixtyFourIdtVectors 0x00
-    SixtyFourIdtVectors 0x40
-    SixtyFourIdtVectors 0x80
-    SixtyFourIdtVectors 0xC0
-ASM_GLOBAL ASM_PFX(AsmCommonIdtEnd)
-ASM_PFX(AsmCommonIdtEnd):
-    .byte 0
-
-
+#------------------------------------------------------------------------------\r
+#\r
+# Copyright (c) 2006 - 2009, Intel Corporation. All rights reserved.<BR>\r
+# This program and the accompanying materials\r
+# are licensed and made available under the terms and conditions of the BSD License\r
+# which accompanies this distribution.  The full text of the license may be found at\r
+# http://opensource.org/licenses/bsd-license.php\r
+#\r
+# THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS,\r
+# WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED.\r
+#\r
+# Module Name:\r
+#\r
+#   IvtAsm.S\r
+#\r
+# Abstract:\r
+#\r
+#   Interrupt Vector Table\r
+#\r
+#------------------------------------------------------------------------------\r
+\r
+#\r
+# Interrupt Vector Table\r
+#\r
+\r
+\r
+ASM_GLOBAL ASM_PFX(AsmIdtVector00)\r
+.p2align 3\r
+ASM_PFX(AsmIdtVector00):\r
+    call    ASM_PFX(CommonInterruptEntry)\r
+    .short  0x00\r
+    nop\r
+    call    ASM_PFX(CommonInterruptEntry)\r
+    .short  0x01\r
+    nop\r
+    call    ASM_PFX(CommonInterruptEntry)\r
+    .short  0x02\r
+    nop\r
+    call    ASM_PFX(CommonInterruptEntry)\r
+    .short  0x03\r
+    nop\r
+    call    ASM_PFX(CommonInterruptEntry)\r
+    .short  0x04\r
+    nop\r
+    call    ASM_PFX(CommonInterruptEntry)\r
+    .short  0x05\r
+    nop\r
+    call    ASM_PFX(CommonInterruptEntry)\r
+    .short  0x06\r
+    nop\r
+    call    ASM_PFX(CommonInterruptEntry)\r
+    .short  0x07\r
+    nop\r
+    call    ASM_PFX(CommonInterruptEntry)\r
+    .short  0x08\r
+    nop\r
+    call    ASM_PFX(CommonInterruptEntry)\r
+    .short  0x09\r
+    nop\r
+    call    ASM_PFX(CommonInterruptEntry)\r
+    .short  0x0a\r
+    nop\r
+    call    ASM_PFX(CommonInterruptEntry)\r
+    .short  0x0b\r
+    nop\r
+    call    ASM_PFX(CommonInterruptEntry)\r
+    .short  0x0c\r
+    nop\r
+    call    ASM_PFX(CommonInterruptEntry)\r
+    .short  0x0d\r
+    nop\r
+    call    ASM_PFX(CommonInterruptEntry)\r
+    .short  0x0e\r
+    nop\r
+    call    ASM_PFX(CommonInterruptEntry)\r
+    .short  0x0f\r
+    nop\r
+    \r
+    call    ASM_PFX(CommonInterruptEntry)\r
+    .short  0x10\r
+    nop\r
+    call    ASM_PFX(CommonInterruptEntry)\r
+    .short  0x11\r
+    nop\r
+    call    ASM_PFX(CommonInterruptEntry)\r
+    .short  0x12\r
+    nop\r
+    call    ASM_PFX(CommonInterruptEntry)\r
+    .short  0x13\r
+    nop\r
+    call    ASM_PFX(CommonInterruptEntry)\r
+    .short  0x14\r
+    nop\r
+    call    ASM_PFX(CommonInterruptEntry)\r
+    .short  0x15\r
+    nop\r
+    call    ASM_PFX(CommonInterruptEntry)\r
+    .short  0x16\r
+    nop\r
+    call    ASM_PFX(CommonInterruptEntry)\r
+    .short  0x17\r
+    nop\r
+    call    ASM_PFX(CommonInterruptEntry)\r
+    .short  0x18\r
+    nop\r
+    call    ASM_PFX(CommonInterruptEntry)\r
+    .short  0x19\r
+    nop\r
+    call    ASM_PFX(CommonInterruptEntry)\r
+    .short  0x1a\r
+    nop\r
+    call    ASM_PFX(CommonInterruptEntry)\r
+    .short  0x1b\r
+    nop\r
+    call    ASM_PFX(CommonInterruptEntry)\r
+    .short  0x1c\r
+    nop\r
+    call    ASM_PFX(CommonInterruptEntry)\r
+    .short  0x1d\r
+    nop\r
+    call    ASM_PFX(CommonInterruptEntry)\r
+    .short  0x1e\r
+    nop\r
+    call    ASM_PFX(CommonInterruptEntry)\r
+    .short  0x1f\r
+    nop\r
+    \r
+    call    ASM_PFX(CommonInterruptEntry)\r
+    .short  0x00\r
+    nop\r
+    call    ASM_PFX(CommonInterruptEntry)\r
+    .short  0x21\r
+    nop\r
+    call    ASM_PFX(CommonInterruptEntry)\r
+    .short  0x22\r
+    nop\r
+    call    ASM_PFX(CommonInterruptEntry)\r
+    .short  0x23\r
+    nop\r
+    call    ASM_PFX(CommonInterruptEntry)\r
+    .short  0x24\r
+    nop\r
+    call    ASM_PFX(CommonInterruptEntry)\r
+    .short  0x25\r
+    nop\r
+    call    ASM_PFX(CommonInterruptEntry)\r
+    .short  0x26\r
+    nop\r
+    call    ASM_PFX(CommonInterruptEntry)\r
+    .short  0x27\r
+    nop\r
+    call    ASM_PFX(CommonInterruptEntry)\r
+    .short  0x28\r
+    nop\r
+    call    ASM_PFX(CommonInterruptEntry)\r
+    .short  0x29\r
+    nop\r
+    call    ASM_PFX(CommonInterruptEntry)\r
+    .short  0x2a\r
+    nop\r
+    call    ASM_PFX(CommonInterruptEntry)\r
+    .short  0x2b\r
+    nop\r
+    call    ASM_PFX(CommonInterruptEntry)\r
+    .short  0x2c\r
+    nop\r
+    call    ASM_PFX(CommonInterruptEntry)\r
+    .short  0x2d\r
+    nop\r
+    call    ASM_PFX(CommonInterruptEntry)\r
+    .short  0x2e\r
+    nop\r
+    call    ASM_PFX(CommonInterruptEntry)\r
+    .short  0x2f\r
+    nop\r
+    \r
+    call    ASM_PFX(CommonInterruptEntry)\r
+    .short  0x30\r
+    nop\r
+    call    ASM_PFX(CommonInterruptEntry)\r
+    .short  0x31\r
+    nop\r
+    call    ASM_PFX(CommonInterruptEntry)\r
+    .short  0x32\r
+    nop\r
+    call    ASM_PFX(CommonInterruptEntry)\r
+    .short  0x33\r
+    nop\r
+    call    ASM_PFX(CommonInterruptEntry)\r
+    .short  0x34\r
+    nop\r
+    call    ASM_PFX(CommonInterruptEntry)\r
+    .short  0x35\r
+    nop\r
+    call    ASM_PFX(CommonInterruptEntry)\r
+    .short  0x36\r
+    nop\r
+    call    ASM_PFX(CommonInterruptEntry)\r
+    .short  0x37\r
+    nop\r
+    call    ASM_PFX(CommonInterruptEntry)\r
+    .short  0x38\r
+    nop\r
+    call    ASM_PFX(CommonInterruptEntry)\r
+    .short  0x39\r
+    nop\r
+    call    ASM_PFX(CommonInterruptEntry)\r
+    .short  0x3a\r
+    nop\r
+    call    ASM_PFX(CommonInterruptEntry)\r
+    .short  0x3b\r
+    nop\r
+    call    ASM_PFX(CommonInterruptEntry)\r
+    .short  0x3c\r
+    nop\r
+    call    ASM_PFX(CommonInterruptEntry)\r
+    .short  0x3d\r
+    nop\r
+    call    ASM_PFX(CommonInterruptEntry)\r
+    .short  0x3e\r
+    nop\r
+    call    ASM_PFX(CommonInterruptEntry)\r
+    .short  0x3f\r
+    nop\r
+    \r
+    call    ASM_PFX(CommonInterruptEntry)\r
+    .short  0x40\r
+    nop\r
+    call    ASM_PFX(CommonInterruptEntry)\r
+    .short  0x41\r
+    nop\r
+    call    ASM_PFX(CommonInterruptEntry)\r
+    .short  0x42\r
+    nop\r
+    call    ASM_PFX(CommonInterruptEntry)\r
+    .short  0x43\r
+    nop\r
+    call    ASM_PFX(CommonInterruptEntry)\r
+    .short  0x44\r
+    nop\r
+    call    ASM_PFX(CommonInterruptEntry)\r
+    .short  0x45\r
+    nop\r
+    call    ASM_PFX(CommonInterruptEntry)\r
+    .short  0x46\r
+    nop\r
+    call    ASM_PFX(CommonInterruptEntry)\r
+    .short  0x47\r
+    nop\r
+    call    ASM_PFX(CommonInterruptEntry)\r
+    .short  0x48\r
+    nop\r
+    call    ASM_PFX(CommonInterruptEntry)\r
+    .short  0x49\r
+    nop\r
+    call    ASM_PFX(CommonInterruptEntry)\r
+    .short  0x4a\r
+    nop\r
+    call    ASM_PFX(CommonInterruptEntry)\r
+    .short  0x4b\r
+    nop\r
+    call    ASM_PFX(CommonInterruptEntry)\r
+    .short  0x4c\r
+    nop\r
+    call    ASM_PFX(CommonInterruptEntry)\r
+    .short  0x4d\r
+    nop\r
+    call    ASM_PFX(CommonInterruptEntry)\r
+    .short  0x4e\r
+    nop\r
+    call    ASM_PFX(CommonInterruptEntry)\r
+    .short  0x4f\r
+    nop\r
+    \r
+    call    ASM_PFX(CommonInterruptEntry)\r
+    .short  0x50\r
+    nop\r
+    call    ASM_PFX(CommonInterruptEntry)\r
+    .short  0x51\r
+    nop\r
+    call    ASM_PFX(CommonInterruptEntry)\r
+    .short  0x52\r
+    nop\r
+    call    ASM_PFX(CommonInterruptEntry)\r
+    .short  0x53\r
+    nop\r
+    call    ASM_PFX(CommonInterruptEntry)\r
+    .short  0x54\r
+    nop\r
+    call    ASM_PFX(CommonInterruptEntry)\r
+    .short  0x55\r
+    nop\r
+    call    ASM_PFX(CommonInterruptEntry)\r
+    .short  0x56\r
+    nop\r
+    call    ASM_PFX(CommonInterruptEntry)\r
+    .short  0x57\r
+    nop\r
+    call    ASM_PFX(CommonInterruptEntry)\r
+    .short  0x58\r
+    nop\r
+    call    ASM_PFX(CommonInterruptEntry)\r
+    .short  0x59\r
+    nop\r
+    call    ASM_PFX(CommonInterruptEntry)\r
+    .short  0x5a\r
+    nop\r
+    call    ASM_PFX(CommonInterruptEntry)\r
+    .short  0x5b\r
+    nop\r
+    call    ASM_PFX(CommonInterruptEntry)\r
+    .short  0x5c\r
+    nop\r
+    call    ASM_PFX(CommonInterruptEntry)\r
+    .short  0x5d\r
+    nop\r
+    call    ASM_PFX(CommonInterruptEntry)\r
+    .short  0x5e\r
+    nop\r
+    call    ASM_PFX(CommonInterruptEntry)\r
+    .short  0x5f\r
+    nop\r
+    \r
+    call    ASM_PFX(CommonInterruptEntry)\r
+    .short  0x60\r
+    nop\r
+    call    ASM_PFX(CommonInterruptEntry)\r
+    .short  0x61\r
+    nop\r
+    call    ASM_PFX(CommonInterruptEntry)\r
+    .short  0x62\r
+    nop\r
+    call    ASM_PFX(CommonInterruptEntry)\r
+    .short  0x63\r
+    nop\r
+    call    ASM_PFX(CommonInterruptEntry)\r
+    .short  0x64\r
+    nop\r
+    call    ASM_PFX(CommonInterruptEntry)\r
+    .short  0x65\r
+    nop\r
+    call    ASM_PFX(CommonInterruptEntry)\r
+    .short  0x66\r
+    nop\r
+    call    ASM_PFX(CommonInterruptEntry)\r
+    .short  0x67\r
+    nop\r
+    call    ASM_PFX(CommonInterruptEntry)\r
+    .short  0x68\r
+    nop\r
+    call    ASM_PFX(CommonInterruptEntry)\r
+    .short  0x69\r
+    nop\r
+    call    ASM_PFX(CommonInterruptEntry)\r
+    .short  0x6a\r
+    nop\r
+    call    ASM_PFX(CommonInterruptEntry)\r
+    .short  0x6b\r
+    nop\r
+    call    ASM_PFX(CommonInterruptEntry)\r
+    .short  0x6c\r
+    nop\r
+    call    ASM_PFX(CommonInterruptEntry)\r
+    .short  0x6d\r
+    nop\r
+    call    ASM_PFX(CommonInterruptEntry)\r
+    .short  0x6e\r
+    nop\r
+    call    ASM_PFX(CommonInterruptEntry)\r
+    .short  0x6f\r
+    nop\r
+    \r
+    call    ASM_PFX(CommonInterruptEntry)\r
+    .short  0x70\r
+    nop\r
+    call    ASM_PFX(CommonInterruptEntry)\r
+    .short  0x71\r
+    nop\r
+    call    ASM_PFX(CommonInterruptEntry)\r
+    .short  0x72\r
+    nop\r
+    call    ASM_PFX(CommonInterruptEntry)\r
+    .short  0x73\r
+    nop\r
+    call    ASM_PFX(CommonInterruptEntry)\r
+    .short  0x74\r
+    nop\r
+    call    ASM_PFX(CommonInterruptEntry)\r
+    .short  0x75\r
+    nop\r
+    call    ASM_PFX(CommonInterruptEntry)\r
+    .short  0x76\r
+    nop\r
+    call    ASM_PFX(CommonInterruptEntry)\r
+    .short  0x77\r
+    nop\r
+    call    ASM_PFX(CommonInterruptEntry)\r
+    .short  0x78\r
+    nop\r
+    call    ASM_PFX(CommonInterruptEntry)\r
+    .short  0x79\r
+    nop\r
+    call    ASM_PFX(CommonInterruptEntry)\r
+    .short  0x7a\r
+    nop\r
+    call    ASM_PFX(CommonInterruptEntry)\r
+    .short  0x7b\r
+    nop\r
+    call    ASM_PFX(CommonInterruptEntry)\r
+    .short  0x7c\r
+    nop\r
+    call    ASM_PFX(CommonInterruptEntry)\r
+    .short  0x7d\r
+    nop\r
+    call    ASM_PFX(CommonInterruptEntry)\r
+    .short  0x7e\r
+    nop\r
+    call    ASM_PFX(CommonInterruptEntry)\r
+    .short  0x7f\r
+    nop\r
+    \r
+    call    ASM_PFX(CommonInterruptEntry)\r
+    .short  0x80\r
+    nop\r
+    call    ASM_PFX(CommonInterruptEntry)\r
+    .short  0x81\r
+    nop\r
+    call    ASM_PFX(CommonInterruptEntry)\r
+    .short  0x82\r
+    nop\r
+    call    ASM_PFX(CommonInterruptEntry)\r
+    .short  0x83\r
+    nop\r
+    call    ASM_PFX(CommonInterruptEntry)\r
+    .short  0x84\r
+    nop\r
+    call    ASM_PFX(CommonInterruptEntry)\r
+    .short  0x85\r
+    nop\r
+    call    ASM_PFX(CommonInterruptEntry)\r
+    .short  0x86\r
+    nop\r
+    call    ASM_PFX(CommonInterruptEntry)\r
+    .short  0x87\r
+    nop\r
+    call    ASM_PFX(CommonInterruptEntry)\r
+    .short  0x88\r
+    nop\r
+    call    ASM_PFX(CommonInterruptEntry)\r
+    .short  0x89\r
+    nop\r
+    call    ASM_PFX(CommonInterruptEntry)\r
+    .short  0x8a\r
+    nop\r
+    call    ASM_PFX(CommonInterruptEntry)\r
+    .short  0x8b\r
+    nop\r
+    call    ASM_PFX(CommonInterruptEntry)\r
+    .short  0x8c\r
+    nop\r
+    call    ASM_PFX(CommonInterruptEntry)\r
+    .short  0x8d\r
+    nop\r
+    call    ASM_PFX(CommonInterruptEntry)\r
+    .short  0x8e\r
+    nop\r
+    call    ASM_PFX(CommonInterruptEntry)\r
+    .short  0x8f\r
+    nop\r
+    \r
+    call    ASM_PFX(CommonInterruptEntry)\r
+    .short  0x90\r
+    nop\r
+    call    ASM_PFX(CommonInterruptEntry)\r
+    .short  0x91\r
+    nop\r
+    call    ASM_PFX(CommonInterruptEntry)\r
+    .short  0x92\r
+    nop\r
+    call    ASM_PFX(CommonInterruptEntry)\r
+    .short  0x93\r
+    nop\r
+    call    ASM_PFX(CommonInterruptEntry)\r
+    .short  0x94\r
+    nop\r
+    call    ASM_PFX(CommonInterruptEntry)\r
+    .short  0x95\r
+    nop\r
+    call    ASM_PFX(CommonInterruptEntry)\r
+    .short  0x96\r
+    nop\r
+    call    ASM_PFX(CommonInterruptEntry)\r
+    .short  0x97\r
+    nop\r
+    call    ASM_PFX(CommonInterruptEntry)\r
+    .short  0x98\r
+    nop\r
+    call    ASM_PFX(CommonInterruptEntry)\r
+    .short  0x99\r
+    nop\r
+    call    ASM_PFX(CommonInterruptEntry)\r
+    .short  0x9a\r
+    nop\r
+    call    ASM_PFX(CommonInterruptEntry)\r
+    .short  0x9b\r
+    nop\r
+    call    ASM_PFX(CommonInterruptEntry)\r
+    .short  0x9c\r
+    nop\r
+    call    ASM_PFX(CommonInterruptEntry)\r
+    .short  0x9d\r
+    nop\r
+    call    ASM_PFX(CommonInterruptEntry)\r
+    .short  0x9e\r
+    nop\r
+    call    ASM_PFX(CommonInterruptEntry)\r
+    .short  0x9f\r
+    nop\r
+    \r
+    call    ASM_PFX(CommonInterruptEntry)\r
+    .short  0xa0\r
+    nop\r
+    call    ASM_PFX(CommonInterruptEntry)\r
+    .short  0xa1\r
+    nop\r
+    call    ASM_PFX(CommonInterruptEntry)\r
+    .short  0xa2\r
+    nop\r
+    call    ASM_PFX(CommonInterruptEntry)\r
+    .short  0xa3\r
+    nop\r
+    call    ASM_PFX(CommonInterruptEntry)\r
+    .short  0xa4\r
+    nop\r
+    call    ASM_PFX(CommonInterruptEntry)\r
+    .short  0xa5\r
+    nop\r
+    call    ASM_PFX(CommonInterruptEntry)\r
+    .short  0xa6\r
+    nop\r
+    call    ASM_PFX(CommonInterruptEntry)\r
+    .short  0xa7\r
+    nop\r
+    call    ASM_PFX(CommonInterruptEntry)\r
+    .short  0xa8\r
+    nop\r
+    call    ASM_PFX(CommonInterruptEntry)\r
+    .short  0xa9\r
+    nop\r
+    call    ASM_PFX(CommonInterruptEntry)\r
+    .short  0xaa\r
+    nop\r
+    call    ASM_PFX(CommonInterruptEntry)\r
+    .short  0xab\r
+    nop\r
+    call    ASM_PFX(CommonInterruptEntry)\r
+    .short  0xac\r
+    nop\r
+    call    ASM_PFX(CommonInterruptEntry)\r
+    .short  0xad\r
+    nop\r
+    call    ASM_PFX(CommonInterruptEntry)\r
+    .short  0xae\r
+    nop\r
+    call    ASM_PFX(CommonInterruptEntry)\r
+    .short  0xaf\r
+    nop\r
+    \r
+    call    ASM_PFX(CommonInterruptEntry)\r
+    .short  0xb0\r
+    nop\r
+    call    ASM_PFX(CommonInterruptEntry)\r
+    .short  0xb1\r
+    nop\r
+    call    ASM_PFX(CommonInterruptEntry)\r
+    .short  0xb2\r
+    nop\r
+    call    ASM_PFX(CommonInterruptEntry)\r
+    .short  0xb3\r
+    nop\r
+    call    ASM_PFX(CommonInterruptEntry)\r
+    .short  0xb4\r
+    nop\r
+    call    ASM_PFX(CommonInterruptEntry)\r
+    .short  0xb5\r
+    nop\r
+    call    ASM_PFX(CommonInterruptEntry)\r
+    .short  0xb6\r
+    nop\r
+    call    ASM_PFX(CommonInterruptEntry)\r
+    .short  0xb7\r
+    nop\r
+    call    ASM_PFX(CommonInterruptEntry)\r
+    .short  0xb8\r
+    nop\r
+    call    ASM_PFX(CommonInterruptEntry)\r
+    .short  0xb9\r
+    nop\r
+    call    ASM_PFX(CommonInterruptEntry)\r
+    .short  0xba\r
+    nop\r
+    call    ASM_PFX(CommonInterruptEntry)\r
+    .short  0xbb\r
+    nop\r
+    call    ASM_PFX(CommonInterruptEntry)\r
+    .short  0xbc\r
+    nop\r
+    call    ASM_PFX(CommonInterruptEntry)\r
+    .short  0xbd\r
+    nop\r
+    call    ASM_PFX(CommonInterruptEntry)\r
+    .short  0xbe\r
+    nop\r
+    call    ASM_PFX(CommonInterruptEntry)\r
+    .short  0xbf\r
+    nop\r
+    \r
+    call    ASM_PFX(CommonInterruptEntry)\r
+    .short  0xc0\r
+    nop\r
+    call    ASM_PFX(CommonInterruptEntry)\r
+    .short  0xc1\r
+    nop\r
+    call    ASM_PFX(CommonInterruptEntry)\r
+    .short  0xc2\r
+    nop\r
+    call    ASM_PFX(CommonInterruptEntry)\r
+    .short  0xc3\r
+    nop\r
+    call    ASM_PFX(CommonInterruptEntry)\r
+    .short  0xc4\r
+    nop\r
+    call    ASM_PFX(CommonInterruptEntry)\r
+    .short  0xc5\r
+    nop\r
+    call    ASM_PFX(CommonInterruptEntry)\r
+    .short  0xc6\r
+    nop\r
+    call    ASM_PFX(CommonInterruptEntry)\r
+    .short  0xc7\r
+    nop\r
+    call    ASM_PFX(CommonInterruptEntry)\r
+    .short  0xc8\r
+    nop\r
+    call    ASM_PFX(CommonInterruptEntry)\r
+    .short  0xc9\r
+    nop\r
+    call    ASM_PFX(CommonInterruptEntry)\r
+    .short  0xca\r
+    nop\r
+    call    ASM_PFX(CommonInterruptEntry)\r
+    .short  0xcb\r
+    nop\r
+    call    ASM_PFX(CommonInterruptEntry)\r
+    .short  0xcc\r
+    nop\r
+    call    ASM_PFX(CommonInterruptEntry)\r
+    .short  0xcd\r
+    nop\r
+    call    ASM_PFX(CommonInterruptEntry)\r
+    .short  0xce\r
+    nop\r
+    call    ASM_PFX(CommonInterruptEntry)\r
+    .short  0xcf\r
+    nop\r
+    \r
+    call    ASM_PFX(CommonInterruptEntry)\r
+    .short  0xd0\r
+    nop\r
+    call    ASM_PFX(CommonInterruptEntry)\r
+    .short  0xd1\r
+    nop\r
+    call    ASM_PFX(CommonInterruptEntry)\r
+    .short  0xd2\r
+    nop\r
+    call    ASM_PFX(CommonInterruptEntry)\r
+    .short  0xd3\r
+    nop\r
+    call    ASM_PFX(CommonInterruptEntry)\r
+    .short  0xd4\r
+    nop\r
+    call    ASM_PFX(CommonInterruptEntry)\r
+    .short  0xd5\r
+    nop\r
+    call    ASM_PFX(CommonInterruptEntry)\r
+    .short  0xd6\r
+    nop\r
+    call    ASM_PFX(CommonInterruptEntry)\r
+    .short  0xd7\r
+    nop\r
+    call    ASM_PFX(CommonInterruptEntry)\r
+    .short  0xd8\r
+    nop\r
+    call    ASM_PFX(CommonInterruptEntry)\r
+    .short  0xd9\r
+    nop\r
+    call    ASM_PFX(CommonInterruptEntry)\r
+    .short  0xda\r
+    nop\r
+    call    ASM_PFX(CommonInterruptEntry)\r
+    .short  0xdb\r
+    nop\r
+    call    ASM_PFX(CommonInterruptEntry)\r
+    .short  0xdc\r
+    nop\r
+    call    ASM_PFX(CommonInterruptEntry)\r
+    .short  0xdd\r
+    nop\r
+    call    ASM_PFX(CommonInterruptEntry)\r
+    .short  0xde\r
+    nop\r
+    call    ASM_PFX(CommonInterruptEntry)\r
+    .short  0xdf\r
+    nop\r
+    \r
+    call    ASM_PFX(CommonInterruptEntry)\r
+    .short  0xe0\r
+    nop\r
+    call    ASM_PFX(CommonInterruptEntry)\r
+    .short  0xe1\r
+    nop\r
+    call    ASM_PFX(CommonInterruptEntry)\r
+    .short  0xe2\r
+    nop\r
+    call    ASM_PFX(CommonInterruptEntry)\r
+    .short  0xe3\r
+    nop\r
+    call    ASM_PFX(CommonInterruptEntry)\r
+    .short  0xe4\r
+    nop\r
+    call    ASM_PFX(CommonInterruptEntry)\r
+    .short  0xe5\r
+    nop\r
+    call    ASM_PFX(CommonInterruptEntry)\r
+    .short  0xe6\r
+    nop\r
+    call    ASM_PFX(CommonInterruptEntry)\r
+    .short  0xe7\r
+    nop\r
+    call    ASM_PFX(CommonInterruptEntry)\r
+    .short  0xe8\r
+    nop\r
+    call    ASM_PFX(CommonInterruptEntry)\r
+    .short  0xe9\r
+    nop\r
+    call    ASM_PFX(CommonInterruptEntry)\r
+    .short  0xea\r
+    nop\r
+    call    ASM_PFX(CommonInterruptEntry)\r
+    .short  0xeb\r
+    nop\r
+    call    ASM_PFX(CommonInterruptEntry)\r
+    .short  0xec\r
+    nop\r
+    call    ASM_PFX(CommonInterruptEntry)\r
+    .short  0xed\r
+    nop\r
+    call    ASM_PFX(CommonInterruptEntry)\r
+    .short  0xee\r
+    nop\r
+    call    ASM_PFX(CommonInterruptEntry)\r
+    .short  0xef\r
+    nop\r
+    \r
+    call    ASM_PFX(CommonInterruptEntry)\r
+    .short  0xf0\r
+    nop\r
+    call    ASM_PFX(CommonInterruptEntry)\r
+    .short  0xf1\r
+    nop\r
+    call    ASM_PFX(CommonInterruptEntry)\r
+    .short  0xf2\r
+    nop\r
+    call    ASM_PFX(CommonInterruptEntry)\r
+    .short  0xf3\r
+    nop\r
+    call    ASM_PFX(CommonInterruptEntry)\r
+    .short  0xf4\r
+    nop\r
+    call    ASM_PFX(CommonInterruptEntry)\r
+    .short  0xf5\r
+    nop\r
+    call    ASM_PFX(CommonInterruptEntry)\r
+    .short  0xf6\r
+    nop\r
+    call    ASM_PFX(CommonInterruptEntry)\r
+    .short  0xf7\r
+    nop\r
+    call    ASM_PFX(CommonInterruptEntry)\r
+    .short  0xf8\r
+    nop\r
+    call    ASM_PFX(CommonInterruptEntry)\r
+    .short  0xf9\r
+    nop\r
+    call    ASM_PFX(CommonInterruptEntry)\r
+    .short  0xfa\r
+    nop\r
+    call    ASM_PFX(CommonInterruptEntry)\r
+    .short  0xfb\r
+    nop\r
+    call    ASM_PFX(CommonInterruptEntry)\r
+    .short  0xfc\r
+    nop\r
+    call    ASM_PFX(CommonInterruptEntry)\r
+    .short  0xfd\r
+    nop\r
+    call    ASM_PFX(CommonInterruptEntry)\r
+    .short  0xfe\r
+    nop\r
+    call    ASM_PFX(CommonInterruptEntry)\r
+    .short  0xff\r
+    nop\r
+    \r
+ASM_GLOBAL ASM_PFX(AsmCommonIdtEnd)\r
+ASM_PFX(AsmCommonIdtEnd):\r
+    .byte 0\r
+\r
+    \r