From e8d4831b1980a9c97acb15963e9ce4eb5d5c1ba8 Mon Sep 17 00:00:00 2001 From: vprabhal Date: Wed, 14 Mar 2007 23:44:44 +0000 Subject: [PATCH] changed the guid assignment from constant array to hi and low UINT64s (Intel compiler was using a global variable to assign an array which is not OK at run time) git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@2468 6f19259b-4bc3-4df7-8a09-765794883524 --- .../Library/EdkUefiRuntimeLib/Ipf/RuntimeLib.c | 10 ++++++++-- 1 file changed, 8 insertions(+), 2 deletions(-) diff --git a/EdkModulePkg/Library/EdkUefiRuntimeLib/Ipf/RuntimeLib.c b/EdkModulePkg/Library/EdkUefiRuntimeLib/Ipf/RuntimeLib.c index 530f52fff9..f6a1904143 100644 --- a/EdkModulePkg/Library/EdkUefiRuntimeLib/Ipf/RuntimeLib.c +++ b/EdkModulePkg/Library/EdkUefiRuntimeLib/Ipf/RuntimeLib.c @@ -196,9 +196,12 @@ Returns: --*/ { - EFI_GUID Guid = EFI_EXTENDED_SAL_VIRTUAL_SERVICES_PROTOCOL_GUID; + EFI_GUID Guid; SAL_RETURN_REGS ReturnReg; + *((UINT64 *) &Guid) = EFI_EXTENDED_SAL_VIRTUAL_SERVICES_PROTOCOL_GUID_LO; + *(((UINT64 *)&Guid) + 1) = EFI_EXTENDED_SAL_VIRTUAL_SERVICES_PROTOCOL_GUID_HI; + ReturnReg = EfiCallEsalService (&Guid, IsEfiRuntime, 0, 0, 0, 0, 0, 0, 0); return (BOOLEAN) (ReturnReg.r9 == 1); @@ -222,9 +225,12 @@ Returns: --*/ { - EFI_GUID Guid = EFI_EXTENDED_SAL_VIRTUAL_SERVICES_PROTOCOL_GUID; + EFI_GUID Guid; SAL_RETURN_REGS ReturnReg; + *((UINT64 *) &Guid) = EFI_EXTENDED_SAL_VIRTUAL_SERVICES_PROTOCOL_GUID_LO; + *(((UINT64 *)&Guid) + 1) = EFI_EXTENDED_SAL_VIRTUAL_SERVICES_PROTOCOL_GUID_HI; + ReturnReg = EfiCallEsalService (&Guid, IsVirtual, 0, 0, 0, 0, 0, 0, 0); return (BOOLEAN) (ReturnReg.r9 == 1); -- 2.39.2