This commit is contained in:
Jakub Jelinek 2021-05-12 15:56:07 +02:00
parent 0177c06558
commit f172832272
6 changed files with 136 additions and 59 deletions

1
.gitignore vendored
View File

@ -43,3 +43,4 @@
/gcc-11.0.1-20210422.tar.xz
/gcc-11.0.1-20210423.tar.xz
/gcc-11.1.1-20210428.tar.xz
/gcc-11.1.1-20210512.tar.xz

View File

@ -1,10 +1,10 @@
%global DATE 20210428
%global gitrev eb4b27fdf644012c40fe49ba8440594770dd8289
%global DATE 20210512
%global gitrev 2274d6c6dc94803fb17a8466bace08a15b387509
%global gcc_version 11.1.1
%global gcc_major 11
# Note, gcc_release must be integer, if you want to add suffixes to
# %%{release}, append them after %%{gcc_release} on Release: line.
%global gcc_release 1
%global gcc_release 2
%global nvptx_tools_gitrev 5f6f343a302d620b0868edab376c00b15741e39e
%global newlib_cygwin_gitrev 50e2a63b04bdd018484605fbb954fd1bd5147fa0
%global _unpackaged_files_terminate_build 0
@ -265,8 +265,7 @@ Patch10: gcc11-Wno-format-security.patch
Patch11: gcc11-rh1574936.patch
Patch12: gcc11-d-shared-libphobos.patch
Patch13: gcc11-pr99341-revert.patch
Patch14: gcc11-pr100302.patch
Patch15: gcc11-pr100298.patch
Patch14: gcc11-pr100379.patch
Patch100: gcc11-fortran-fdec-duplicates.patch
Patch101: gcc11-fortran-flogical-as-integer.patch
@ -790,8 +789,7 @@ to NVidia PTX capable devices if available.
%endif
%patch12 -p0 -b .d-shared-libphobos~
%patch13 -p0 -b .pr99341-revert~
%patch14 -p0 -b .pr100302~
%patch15 -p0 -b .pr100298~
%patch14 -p0 -b .pr100379~
%if 0%{?rhel} >= 9
%patch100 -p1 -b .fortran-fdec-duplicates~
@ -3134,6 +3132,20 @@ end
%endif
%changelog
* Wed May 12 2021 Jakub Jelinek <jakub@redhat.com> 11.1.1-2
- update from releases/gcc-11-branch
- PRs c++/98032, c++/100319, c++/100362, c/100450, fortran/100274,
ipa/100308, libgomp/100352, libstdc++/99006, libstdc++/99453,
libstdc++/100259, libstdc++/100298, libstdc++/100384,
rtl-optimization/84878, rtl-optimization/100225,
rtl-optimization/100230, rtl-optimization/100263,
rtl-optimization/100411, target/99988, target/100217, target/100232,
target/100236, target/100270, target/100305, target/100311,
target/100375, target/100402, tree-optimization/96513,
tree-optimization/100253, tree-optimization/100278,
tree-optimization/100329, tree-optimization/100414
- fix build with removed linux/cyclades.h header (PR sanitizer/100379)
* Wed Apr 28 2021 Jakub Jelinek <jakub@redhat.com> 11.1.1-1
- update from releases/gcc-11-branch
- GCC 11.1 release

View File

@ -1,17 +0,0 @@
2021-04-28 Jonathan Wakely <jwakely@redhat.com>
PR libstdc++/100298
* include/bits/std_thread.h (thread::hardware_concurrency): Add
missing noexcept to inline definition for non-gthreads targets.
--- libstdc++-v3/include/bits/std_thread.h
+++ libstdc++-v3/include/bits/std_thread.h
@@ -270,7 +270,7 @@ _GLIBCXX_BEGIN_NAMESPACE_VERSION
#ifndef _GLIBCXX_HAS_GTHREADS
inline void thread::join() { std::__throw_system_error(EINVAL); }
inline void thread::detach() { std::__throw_system_error(EINVAL); }
- inline unsigned int thread::hardware_concurrency() { return 0; }
+ inline unsigned int thread::hardware_concurrency() noexcept { return 0; }
#endif
inline void

View File

