public inbox for devel@edk2.groups.io
 help / color / mirror / Atom feed
From: Laszlo Ersek <lersek@redhat.com>
To: edk2-devel-01 <edk2-devel@lists.01.org>
Cc: Ard Biesheuvel <ard.biesheuvel@linaro.org>,
	Liming Gao <liming.gao@intel.com>,
	Marvin Haeuser <Marvin.Haeuser@outlook.com>,
	Michael D Kinney <michael.d.kinney@intel.com>
Subject: [PATCH 26/26] Revert "MdePkg: avoid __builtin_unreachable() on GCC v4.4"
Date: Thu,  3 Jan 2019 03:48:16 +0100	[thread overview]
Message-ID: <20190103024816.9236-27-lersek@redhat.com> (raw)
In-Reply-To: <20190103024816.9236-1-lersek@redhat.com>

This reverts commit 357cec385d4f ("MdePkg: avoid __builtin_unreachable()
on GCC v4.4", 2016-07-21).

We've removed BaseTools support for GCC44..GCC47, therefore we need not
catch the GCC44 corner case for __builtin_unreachable().

No GCC44..GCC47 references remain under MdePkg after this patch.

Cc: Ard Biesheuvel <ard.biesheuvel@linaro.org>
Cc: Liming Gao <liming.gao@intel.com>
Cc: Marvin Haeuser <Marvin.Haeuser@outlook.com>
Cc: Michael D Kinney <michael.d.kinney@intel.com>
Ref: https://bugzilla.tianocore.org/show_bug.cgi?id=1377
Signed-off-by: Laszlo Ersek <lersek@redhat.com>
---

Notes:
    I build-tested this change by building ArmVirtQemu with the GCC5
    toolchain (gcc-6.1.1), and OVMF with the GCC48 toolchain (gcc-4.8.5).
    
    Namely, the PeiCore() function [MdeModulePkg/Core/Pei/PeiMain/PeiMain.c]
    and the DxeMain() function [MdeModulePkg/Core/Dxe/DxeMain/DxeMain.c]
    use UNREACHABLE().

 MdePkg/Include/Base.h | 3 +--
 1 file changed, 1 insertion(+), 2 deletions(-)

diff --git a/MdePkg/Include/Base.h b/MdePkg/Include/Base.h
index bc877d8125a5..d6b04baeaf8b 100644
--- a/MdePkg/Include/Base.h
+++ b/MdePkg/Include/Base.h
@@ -112,11 +112,10 @@ VERIFY_SIZE_OF (__VERIFY_UINT32_ENUM_SIZE, 4);
 // warnings.
 //
 #ifndef UNREACHABLE
-  #if __GNUC__ > 4 || (__GNUC__ == 4 && __GNUC_MINOR__ > 4)
+  #ifdef __GNUC__
     ///
     /// 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)
-- 
2.19.1.3.g30247aa5d201



  parent reply	other threads:[~2019-01-03  2:49 UTC|newest]

Thread overview: 39+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2019-01-03  2:47 [PATCH 00/26] remove the GCC44 through GCC47 toolchains Laszlo Ersek
2019-01-03  2:47 ` [PATCH 01/26] EmulatorPkg: require GCC48 or later Laszlo Ersek
2019-01-03  2:47 ` [PATCH 02/26] OvmfPkg: " Laszlo Ersek
2019-01-03  9:33   ` Ard Biesheuvel
2019-01-03  2:47 ` [PATCH 03/26] Vlv2TbltDevicePkg: assume " Laszlo Ersek
2019-01-04  6:53   ` Sun, Zailiang
2019-01-03  2:47 ` [PATCH 04/26] BaseTools/Conf/tools_def.template: drop ARM/AARCH support from GCC46/GCC47 Laszlo Ersek
2019-01-03  2:47 ` [PATCH 05/26] BaseTools/tools_def.template: fix up LF-only line terminator Laszlo Ersek
2019-01-03  2:47 ` [PATCH 06/26] BaseTools/tools_def.template: strip trailing whitespace Laszlo Ersek
2019-01-03  2:47 ` [PATCH 07/26] BaseTools/tools_def.template: remove GCC48_IA32_X64_DLINK_COMMON dead-end Laszlo Ersek
2019-01-03  2:47 ` [PATCH 08/26] BaseTools/tools_def.template: remove GCC47 leaf definitions Laszlo Ersek
2019-01-03  2:47 ` [PATCH 09/26] BaseTools/tools_def.template: propagate loss of GCC47 references Laszlo Ersek
2019-01-03  2:48 ` [PATCH 10/26] BaseTools/tools_def.template: remove GCC47 documentation Laszlo Ersek
2019-01-03  2:48 ` [PATCH 11/26] BaseTools/tools_def.template: remove GCC46 leaf definitions Laszlo Ersek
2019-01-03  2:48 ` [PATCH 12/26] BaseTools/tools_def.template: propagate loss of GCC46 references Laszlo Ersek
2019-01-03  2:48 ` [PATCH 13/26] BaseTools/tools_def.template: remove GCC46 documentation Laszlo Ersek
2019-01-03  2:48 ` [PATCH 14/26] BaseTools/tools_def.template: remove GCC45 leaf definitions Laszlo Ersek
2019-01-03  2:48 ` [PATCH 15/26] BaseTools/tools_def.template: propagate loss of GCC45 references Laszlo Ersek
2019-01-03  2:48 ` [PATCH 16/26] BaseTools/tools_def.template: remove GCC45 documentation Laszlo Ersek
2019-01-03  2:48 ` [PATCH 17/26] BaseTools/tools_def.template: remove GCC44 leaf definitions Laszlo Ersek
2019-01-03  2:48 ` [PATCH 18/26] BaseTools/tools_def.template: propagate loss of GCC44 references Laszlo Ersek
2019-01-03  2:48 ` [PATCH 19/26] BaseTools/tools_def.template: rename GCC44_ALL_CC_FLAGS to GCC48_ALL_CC_FLAGS Laszlo Ersek
2019-01-03  2:48 ` [PATCH 20/26] BaseTools/tools_def.template: eliminate GCC44_IA32_X64_DLINK_FLAGS Laszlo Ersek
2019-01-03  2:48 ` [PATCH 21/26] BaseTools/tools_def.template: rename GCC44_IA32_X64_DLINK_COMMON to GCC48_IA32_X64_DLINK_COMMON Laszlo Ersek
2019-01-03  2:48 ` [PATCH 22/26] BaseTools/tools_def.template: remove comment about GCC44 + LzmaF86Compress Laszlo Ersek
2019-01-03  2:48 ` [PATCH 23/26] BaseTools/tools_def.template: remove GCC44 documentation Laszlo Ersek
2019-01-03  2:48 ` [PATCH 24/26] ArmPkg/ArmSoftFloatLib: drop build flags specific to GCC46/GCC47 Laszlo Ersek
2019-01-03  9:33   ` Ard Biesheuvel
2019-01-03  2:48 ` [PATCH 25/26] CryptoPkg/BaseCryptLib: drop build flags specific to GCC44 Laszlo Ersek
2019-01-03  5:02   ` Wang, Jian J
2019-01-03  2:48 ` Laszlo Ersek [this message]
2019-01-03  9:34   ` [PATCH 26/26] Revert "MdePkg: avoid __builtin_unreachable() on GCC v4.4" Ard Biesheuvel
2019-01-03 13:25   ` Marvin Häuser
2019-01-03 20:21 ` [PATCH 00/26] remove the GCC44 through GCC47 toolchains Jordan Justen
2019-01-07  9:44 ` Philippe Mathieu-Daudé
2019-01-07 12:15   ` Gao, Liming
2019-01-07 18:08     ` Laszlo Ersek
2019-01-08  1:54       ` Laszlo Ersek
2019-01-08 11:34         ` Ard Biesheuvel

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-list from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=20190103024816.9236-27-lersek@redhat.com \
    --to=devel@edk2.groups.io \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox