5.0.0-0.13

This commit is contained in:
Jakub Jelinek 2015-02-14 09:30:57 +01:00
parent 0215eb2e85
commit 8654925ece
6 changed files with 14 additions and 133 deletions

1
.gitignore vendored
View File

@ -5,3 +5,4 @@
/gcc-5.0.0-20150208.tar.bz2 /gcc-5.0.0-20150208.tar.bz2
/gcc-5.0.0-20150210.tar.bz2 /gcc-5.0.0-20150210.tar.bz2
/gcc-5.0.0-20150212.tar.bz2 /gcc-5.0.0-20150212.tar.bz2
/gcc-5.0.0-20150214.tar.bz2

View File

@ -1,9 +1,9 @@
%global DATE 20150212 %global DATE 20150214
%global SVNREV 220650 %global SVNREV 220707
%global gcc_version 5.0.0 %global gcc_version 5.0.0
# 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
# %{release}, append them after %{gcc_release} on Release: line. # %{release}, append them after %{gcc_release} on Release: line.
%global gcc_release 0.12 %global gcc_release 0.13
%global _unpackaged_files_terminate_build 0 %global _unpackaged_files_terminate_build 0
%global _performance_build 1 %global _performance_build 1
%global multilib_64_archs sparc64 ppc64 ppc64p7 s390x x86_64 %global multilib_64_archs sparc64 ppc64 ppc64p7 s390x x86_64
@ -198,9 +198,6 @@ Patch11: gcc5-no-add-needed.patch
Patch12: gcc5-libgo-p224.patch Patch12: gcc5-libgo-p224.patch
Patch13: gcc5-aarch64-async-unw-tables.patch Patch13: gcc5-aarch64-async-unw-tables.patch
Patch14: gcc5-libsanitize-aarch64-va42.patch Patch14: gcc5-libsanitize-aarch64-va42.patch
Patch15: gcc5-pr64884.patch
Patch16: gcc5-pr65000.patch
Patch17: gcc5-pr65034.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.
@ -750,9 +747,6 @@ package or when debugging this package.
rm -f libgo/go/crypto/elliptic/p224{,_test}.go rm -f libgo/go/crypto/elliptic/p224{,_test}.go
%patch13 -p0 -b .aarch64-async-unw-tables~ %patch13 -p0 -b .aarch64-async-unw-tables~
%patch14 -p0 -b .libsanitize-aarch64-va42~ %patch14 -p0 -b .libsanitize-aarch64-va42~
%patch15 -p0 -b .pr64884~
%patch16 -p0 -b .pr65000~
%patch17 -p0 -b .pr65034~
%if 0%{?_enable_debug_packages} %if 0%{?_enable_debug_packages}
mkdir dwz-wrapper mkdir dwz-wrapper
@ -2938,6 +2932,15 @@ fi
%doc rpm.doc/changelogs/libcc1/ChangeLog* %doc rpm.doc/changelogs/libcc1/ChangeLog*
%changelog %changelog
* Sat Feb 13 2015 Jakub Jelinek <jakub@redhat.com> 5.0.0-0.13
- update from the trunk
- PRs bootstrap/65060, c++/60211, c++/60894, c++/64884, c++/64898,
c++/64956, c++/64959, c++/64970, c++/65051, c++/65054, c/65040,
c/65050, debug/55541, fortran/64506, fortran/64932, ipa/65028,
rtl-optimization/47477, rtl/32219, tree-optimization/62209,
tree-optimization/64705, tree-optimization/64823,
tree-optimization/65002, tree-optimization/65053
* Thu Feb 12 2015 Jakub Jelinek <jakub@redhat.com> 5.0.0-0.12 * Thu Feb 12 2015 Jakub Jelinek <jakub@redhat.com> 5.0.0-0.12
- update from the trunk - update from the trunk
- PRs ipa/64813, ipa/65005, lto/65015, sanitizer/65000, sanitizer/65019, - PRs ipa/64813, ipa/65005, lto/65015, sanitizer/65000, sanitizer/65019,

View File

@ -1,16 +0,0 @@
2015-02-12 Jakub Jelinek <jakub@redhat.com>
PR c++/64884
* g++.dg/tm/pr47573.C: Only run on comdat_group effective targets.
--- gcc/testsuite/g++.dg/tm/pr47573.C.jj 2011-11-08 23:35:11.000000000 +0100
+++ gcc/testsuite/g++.dg/tm/pr47573.C 2015-02-12 14:26:23.873151135 +0100
@@ -1,4 +1,7 @@
-// { dg-do compile }
+// Without comdat support, we don't see the body of the
+// extern template class constructor, so limit this to
+// known comdat targets.
+// { dg-do compile { target comdat_group } }
// { dg-options "-fgnu-tm" }
template<typename _Tp> class allocator

