From 357cec385d4f44385b24c299a601afc811abd9b7 Mon Sep 17 00:00:00 2001 From: Ard Biesheuvel Date: Thu, 14 Jul 2016 14:10:14 +0200 Subject: [PATCH] MdePkg: avoid __builtin_unreachable() on GCC v4.4 GCC v4.4 does not implement __builtin_unreachable(), so avoid using it when building with this version or earlier. Contributed-under: TianoCore Contribution Agreement 1.0 Signed-off-by: Ard Biesheuvel Reviewed-by: Jordan Justen Tested-by: Laszlo Ersek Tested-By: Liming Gao Reviewed-by: Liming Gao --- MdePkg/Include/Base.h | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/MdePkg/Include/Base.h b/MdePkg/Include/Base.h index 858385828d..7dbf9386b6 100644 --- a/MdePkg/Include/Base.h +++ b/MdePkg/Include/Base.h @@ -89,10 +89,11 @@ VERIFY_SIZE_OF (CHAR16, 2); // warnings. // #ifndef UNREACHABLE - #ifdef __GNUC__ + #if __GNUC__ > 4 || (__GNUC__ == 4 && __GNUC_MINOR__ > 4) /// /// Signal compilers and analyzers that this call is not reachable. It is /// up to the compiler to remove any code past that point. + /// Not implemented by GCC 4.4 or earlier. /// #define UNREACHABLE() __builtin_unreachable () #elif defined (__has_feature)