Files
m241Neelima/vxworks-6.9/target/h/arch/i86/ivI86.h
T
2026-07-30 11:19:44 +05:30

89 lines
2.5 KiB
C

/* ivI86.h - I80x86 interrupt vectors */
/* Copyright 1984-2001 Wind River Systems, Inc. */
/*
modification history
--------------------
01e,29aug01,hdn added support for streaming SIMD exception.
01d,29may94,hdn removed I80486 conditional.
01c,08jun93,hdn added support for c++. updated to 5.1.
01b,26mar93,hdn added a new vector for 486.
01a,28feb92,hdn written based on TRON, 68k version.
*/
#ifndef __INCivI86h
#define __INCivI86h
#ifdef __cplusplus
extern "C" {
#endif
/* 0 - 19 exception vector number */
#define IN_DIVIDE_ERROR 0
#define IN_DEBUG 1
#define IN_NON_MASKABLE 2
#define IN_BREAKPOINT 3
#define IN_OVERFLOW 4
#define IN_BOUND 5
#define IN_INVALID_OPCODE 6
#define IN_NO_DEVICE 7
#define IN_DOUBLE_FAULT 8
#define IN_CP_OVERRUN 9
#define IN_INVALID_TSS 10
#define IN_NO_SEGMENT 11
#define IN_STACK_FAULT 12
#define IN_PROTECTION_FAULT 13
#define IN_PAGE_FAULT 14
#define IN_RESERVED 15
#define IN_CP_ERROR 16
#define IN_ALIGNMENT 17
#define IN_MACHINE_CHECK 18
#define IN_SIMD 19
/* 20 - 31 unassigned, Intel reserved exceptions */
/* 32 - 255 user defined interrupt vectors */
#ifndef _ASMLANGUAGE
/* macros to convert interrupt vectors <-> interrupt numbers */
#define IVEC_TO_INUM(intVec) ((int) (intVec) >> 3)
#define INUM_TO_IVEC(intNum) ((VOIDFUNCPTR *) ((intNum) << 3))
/* exception vector address/offset */
#define IV_DIVIDE_ERROR INUM_TO_IVEC (IN_DIVIDE_ERROR)
#define IV_DEBUG INUM_TO_IVEC (IN_DEBUG)
#define IV_NON_MASKABLE INUM_TO_IVEC (IN_NON_MASKABLE)
#define IV_BREAKPOINT INUM_TO_IVEC (IN_BREAKPOINT)
#define IV_OVERFLOW INUM_TO_IVEC (IN_OVERFLOW)
#define IV_BOUND INUM_TO_IVEC (IN_BOUND)
#define IV_INVALID_OPCODE INUM_TO_IVEC (IN_INVALID_OPCODE)
#define IV_NO_DEVICE INUM_TO_IVEC (IN_NO_DEVICE)
#define IV_DOUBLE_FAULT INUM_TO_IVEC (IN_DOUBLE_FAULT)
#define IV_CP_OVERRUN INUM_TO_IVEC (IN_CP_OVERRUN)
#define IV_INVALID_TSS INUM_TO_IVEC (IN_INVALID_TSS)
#define IV_NO_SEGMENT INUM_TO_IVEC (IN_NO_SEGMENT)
#define IV_STACK_FAULT INUM_TO_IVEC (IN_STACK_FAULT)
#define IV_PROTECTION_FAULT INUM_TO_IVEC (IN_PROTECTION_FAULT)
#define IV_PAGE_FAULT INUM_TO_IVEC (IN_PAGE_FAULT)
#define IV_RESERVED INUM_TO_IVEC (IN_RESERVED)
#define IV_CP_ERROR INUM_TO_IVEC (IN_CP_ERROR)
#define IV_ALIGNMENT INUM_TO_IVEC (IN_ALIGNMENT)
#define IV_MACHINE_CHECK INUM_TO_IVEC (IN_MACHINE_CHECK)
#define IV_SIMD INUM_TO_IVEC (IN_SIMD)
#endif /* _ASMLANGUAGE */
#ifdef __cplusplus
}
#endif
#endif /* __INCivI86h */