SourceLevelDebugPkg: Pack CPU context structures

Use #pragma pack to ensure that ASM and C code agree on
the structure layout between various compilers.

git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@11331 6f19259b-4bc3-4df7-8a09-765794883524
diff --git a/SourceLevelDebugPkg/Library/DebugAgent/DebugAgentCommon/Ia32/ArchRegisters.h b/SourceLevelDebugPkg/Library/DebugAgent/DebugAgentCommon/Ia32/ArchRegisters.h
index 3c27958..909ddbe 100644
--- a/SourceLevelDebugPkg/Library/DebugAgent/DebugAgentCommon/Ia32/ArchRegisters.h
+++ b/SourceLevelDebugPkg/Library/DebugAgent/DebugAgentCommon/Ia32/ArchRegisters.h
@@ -1,7 +1,7 @@
 /** @file

   IA32 register defintions needed by debug transfer protocol.

 

-  Copyright (c) 2010, Intel Corporation. All rights reserved.<BR>

+  Copyright (c) 2010 - 2011, Intel Corporation. All rights reserved.<BR>

   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

@@ -15,6 +15,8 @@
 #ifndef _ARCH_REGISTERS_H_

 #define _ARCH_REGISTERS_H_

 

+#pragma pack(1)

+

 ///

 /// FXSAVE_STATE

 /// FP / MMX / XMM registers (see fxrstor instruction definition)

@@ -153,4 +155,6 @@
   UINT32         TssBas;

 } DEBUG_DATA_REPONSE_READ_REGISTER_GROUP_SEGBASE_IA32;

 

+#pragma pack()

+

 #endif

diff --git a/SourceLevelDebugPkg/Library/DebugAgent/DebugAgentCommon/X64/ArchRegisters.h b/SourceLevelDebugPkg/Library/DebugAgent/DebugAgentCommon/X64/ArchRegisters.h
index e7a5a33..9675391 100644
--- a/SourceLevelDebugPkg/Library/DebugAgent/DebugAgentCommon/X64/ArchRegisters.h
+++ b/SourceLevelDebugPkg/Library/DebugAgent/DebugAgentCommon/X64/ArchRegisters.h
@@ -1,7 +1,7 @@
 /** @file

   X64 register defintions needed by debug transfer protocol.

 

-  Copyright (c) 2010, Intel Corporation. All rights reserved.<BR>

+  Copyright (c) 2010 - 2011, Intel Corporation. All rights reserved.<BR>

   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

@@ -15,6 +15,8 @@
 #ifndef _ARCH_REGISTERS_H_

 #define _ARCH_REGISTERS_H_

 

+#pragma pack(1)

+

 ///

 /// FXSAVE_STATE (promoted operation)

 /// FP / MMX / XMM registers (see fxrstor instruction definition)

@@ -325,5 +327,6 @@
   UINT64         Tssas;

 } DEBUG_DATA_REPONSE_READ_REGISTER_GROUP_SEGMENT_BASES_X64;

 

+#pragma pack()

 

 #endif