From e0866135e85783759da68bd759c9e7d6b96b23d6 Mon Sep 17 00:00:00 2001 From: mdkinney Date: Thu, 9 Nov 2006 22:03:11 +0000 Subject: [PATCH 1/1] Remove private definition for IPF stack alignment, and use public definition called CPU_STACK_ALIGNMENT instead. git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@1923 6f19259b-4bc3-4df7-8a09-765794883524 --- EdkModulePkg/Universal/Ebc/Dxe/Ipf/EbcSupport.c | 10 ++-------- 1 file changed, 2 insertions(+), 8 deletions(-) diff --git a/EdkModulePkg/Universal/Ebc/Dxe/Ipf/EbcSupport.c b/EdkModulePkg/Universal/Ebc/Dxe/Ipf/EbcSupport.c index ea4308e263..eceb59185b 100644 --- a/EdkModulePkg/Universal/Ebc/Dxe/Ipf/EbcSupport.c +++ b/EdkModulePkg/Universal/Ebc/Dxe/Ipf/EbcSupport.c @@ -32,12 +32,6 @@ Abstract: // #define EBC_THUNK_ALIGNMENT 16 -// -// Per the IA-64 Software Conventions and Runtime Architecture Guide, -// section 3.3.4, IPF stack must always be 16-byte aligned. -// -#define IPF_STACK_ALIGNMENT 16 - // // Opcodes for IPF instructions. We'll need to hand-create thunk code (stuffing // bits) to insert a jump to the interpreter. @@ -899,8 +893,8 @@ Returns: // FrameSize = (UINTN) FramePtr - (UINTN) EbcSp + 64; Source = (VOID *) EbcSp; - Destination = (VOID *) ((UINT8 *) EbcSp - FrameSize - IPF_STACK_ALIGNMENT); - Destination = (VOID *) ((UINTN) ((UINTN) Destination + IPF_STACK_ALIGNMENT - 1) &~((UINTN) IPF_STACK_ALIGNMENT - 1)); + Destination = (VOID *) ((UINT8 *) EbcSp - FrameSize - CPU_STACK_ALIGNMENT); + Destination = (VOID *) ((UINTN) ((UINTN) Destination + CPU_STACK_ALIGNMENT - 1) &~((UINTN) CPU_STACK_ALIGNMENT - 1)); gBS->CopyMem (Destination, Source, FrameSize); EbcAsmLLCALLEX ((UINTN) CallAddr, (UINTN) Destination); } -- 2.39.2