@ -1,34 +0,0 @@
2021-04-28 Jakub Jelinek <jakub@redhat.com>
PR target/100302
* config/aarch64/aarch64.c (aarch64_add_offset_1_temporaries): Use
absu_hwi instead of abs_hwi.
* gcc.target/aarch64/sve/pr100302.c: New test.
--- gcc/config/aarch64/aarch64.c.jj 2021-04-28 10:43:06.313337362 +0200
+++ gcc/config/aarch64/aarch64.c 2021-04-28 11:01:10.567243000 +0200
@@ -4736,7 +4736,7 @@ aarch64_mov128_immediate (rtx imm)
static unsigned int
aarch64_add_offset_1_temporaries (HOST_WIDE_INT offset)
{
- return abs_hwi (offset) < 0x1000000 ? 0 : 1;
+ return absu_hwi (offset) < 0x1000000 ? 0 : 1;
}
/* A subroutine of aarch64_add_offset. Set DEST to SRC + OFFSET for
--- gcc/testsuite/gcc.target/aarch64/sve/pr100302.c.jj 2021-04-28 10:49:19.337176274 +0200
+++ gcc/testsuite/gcc.target/aarch64/sve/pr100302.c 2021-04-28 10:42:48.342537828 +0200
@@ -0,0 +1,12 @@
+/* PR target/100302 */
+/* { dg-do compile } */
+/* { dg-options "-march=armv8.2-a+sve -O1 -ftree-loop-vectorize -fno-tree-scev-cprop --param vect-partial-vector-usage=0 -fvect-cost-model=unlimited" } */
+
+long int x;
+
+void
+foo (void)
+{
+ for (x = 0; x >= 0; ++x)
+ ;
+}

115
gcc11-pr100379.patch Normal file
View File

