To fix the GP convert issue, which results in the GP of registered EsalServices is not correctly.

git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@2576 6f19259b-4bc3-4df7-8a09-765794883524
This commit is contained in:
yshang1 2007-04-18 09:27:05 +00:00
parent a0586cb857
commit 8350b26d43
1 changed files with 6 additions and 2 deletions

View File

@ -83,8 +83,12 @@ Returns:
--*/
{
EfiConvertPointer (0x0, (VOID **) &mPlabel.EntryPoint);
EfiConvertPointer (EFI_IPF_GP_POINTER, (VOID **) &mPlabel.GP);
UINT64 PhysicalEntryPoint;
PhysicalEntryPoint = mPlabel.EntryPoint;
EfiConvertPointer (0x0, (VOID **) &mPlabel.EntryPoint);
mPlabel.GP += mPlabel.EntryPoint - PhysicalEntryPoint;
SetEsalVirtualEntryPoint (mPlabel.EntryPoint, mPlabel.GP);
}