From: Liming Gao Date: Wed, 22 Jun 2016 07:23:47 +0000 (+0800) Subject: MdeModulePkg: Remove NORETURN for PeiCore() and DxeMain() function X-Git-Tag: edk2-stable201903~6795 X-Git-Url: https://git.proxmox.com/?a=commitdiff_plain;h=733c0c88c358ef76fc9182c654a4a55d36f44704;p=mirror_edk2.git MdeModulePkg: Remove NORETURN for PeiCore() and DxeMain() function PeiCore EntryPoint library _ModuleEntryPoint() will call PeiCore(), then call CpuDeadLoop (). When NORETURN is added for PeiCore(), MSVC compiler will report warning C4702: unreachable code for CpuDeadLoop (). And, the warning is treated as error and cause build break. DxeMain() has the similar issue. edk2 uses EntryPoint library to wrap every module entry point function except for SEC. The module entry point is still called by _ModuleEntryPoint(). So, there will be negative impact to add NORETURN for the module entry point. Contributed-under: TianoCore Contribution Agreement 1.0 Signed-off-by: Liming Gao --- diff --git a/MdeModulePkg/Core/Dxe/DxeMain/DxeMain.c b/MdeModulePkg/Core/Dxe/DxeMain/DxeMain.c index 8380fd78be..21cd61ad2e 100644 --- a/MdeModulePkg/Core/Dxe/DxeMain/DxeMain.c +++ b/MdeModulePkg/Core/Dxe/DxeMain/DxeMain.c @@ -235,7 +235,6 @@ GLOBAL_REMOVE_IF_UNREFERENCED EFI_LOAD_FIXED_ADDRESS_CONFIGURATION_TABLE gLoa **/ VOID -NORETURN EFIAPI DxeMain ( IN VOID *HobStart diff --git a/MdeModulePkg/Core/Pei/PeiMain.h b/MdeModulePkg/Core/Pei/PeiMain.h index 54331dabd8..24983201d0 100644 --- a/MdeModulePkg/Core/Pei/PeiMain.h +++ b/MdeModulePkg/Core/Pei/PeiMain.h @@ -315,7 +315,6 @@ typedef struct { **/ VOID -NORETURN EFIAPI PeiCore ( IN CONST EFI_SEC_PEI_HAND_OFF *SecCoreData, diff --git a/MdeModulePkg/Core/Pei/PeiMain/PeiMain.c b/MdeModulePkg/Core/Pei/PeiMain/PeiMain.c index 59fdd2614b..956200f312 100644 --- a/MdeModulePkg/Core/Pei/PeiMain/PeiMain.c +++ b/MdeModulePkg/Core/Pei/PeiMain/PeiMain.c @@ -136,7 +136,6 @@ ShadowPeiCore ( **/ VOID -NORETURN EFIAPI PeiCore ( IN CONST EFI_SEC_PEI_HAND_OFF *SecCoreDataPtr,