@ -0,0 +1,115 @@
2021-05-10 Tamar Christina <tamar.christina@arm.com>
PR sanitizer/100379
* sanitizer_common/sanitizer_platform.h: Define
SANITIZER_LINUX_CYCLADES to one if linux/cyclades.h header exist.
* sanitizer_common/sanitizer_platform_limits_posix.h: Conditionalize
cyclades support on SANITIZER_LINUX_CYCLADES.
* sanitizer_common/sanitizer_platform_limits_posix.cpp: Likewise.
* sanitizer_common/sanitizer_common_interceptors_ioctl.inc: Likewise.
--- libsanitizer/sanitizer_common/sanitizer_platform.h.jj 2021-04-20 10:33:08.702324327 +0200
+++ libsanitizer/sanitizer_common/sanitizer_platform.h 2021-05-12 15:44:53.035964205 +0200
@@ -367,4 +367,17 @@
#define SANITIZER_SUPPORTS_INIT_FOR_DLOPEN 0
#endif
+// Kernel has removed this header, as such check for it's existance
+// before trying to include defines from it.
+// https://lkml.org/lkml/2021/3/2/153
+#ifdef __has_include
+# if __has_include(<linux/cyclades.h>) && !SANITIZER_ANDROID
+# define SANITIZER_LINUX_CYCLADES 1
+# else
+# define SANITIZER_LINUX_CYCLADES 0
+# endif
+#else
+# define SANITIZER_LINUX_CYCLADES 0
+#endif
+
#endif // SANITIZER_PLATFORM_H
--- libsanitizer/sanitizer_common/sanitizer_platform_limits_posix.h.jj 2021-04-20 10:33:08.703324315 +0200
+++ libsanitizer/sanitizer_common/sanitizer_platform_limits_posix.h 2021-05-12 15:44:53.039964162 +0200
@@ -981,7 +981,9 @@ extern unsigned struct_vt_mode_sz;
#if SANITIZER_LINUX && !SANITIZER_ANDROID
extern unsigned struct_ax25_parms_struct_sz;
+#if SANITIZER_LINUX_CYCLADES
extern unsigned struct_cyclades_monitor_sz;
+#endif
extern unsigned struct_input_keymap_entry_sz;
extern unsigned struct_ipx_config_data_sz;
extern unsigned struct_kbdiacrs_sz;
@@ -1326,6 +1328,7 @@ extern unsigned IOCTL_VT_WAITACTIVE;
#endif // SANITIZER_LINUX
#if SANITIZER_LINUX && !SANITIZER_ANDROID
+#if SANITIZER_LINUX_CYCLADES
extern unsigned IOCTL_CYGETDEFTHRESH;
extern unsigned IOCTL_CYGETDEFTIMEOUT;
extern unsigned IOCTL_CYGETMON;
@@ -1335,6 +1338,7 @@ extern unsigned IOCTL_CYSETDEFTHRESH;
extern unsigned IOCTL_CYSETDEFTIMEOUT;
extern unsigned IOCTL_CYSETTHRESH;
extern unsigned IOCTL_CYSETTIMEOUT;
+#endif
extern unsigned IOCTL_EQL_EMANCIPATE;
extern unsigned IOCTL_EQL_ENSLAVE;
extern unsigned IOCTL_EQL_GETMASTRCFG;
--- libsanitizer/sanitizer_common/sanitizer_platform_limits_posix.cpp.jj 2021-04-20 10:33:08.703324315 +0200
+++ libsanitizer/sanitizer_common/sanitizer_platform_limits_posix.cpp 2021-05-12 15:44:53.040964151 +0200
@@ -131,7 +131,9 @@ typedef struct user_fpregs elf_fpregset_
# include <sys/procfs.h>
#endif
#include <sys/user.h>
-#include <linux/cyclades.h>
+#if SANITIZER_LINUX_CYCLADES
+# include <linux/cyclades.h>
+#endif
#include <linux/if_eql.h>
#include <linux/if_plip.h>
#include <linux/lp.h>
@@ -449,7 +451,9 @@ unsigned struct_ElfW_Phdr_sz = sizeof(El
#if SANITIZER_LINUX && !SANITIZER_ANDROID
unsigned struct_ax25_parms_struct_sz = sizeof(struct ax25_parms_struct);
+#if SANITIZER_LINUX_CYCLADES
unsigned struct_cyclades_monitor_sz = sizeof(struct cyclades_monitor);
+#endif
#if EV_VERSION > (0x010000)
unsigned struct_input_keymap_entry_sz = sizeof(struct input_keymap_entry);
#else
@@ -815,6 +819,7 @@ unsigned struct_ElfW_Phdr_sz = sizeof(El
#endif // SANITIZER_LINUX
#if SANITIZER_LINUX && !SANITIZER_ANDROID
+#if SANITIZER_LINUX_CYCLADES
unsigned IOCTL_CYGETDEFTHRESH = CYGETDEFTHRESH;
unsigned IOCTL_CYGETDEFTIMEOUT = CYGETDEFTIMEOUT;
unsigned IOCTL_CYGETMON = CYGETMON;
@@ -824,6 +829,7 @@ unsigned struct_ElfW_Phdr_sz = sizeof(El
unsigned IOCTL_CYSETDEFTIMEOUT = CYSETDEFTIMEOUT;
unsigned IOCTL_CYSETTHRESH = CYSETTHRESH;
unsigned IOCTL_CYSETTIMEOUT = CYSETTIMEOUT;
+#endif
unsigned IOCTL_EQL_EMANCIPATE = EQL_EMANCIPATE;
unsigned IOCTL_EQL_ENSLAVE = EQL_ENSLAVE;
unsigned IOCTL_EQL_GETMASTRCFG = EQL_GETMASTRCFG;
--- libsanitizer/sanitizer_common/sanitizer_common_interceptors_ioctl.inc.jj 2021-04-20 10:33:08.698324371 +0200
+++ libsanitizer/sanitizer_common/sanitizer_common_interceptors_ioctl.inc 2021-05-12 15:44:53.027964291 +0200
@@ -366,6 +366,7 @@ static void ioctl_table_fill() {
#if SANITIZER_LINUX && !SANITIZER_ANDROID
// _(SIOCDEVPLIP, WRITE, struct_ifreq_sz); // the same as EQL_ENSLAVE
+#if SANITIZER_LINUX_CYCLADES
_(CYGETDEFTHRESH, WRITE, sizeof(int));
_(CYGETDEFTIMEOUT, WRITE, sizeof(int));
_(CYGETMON, WRITE, struct_cyclades_monitor_sz);
@@ -375,6 +376,7 @@ static void ioctl_table_fill() {
_(CYSETDEFTIMEOUT, NONE, 0);
_(CYSETTHRESH, NONE, 0);
_(CYSETTIMEOUT, NONE, 0);
+#endif
_(EQL_EMANCIPATE, WRITE, struct_ifreq_sz);
_(EQL_ENSLAVE, WRITE, struct_ifreq_sz);
_(EQL_GETMASTRCFG, WRITE, struct_ifreq_sz);

View File

@ -1,4 +1,4 @@
SHA512 (gcc-11.1.1-20210428.tar.xz) = c9dbb4b65a36f39f3e2b98d5a1b2ae68a541cea775a10df6ab32fcbc369f9e17e196de8b9d85280f7a9c59f911e56490ba32bc72e71817e5cec9c54bf9eecfb5
SHA512 (gcc-11.1.1-20210512.tar.xz) = 6cc7d8a3a641182c1d7d0d74097daef8c98a6feeedcb73fd1414831fec94930ec35baba11b67bc729bde1ed827799df33b7982799d4d2a07a189375d1262d8c8
SHA512 (isl-0.18.tar.bz2) = 85d0b40f4dbf14cb99d17aa07048cdcab2dc3eb527d2fbb1e84c41b2de5f351025370e57448b63b2b8a8cf8a0843a089c3263f9baee1542d5c2e1cb37ed39d94
SHA512 (newlib-cygwin-50e2a63b04bdd018484605fbb954fd1bd5147fa0.tar.xz) = 002a48a7b689a81abbf16161bcaec001a842e67dfbe372e9e109092703bfc666675f16198f60ca429370e8850d564547dc505df81bc3aaca4ce6defbc014ad6c
SHA512 (nvptx-tools-5f6f343a302d620b0868edab376c00b15741e39e.tar.xz) = f6d10db94fa1570ae0f94df073fa3c73c8e5ee16d59070b53d94f7db0de8a031bc44d7f3f1852533da04b625ce758e022263855ed43cfc6867e0708d001e53c7