[llvm-branch-commits] [llvm] 5ddfea3 - [docs] Bump minimum GCC version to 7.4
Tobias Hieta via llvm-branch-commits
llvm-branch-commits at lists.llvm.org
Mon Aug 7 00:06:40 PDT 2023
Author: Fangrui Song
Date: 2023-08-07T09:03:52+02:00
New Revision: 5ddfea3e8ef6c1484dcbd108a3946b3663f140e0
URL: https://github.com/llvm/llvm-project/commit/5ddfea3e8ef6c1484dcbd108a3946b3663f140e0
DIFF: https://github.com/llvm/llvm-project/commit/5ddfea3e8ef6c1484dcbd108a3946b3663f140e0.diff
LOG: [docs] Bump minimum GCC version to 7.4
GCC 7.3 cannot build 16.x releases.
```
In file included from /tmp/llvm-16/llvm/lib/Transforms/IPO/AttributorAttributes.cpp:14:0:
/tmp/llvm-16/llvm/include/llvm/Transforms/IPO/Attributor.h:1137:32: error: duplicate initialization of ‘llvm::AnalysisGetter::HasLegacyWrapper<Analysis, std::void_t<typename Analysis::Lega
cyWrapper> >’
constexpr bool AnalysisGetter::HasLegacyWrapper<
^~~~~~~~~~~~~~~~~
Analysis, std::void_t<typename Analysis::LegacyWrapper>> = true;
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/tmp/llvm-16/llvm/include/llvm/Transforms/IPO/Attributor.h:1137:32: error: got 1 template parameters for ‘constexpr const bool llvm::AnalysisGetter::HasLegacyWrapper< <template-parameter-1
-1>, <template-parameter-1-2> >’
/tmp/llvm-16/llvm/include/llvm/Transforms/IPO/Attributor.h:1137:32: error: but 2 required
```
The 17.x and main branches have more failures, e.g.
```
llvm/lib/Transforms/Vectorize/LoopVectorize.cpp: `error: cannot decompose class type ‘std::pair<llvm::Value*, const llvm::SCEV*>’: ...`
```
We probably should just give up 7.1 and say that GCC<=7.3 is unsupported.
There is evidence that GCC 7.4 works.
I have verified that GCC 7.5 is able to build `check-{llvm,clang,clang-tools,lldb,lld,polly,mlir,bolt}`,
but not flang due to at least `flang/Common/enum-class.h` and a `<charconv`> in a unittest.
Link: https://discourse.llvm.org/t/require-gcc-7-5-as-gcc-7-3-cannot-build-llvm/72310
Reviewed By: aaron.ballman
Differential Revision: https://reviews.llvm.org/D156286
(cherry picked from commit 1e06b82bded69fe627d6cd62ecff236fca15f39b)
Added:
Modified:
llvm/cmake/modules/CheckCompilerVersion.cmake
llvm/docs/GettingStarted.rst
Removed:
################################################################################
diff --git a/llvm/cmake/modules/CheckCompilerVersion.cmake b/llvm/cmake/modules/CheckCompilerVersion.cmake
index 374ee8ffa400e0..4b3a0eb9a44330 100644
--- a/llvm/cmake/modules/CheckCompilerVersion.cmake
+++ b/llvm/cmake/modules/CheckCompilerVersion.cmake
@@ -4,8 +4,8 @@
include(CheckCXXSourceCompiles)
-set(GCC_MIN 7.1)
-set(GCC_SOFT_ERROR 7.1)
+set(GCC_MIN 7.4)
+set(GCC_SOFT_ERROR 7.4)
set(CLANG_MIN 5.0)
set(CLANG_SOFT_ERROR 5.0)
set(APPLECLANG_MIN 10.0)
diff --git a/llvm/docs/GettingStarted.rst b/llvm/docs/GettingStarted.rst
index 96135b73ca21ab..437c831c9ae9ac 100644
--- a/llvm/docs/GettingStarted.rst
+++ b/llvm/docs/GettingStarted.rst
@@ -281,7 +281,6 @@ uses the package and provides other details.
Package Version Notes
=========================================================== ============ ==========================================
`CMake <http://cmake.org/>`__ >=3.20.0 Makefile/workspace generator
-`GCC <http://gcc.gnu.org/>`_ >=7.1.0 C/C++ compiler\ :sup:`1`
`python <http://www.python.org/>`_ >=3.6 Automated test suite\ :sup:`2`
`zlib <http://zlib.net>`_ >=1.2.3.4 Compression library\ :sup:`3`
`GNU Make <http://savannah.gnu.org/projects/make>`_ 3.79, 3.79.1 Makefile/build processor\ :sup:`4`
@@ -343,7 +342,7 @@ popular host toolchains for specific minimum versions in our build systems:
* Clang 5.0
* Apple Clang 10.0
-* GCC 7.1
+* GCC 7.4
* Visual Studio 2019 16.7
Anything older than these toolchains *may* work, but will require forcing the
@@ -409,11 +408,11 @@ GCC from source. It is also quite easy to do these days.
.. _github gist:
https://gist.github.com/application2000/73fd6f4bf1be6600a2cf9f56315a2d91
-Easy steps for installing GCC 7.1.0:
+Easy steps for installing a specific version of GCC:
.. code-block:: console
- % gcc_version=7.1.0
+ % gcc_version=7.4.0
% wget https://ftp.gnu.org/gnu/gcc/gcc-${gcc_version}/gcc-${gcc_version}.tar.bz2
% wget https://ftp.gnu.org/gnu/gcc/gcc-${gcc_version}/gcc-${gcc_version}.tar.bz2.sig
% wget https://ftp.gnu.org/gnu/gnu-keyring.gpg
More information about the llvm-branch-commits
mailing list