summaryrefslogtreecommitdiff
path: root/MdePkg
diff options
context:
space:
mode:
authorvanjeff <vanjeff@6f19259b-4bc3-4df7-8a09-765794883524>2008-12-10 09:29:06 +0000
committervanjeff <vanjeff@6f19259b-4bc3-4df7-8a09-765794883524>2008-12-10 09:29:06 +0000
commit6f4aad3b3401f605001a458b95ccb1f322b95036 (patch)
tree7b4b4cad3669b77a91a53978aabed6b71bad0aff /MdePkg
parent9916492210d5ab3d7eba52e1b6cd93a4e9227de9 (diff)
downloadedk2-6f4aad3b3401f605001a458b95ccb1f322b95036.zip
edk2-6f4aad3b3401f605001a458b95ccb1f322b95036.tar.gz
edk2-6f4aad3b3401f605001a458b95ccb1f322b95036.tar.bz2
fixed one bug when declaring IA32_IDT_GATE_DESCRIPTOR.
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@6978 6f19259b-4bc3-4df7-8a09-765794883524
Diffstat (limited to 'MdePkg')
-rw-r--r--MdePkg/Include/Library/BaseLib.h40
1 files changed, 22 insertions, 18 deletions
diff --git a/MdePkg/Include/Library/BaseLib.h b/MdePkg/Include/Library/BaseLib.h
index dadf367..d4db217 100644
--- a/MdePkg/Include/Library/BaseLib.h
+++ b/MdePkg/Include/Library/BaseLib.h
@@ -5090,18 +5090,18 @@ typedef struct {
#define IA32_IDT_GATE_TYPE_INTERRUPT_32 0x8E
#define IA32_IDT_GATE_TYPE_TRAP_32 0x8F
+
+#if defined (MDE_CPU_IA32)
///
-/// Byte packed structure for an Interrupt Gate Descriptor
+/// Byte packed structure for an IA32 Interrupt Gate Descriptor
///
-#if defined (MDE_CPU_IA32)
-
typedef union {
struct {
- UINT32 OffsetLow:16; // Offset bits 15..0
- UINT32 Selector:16; // Selector
- UINT32 Reserved_0:8; // Reserved
- UINT32 GateType:8; // Gate Type. See #defines above
- UINT32 OffsetHigh:16; // Offset bits 31..16
+ UINT32 OffsetLow:16; ///< Offset bits 15..0
+ UINT32 Selector:16; ///< Selector
+ UINT32 Reserved_0:8; ///< Reserved
+ UINT32 GateType:8; ///< Gate Type. See #defines above
+ UINT32 OffsetHigh:16; ///< Offset bits 31..16
} Bits;
UINT64 Uint64;
} IA32_IDT_GATE_DESCRIPTOR;
@@ -5109,19 +5109,23 @@ typedef union {
#endif
#if defined (MDE_CPU_X64)
-
+///
+/// Byte packed structure for an x64 Interrupt Gate Descriptor
+///
typedef union {
struct {
- UINT32 OffsetLow:16; // Offset bits 15..0
- UINT32 Selector:16; // Selector
- UINT32 Reserved_0:8; // Reserved
- UINT32 GateType:8; // Gate Type. See #defines above
- UINT32 OffsetHigh:16; // Offset bits 31..16
- UINT32 OffsetUpper:32; // Offset bits 63..32
- UINT32 Reserved_1:32; // Reserved
+ UINT32 OffsetLow:16; ///< Offset bits 15..0
+ UINT32 Selector:16; ///< Selector
+ UINT32 Reserved_0:8; ///< Reserved
+ UINT32 GateType:8; ///< Gate Type. See #defines above
+ UINT32 OffsetHigh:16; ///< Offset bits 31..16
+ UINT32 OffsetUpper:32; ///< Offset bits 63..32
+ UINT32 Reserved_1:32; ///< Reserved
} Bits;
- UINT64 Uint64;
- UINT64 Uint64_1;
+ struct {
+ UINT64 Uint64;
+ UINT64 Uint64_1;
+ } Uint128;
} IA32_IDT_GATE_DESCRIPTOR;
#endif