Add #define CPU_STACK_ALIGNMENT to the ProcessorBind.h for each of the supported CPU architectures. This value is sizeof(UINTN) for IA-32, X64, and EBC. It is 16 bytes for IPF.
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@1920 6f19259b-4bc3-4df7-8a09-765794883524
This commit is contained in:
parent
3d4bdea9cc
commit
caae4de6b6
@ -61,6 +61,12 @@ typedef unsigned long UINTN;
|
|||||||
// Maximum legal EBC address
|
// Maximum legal EBC address
|
||||||
//
|
//
|
||||||
#define MAX_ADDRESS ((UINTN) ~0)
|
#define MAX_ADDRESS ((UINTN) ~0)
|
||||||
|
|
||||||
|
//
|
||||||
|
// The stack alignment required for EBC
|
||||||
|
//
|
||||||
|
#define CPU_STACK_ALIGNMENT sizeof(UINTN)
|
||||||
|
|
||||||
//
|
//
|
||||||
// Modifier to ensure that all protocol member functions and EFI intrinsics
|
// Modifier to ensure that all protocol member functions and EFI intrinsics
|
||||||
// use the correct C calling convention. All protocol member functions and
|
// use the correct C calling convention. All protocol member functions and
|
||||||
|
@ -146,6 +146,11 @@ typedef INT32 INTN;
|
|||||||
//
|
//
|
||||||
#define MAX_ADDRESS 0xFFFFFFFF
|
#define MAX_ADDRESS 0xFFFFFFFF
|
||||||
|
|
||||||
|
//
|
||||||
|
// The stack alignment required for IA-32
|
||||||
|
//
|
||||||
|
#define CPU_STACK_ALIGNMENT sizeof(UINTN)
|
||||||
|
|
||||||
//
|
//
|
||||||
// Modifier to ensure that all protocol member functions and EFI intrinsics
|
// Modifier to ensure that all protocol member functions and EFI intrinsics
|
||||||
// use the correct C calling convention. All protocol member functions and
|
// use the correct C calling convention. All protocol member functions and
|
||||||
|
@ -171,6 +171,12 @@ typedef INT64 INTN;
|
|||||||
//
|
//
|
||||||
#define MAX_ADDRESS 0xFFFFFFFFFFFFFFFFULL
|
#define MAX_ADDRESS 0xFFFFFFFFFFFFFFFFULL
|
||||||
|
|
||||||
|
//
|
||||||
|
// Per the Itanium Software Conventions and Runtime Architecture Guide,
|
||||||
|
// section 3.3.4, IPF stack must always be 16-byte aligned.
|
||||||
|
//
|
||||||
|
#define CPU_STACK_ALIGNMENT 16
|
||||||
|
|
||||||
//
|
//
|
||||||
// Modifier to ensure that all protocol member functions and EFI intrinsics
|
// Modifier to ensure that all protocol member functions and EFI intrinsics
|
||||||
// use the correct C calling convention. All protocol member functions and
|
// use the correct C calling convention. All protocol member functions and
|
||||||
|
@ -159,10 +159,15 @@ typedef INT64 INTN;
|
|||||||
#define MAX_2_BITS 0xC000000000000000
|
#define MAX_2_BITS 0xC000000000000000
|
||||||
|
|
||||||
//
|
//
|
||||||
// Maximum legal Itanium-based address
|
// Maximum legal X64 address
|
||||||
//
|
//
|
||||||
#define MAX_ADDRESS 0xFFFFFFFFFFFFFFFF
|
#define MAX_ADDRESS 0xFFFFFFFFFFFFFFFF
|
||||||
|
|
||||||
|
//
|
||||||
|
// The stack alignment required for X64
|
||||||
|
//
|
||||||
|
#define CPU_STACK_ALIGNMENT sizeof(UINTN)
|
||||||
|
|
||||||
//
|
//
|
||||||
// Modifier to ensure that all protocol member functions and EFI intrinsics
|
// Modifier to ensure that all protocol member functions and EFI intrinsics
|
||||||
// use the correct C calling convention. All protocol member functions and
|
// use the correct C calling convention. All protocol member functions and
|
||||||
|
Loading…
x
Reference in New Issue
Block a user