11.0.0-0.12
This commit is contained in:
parent
47dcf480fc
commit
4a41cd799a
1
.gitignore
vendored
1
.gitignore
vendored
@ -26,3 +26,4 @@
|
|||||||
/gcc-11.0.0-20201216.tar.xz
|
/gcc-11.0.0-20201216.tar.xz
|
||||||
/gcc-11.0.0-20201217.tar.xz
|
/gcc-11.0.0-20201217.tar.xz
|
||||||
/gcc-11.0.0-20201223.tar.xz
|
/gcc-11.0.0-20201223.tar.xz
|
||||||
|
/gcc-11.0.0-20210109.tar.xz
|
||||||
|
42
gcc.spec
42
gcc.spec
@ -1,5 +1,5 @@
|
|||||||
%global DATE 20201223
|
%global DATE 20210109
|
||||||
%global gitrev 9265a9d6eb38913206ddc37009fd548c2e4f5de0
|
%global gitrev 9971024e74d1681c78e9b1f0b7ea1e8a6cda7304
|
||||||
%global gcc_version 11.0.0
|
%global gcc_version 11.0.0
|
||||||
%global gcc_major 11
|
%global gcc_major 11
|
||||||
# Note, gcc_release must be integer, if you want to add suffixes to
|
# Note, gcc_release must be integer, if you want to add suffixes to
|
||||||
@ -119,7 +119,7 @@
|
|||||||
Summary: Various compilers (C, C++, Objective-C, ...)
|
Summary: Various compilers (C, C++, Objective-C, ...)
|
||||||
Name: gcc
|
Name: gcc
|
||||||
Version: %{gcc_version}
|
Version: %{gcc_version}
|
||||||
Release: %{gcc_release}.11%{?dist}
|
Release: %{gcc_release}.12%{?dist}
|
||||||
# libgcc, libgfortran, libgomp, libstdc++ and crtstuff have
|
# libgcc, libgfortran, libgomp, libstdc++ and crtstuff have
|
||||||
# GCC Runtime Exception.
|
# GCC Runtime Exception.
|
||||||
License: GPLv3+ and GPLv3+ with exceptions and GPLv2+ with exceptions and LGPLv2+ and BSD
|
License: GPLv3+ and GPLv3+ with exceptions and GPLv2+ with exceptions and LGPLv2+ and BSD
|
||||||
@ -272,8 +272,7 @@ Patch8: gcc11-foffload-default.patch
|
|||||||
Patch9: gcc11-Wno-format-security.patch
|
Patch9: gcc11-Wno-format-security.patch
|
||||||
Patch10: gcc11-rh1574936.patch
|
Patch10: gcc11-rh1574936.patch
|
||||||
Patch11: gcc11-d-shared-libphobos.patch
|
Patch11: gcc11-d-shared-libphobos.patch
|
||||||
Patch12: gcc11-pr98282.patch
|
Patch12: gcc11-pr98338-workaround.patch
|
||||||
Patch13: gcc11-pr98338-workaround.patch
|
|
||||||
|
|
||||||
# On ARM EABI systems, we do want -gnueabi to be part of the
|
# On ARM EABI systems, we do want -gnueabi to be part of the
|
||||||
# target triple.
|
# target triple.
|
||||||
@ -785,8 +784,7 @@ to NVidia PTX capable devices if available.
|
|||||||
%patch10 -p0 -b .rh1574936~
|
%patch10 -p0 -b .rh1574936~
|
||||||
%endif
|
%endif
|
||||||
%patch11 -p0 -b .d-shared-libphobos~
|
%patch11 -p0 -b .d-shared-libphobos~
|
||||||
%patch12 -p0 -b .pr98282~
|
%patch12 -p0 -b .pr98338-workaround~
|
||||||
%patch13 -p0 -b .pr98338-workaround~
|
|
||||||
|
|
||||||
echo 'Red Hat %{version}-%{gcc_release}' > gcc/DEV-PHASE
|
echo 'Red Hat %{version}-%{gcc_release}' > gcc/DEV-PHASE
|
||||||
|
|
||||||
@ -3071,6 +3069,36 @@ end
|
|||||||
%endif
|
%endif
|
||||||
|
|
||||||
%changelog
|
%changelog
|
||||||
|
* Sat Jan 9 2021 Jakub Jelinek <jakub@redhat.com> 11.0.0-0.12
|
||||||
|
- update from trunk
|
||||||
|
- PRs analyzer/97072, analyzer/97074, analyzer/98073, analyzer/98223,
|
||||||
|
analyzer/98293, analyzer/98564, analyzer/98580, bootstrap/98324,
|
||||||
|
bootstrap/98506, c++/82099, c++/95768, c++/96045, c++/96504,
|
||||||
|
c++/97597, c++/98206, c++/98305, c++/98316, c++/98329, c++/98332,
|
||||||
|
c++/98353, c++/98413, c++/98441, c++/98469, c++/98515, c++/98551,
|
||||||
|
c/98029, d/98427, fortran/83118, fortran/93701, fortran/93794,
|
||||||
|
fortran/93833, fortran/97612, fortran/97694, fortran/97723,
|
||||||
|
fortran/98022, fortran/98458, libstdc++/98384, middle-end/98160,
|
||||||
|
middle-end/98578, other/98437, rtl-optimization/97144,
|
||||||
|
rtl-optimization/97978, rtl-optimization/98214,
|
||||||
|
rtl-optimization/98334, rtl-optimization/98403, target/89057,
|
||||||
|
target/96793, target/97269, target/98461, target/98482, target/98495,
|
||||||
|
target/98521, target/98522, target/98567, target/98585,
|
||||||
|
testsuite/98489, testsuite/98566, tree-optimization/56719,
|
||||||
|
tree-optimization/94785, tree-optimization/94802,
|
||||||
|
tree-optimization/94994, tree-optimization/95401,
|
||||||
|
tree-optimization/95582, tree-optimization/95771,
|
||||||
|
tree-optimization/96239, tree-optimization/96782,
|
||||||
|
tree-optimization/96928, tree-optimization/96930,
|
||||||
|
tree-optimization/98282, tree-optimization/98291,
|
||||||
|
tree-optimization/98302, tree-optimization/98308,
|
||||||
|
tree-optimization/98371, tree-optimization/98381,
|
||||||
|
tree-optimization/98393, tree-optimization/98428,
|
||||||
|
tree-optimization/98464, tree-optimization/98474,
|
||||||
|
tree-optimization/98513, tree-optimization/98514,
|
||||||
|
tree-optimization/98516, tree-optimization/98544,
|
||||||
|
tree-optimization/98560, tree-optimization/98568
|
||||||
|
|
||||||
* Wed Dec 23 2020 Jakub Jelinek <jakub@redhat.com> 11.0.0-0.11
|
* Wed Dec 23 2020 Jakub Jelinek <jakub@redhat.com> 11.0.0-0.11
|
||||||
- update from trunk
|
- update from trunk
|
||||||
- PRs bootstrap/98300, bootstrap/98380, bootstrap/98412, c++/67343,
|
- PRs bootstrap/98300, bootstrap/98380, bootstrap/98412, c++/67343,
|
||||||
|
@ -1,118 +0,0 @@
|
|||||||
2020-12-15 Jakub Jelinek <jakub@redhat.com>
|
|
||||||
|
|
||||||
PR tree-optimization/98282
|
|
||||||
* tree-ssa-pre.c (compute_avail): Don't try to adjust alias set
|
|
||||||
if different when ref1->opcode is not MEM_REF or TARGET_MEM_REF.
|
|
||||||
|
|
||||||
* g++.dg/opt/pr98282.C: New test.
|
|
||||||
|
|
||||||
--- gcc/tree-ssa-pre.c.jj 2020-11-30 10:48:31.000000000 +0100
|
|
||||||
+++ gcc/tree-ssa-pre.c 2020-12-15 10:51:51.061206572 +0100
|
|
||||||
@@ -4176,13 +4176,17 @@ compute_avail (void)
|
|
||||||
&& ref2->opcode != MEM_REF
|
|
||||||
&& ref2 != &operands[0])
|
|
||||||
--ref2;
|
|
||||||
- if ((ref1->opcode == TARGET_MEM_REF
|
|
||||||
- || ref1->opcode == MEM_REF)
|
|
||||||
- && (TYPE_ALIGN (ref1->type)
|
|
||||||
- > TYPE_ALIGN (ref2->type)))
|
|
||||||
- ref1->type
|
|
||||||
- = build_aligned_type (ref1->type,
|
|
||||||
- TYPE_ALIGN (ref2->type));
|
|
||||||
+ if (ref1->opcode == TARGET_MEM_REF
|
|
||||||
+ || ref1->opcode == MEM_REF)
|
|
||||||
+ {
|
|
||||||
+ if (TYPE_ALIGN (ref1->type)
|
|
||||||
+ > TYPE_ALIGN (ref2->type))
|
|
||||||
+ ref1->type
|
|
||||||
+ = build_aligned_type (ref1->type,
|
|
||||||
+ TYPE_ALIGN (ref2->type));
|
|
||||||
+ }
|
|
||||||
+ else
|
|
||||||
+ set = ref->set;
|
|
||||||
/* TBAA behavior is an obvious part so make sure
|
|
||||||
that the hashtable one covers this as well
|
|
||||||
by adjusting the ref alias set and its base. */
|
|
||||||
--- gcc/testsuite/g++.dg/opt/pr98282.C.jj 2020-12-15 12:26:25.868415230 +0100
|
|
||||||
+++ gcc/testsuite/g++.dg/opt/pr98282.C 2020-12-15 12:28:00.346353067 +0100
|
|
||||||
@@ -0,0 +1,80 @@
|
|
||||||
+// PR tree-optimization/98282
|
|
||||||
+// { dg-do compile { target c++11 } }
|
|
||||||
+// { dg-options "-O2" }
|
|
||||||
+
|
|
||||||
+template <typename> struct g;
|
|
||||||
+template <typename b> struct g<b &> { typedef b c; };
|
|
||||||
+template <typename b> typename g<b>::c &&d(b &&e) {
|
|
||||||
+ return static_cast<typename g<b>::c &&>(e);
|
|
||||||
+}
|
|
||||||
+void *operator new(__SIZE_TYPE__, void *f) { return f; }
|
|
||||||
+struct h;
|
|
||||||
+struct k {
|
|
||||||
+ using i = h *;
|
|
||||||
+};
|
|
||||||
+struct D {
|
|
||||||
+ k::i j;
|
|
||||||
+};
|
|
||||||
+struct p : D {
|
|
||||||
+ p(p &&) : D() {}
|
|
||||||
+};
|
|
||||||
+struct r {
|
|
||||||
+ using l = int;
|
|
||||||
+ r(r &&) : ad() {}
|
|
||||||
+ l *ad;
|
|
||||||
+};
|
|
||||||
+struct s {
|
|
||||||
+ static s m();
|
|
||||||
+};
|
|
||||||
+struct t {
|
|
||||||
+ template <typename ah> void operator=(ah);
|
|
||||||
+};
|
|
||||||
+struct I {
|
|
||||||
+ template <typename o> void q(o ai) {
|
|
||||||
+ *ai = aj();
|
|
||||||
+ s::m();
|
|
||||||
+ }
|
|
||||||
+ h aj();
|
|
||||||
+};
|
|
||||||
+template <typename...> class as;
|
|
||||||
+struct J {
|
|
||||||
+ int a;
|
|
||||||
+ char av;
|
|
||||||
+};
|
|
||||||
+template <typename...> struct aw : J {
|
|
||||||
+ void ax(...) {}
|
|
||||||
+};
|
|
||||||
+template <typename... ay, typename an, typename... n>
|
|
||||||
+struct aw<as<ay...>, an, n...> : aw<as<ay...>, n...> {
|
|
||||||
+ using az = as<ay...>;
|
|
||||||
+ using ba = aw<az, n...>;
|
|
||||||
+ char bb;
|
|
||||||
+ an &bc() { return *reinterpret_cast<an *>(this); }
|
|
||||||
+ void ax(az *bd) {
|
|
||||||
+ if (bb)
|
|
||||||
+ new (bd) an(d(bc()));
|
|
||||||
+ ba::ax(bd);
|
|
||||||
+ }
|
|
||||||
+};
|
|
||||||
+template <typename... n> struct as : aw<as<n...>, n...> {
|
|
||||||
+ as();
|
|
||||||
+ as(as &&be) { be.ax(this); }
|
|
||||||
+ void operator=(as be) { be.ax(this); }
|
|
||||||
+};
|
|
||||||
+struct h {
|
|
||||||
+ as<decltype(nullptr), r, p> bg;
|
|
||||||
+};
|
|
||||||
+using bh = t;
|
|
||||||
+struct u {
|
|
||||||
+ bh bj;
|
|
||||||
+};
|
|
||||||
+I bk();
|
|
||||||
+template <typename> void bl() {
|
|
||||||
+ h a;
|
|
||||||
+ bk().q(&a);
|
|
||||||
+}
|
|
||||||
+template <typename> void bn(int) {
|
|
||||||
+ u b;
|
|
||||||
+ b.bj = bl<int>;
|
|
||||||
+}
|
|
||||||
+void bp() { bn<int>(0); }
|
|
2
sources
2
sources
@ -1,3 +1,3 @@
|
|||||||
SHA512 (gcc-11.0.0-20201223.tar.xz) = 46bd2b601027ce420d5659e0e8638f9f3971eaf637960db9aced7a335ea234b761ae5b671ffc1fcee772c804cbdf9058346f461ad360019777feca89491afdd9
|
SHA512 (gcc-11.0.0-20210109.tar.xz) = eb3864cf6fef07077175fec2f1ce0b67e678da70a85ce09888f78d1587e7b4c94c398a19aa4a77c32ffdebc34e877ce28deb881c3545521f22c6b158c3087d5d
|
||||||
SHA512 (newlib-cygwin-50e2a63b04bdd018484605fbb954fd1bd5147fa0.tar.xz) = 002a48a7b689a81abbf16161bcaec001a842e67dfbe372e9e109092703bfc666675f16198f60ca429370e8850d564547dc505df81bc3aaca4ce6defbc014ad6c
|
SHA512 (newlib-cygwin-50e2a63b04bdd018484605fbb954fd1bd5147fa0.tar.xz) = 002a48a7b689a81abbf16161bcaec001a842e67dfbe372e9e109092703bfc666675f16198f60ca429370e8850d564547dc505df81bc3aaca4ce6defbc014ad6c
|
||||||
SHA512 (nvptx-tools-5f6f343a302d620b0868edab376c00b15741e39e.tar.xz) = f6d10db94fa1570ae0f94df073fa3c73c8e5ee16d59070b53d94f7db0de8a031bc44d7f3f1852533da04b625ce758e022263855ed43cfc6867e0708d001e53c7
|
SHA512 (nvptx-tools-5f6f343a302d620b0868edab376c00b15741e39e.tar.xz) = f6d10db94fa1570ae0f94df073fa3c73c8e5ee16d59070b53d94f7db0de8a031bc44d7f3f1852533da04b625ce758e022263855ed43cfc6867e0708d001e53c7
|
||||||
|
Loading…
Reference in New Issue
Block a user