View File

@ -1,22 +0,0 @@
2015-02-12 Jakub Jelinek <jakub@redhat.com>
PR sanitizer/65000
* g++.dg/ubsan/pr65000.C: New test.
--- gcc/testsuite/g++.dg/ubsan/pr65000.C.jj 2015-02-12 14:23:00.908487082 +0100
+++ gcc/testsuite/g++.dg/ubsan/pr65000.C 2015-02-12 14:21:35.000000000 +0100
@@ -0,0 +1,14 @@
+// PR sanitizer/65000
+// { dg-do compile }
+// { dg-options "-O1 -fsanitize=undefined -fno-sanitize-recover" }
+
+struct B { virtual ~B () {} void foo (); };
+struct C { virtual ~C (); };
+struct A : public virtual C {};
+struct D : A { ~D () { d.foo (); } B d; };
+
+void
+bar ()
+{
+ D a;
+}

View File

@ -1,85 +0,0 @@
2015-02-12 Jakub Jelinek <jakub@redhat.com>
PR ipa/65034
* stmt.c (emit_case_nodes): Use void_type_node instead of
NULL_TREE as LABEL_DECL type.
* decl.c (start_preparsed_function): Use void_type_node instead
of NULL_TREE as LABEL_DECL type.
* g++.dg/ipa/pr65034.C: New test.
--- gcc/stmt.c.jj 2015-01-15 23:39:17.000000000 +0100
+++ gcc/stmt.c 2015-02-12 10:11:44.688737296 +0100
@@ -1722,7 +1722,7 @@ emit_case_nodes (rtx index, case_node_pt
tree test_label
= build_decl (curr_insn_location (),
- LABEL_DECL, NULL_TREE, NULL_TREE);
+ LABEL_DECL, NULL_TREE, void_type_node);
/* The default label could be reached either through the right
subtree or the left subtree. Divide the probability
@@ -1881,7 +1881,7 @@ emit_case_nodes (rtx index, case_node_pt
Branch to a label where we will handle it later. */
test_label = build_decl (curr_insn_location (),
- LABEL_DECL, NULL_TREE, NULL_TREE);
+ LABEL_DECL, NULL_TREE, void_type_node);
probability = conditional_probability (
node->right->subtree_prob + default_prob/2,
subtree_prob + default_prob);
--- gcc/cp/decl.c.jj 2015-02-06 12:34:08.000000000 +0100
+++ gcc/cp/decl.c 2015-02-12 10:10:03.694397766 +0100
@@ -13703,7 +13703,7 @@ start_preparsed_function (tree decl1, tr
&& targetm.cxx.cdtor_returns_this ()))
{
cdtor_label = build_decl (input_location,
- LABEL_DECL, NULL_TREE, NULL_TREE);
+ LABEL_DECL, NULL_TREE, void_type_node);
DECL_CONTEXT (cdtor_label) = current_function_decl;
}
--- gcc/testsuite/g++.dg/ipa/pr65034.C.jj 2015-02-12 10:26:17.814382354 +0100
+++ gcc/testsuite/g++.dg/ipa/pr65034.C 2015-02-12 10:25:25.000000000 +0100
@@ -0,0 +1,40 @@
+// PR ipa/65034
+// { dg-do compile }
+// { dg-options "-g -O2" }
+
+enum B { C };
+enum D { E };
+struct A { A (B, D) { } };
+struct F { unsigned g, h, i, j; } a;
+
+void
+foo (unsigned x, unsigned y)
+{
+ switch (x)
+ {
+ case 6:
+ a.i = y;
+ break;
+ case 7:
+ a.j = y;
+ break;
+ default:
+ A (C, E);
+ }
+}
+
+void
+bar (unsigned x, unsigned y)
+{
+ switch (x)
+ {
+ case 6:
+ a.i = y;
+ break;
+ case 7:
+ a.j = y;
+ break;
+ default:
+ A (C, E);
+ }
+}

View File

@ -1 +1 @@
f2b77e649b2b6736a4b0e48bbafc30df gcc-5.0.0-20150212.tar.bz2 2d3e929ba3486c5ef6f907098882d1b8 gcc-5.0.0-20150214.tar.bz2