From d228ee264cc1e8b82b5e93a2329112ae90b045f8 Mon Sep 17 00:00:00 2001 From: Jakub Jelinek Date: Tue, 19 Feb 2019 19:10:55 +0100 Subject: [PATCH] 9.0.1-0.6 --- .gitignore | 1 + gcc.spec | 24 ++++++++++++++++----- gcc9-pr88714.patch | 39 ++++++++++++++++++++++++++++++++++ gcc9-pr89368.patch | 20 ----------------- gcc9-pr89402.patch | 16 ++++++++++++++ gcc9-s390x-bootstrap-fix.patch | 17 +++++++++++++++ sources | 2 +- 7 files changed, 93 insertions(+), 26 deletions(-) create mode 100644 gcc9-pr88714.patch delete mode 100644 gcc9-pr89368.patch create mode 100644 gcc9-pr89402.patch create mode 100644 gcc9-s390x-bootstrap-fix.patch diff --git a/.gitignore b/.gitignore index 3984a9f..8d92f45 100644 --- a/.gitignore +++ b/.gitignore @@ -64,3 +64,4 @@ /gcc-9.0.1-20190203.tar.xz /gcc-9.0.1-20190209.tar.xz /gcc-9.0.1-20190215.tar.xz +/gcc-9.0.1-20190219.tar.xz diff --git a/gcc.spec b/gcc.spec index ab4e98d..7c18f7c 100644 --- a/gcc.spec +++ b/gcc.spec @@ -1,10 +1,10 @@ -%global DATE 20190215 -%global SVNREV 268719 +%global DATE 20190219 +%global SVNREV 269023 %global gcc_version 9.0.1 %global gcc_major 9 # 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 0.5 +%global gcc_release 0.6 %global nvptx_tools_gitrev c28050f60193b3b95a18866a96f03334e874e78f %global nvptx_newlib_gitrev aadc8eb0ec43b7cd0dd2dfb484bae63c8b05ef24 %global _unpackaged_files_terminate_build 0 @@ -256,7 +256,9 @@ Patch10: gcc9-rh1574936.patch Patch11: gcc9-d-shared-libphobos.patch Patch12: gcc9-pr89014.patch Patch13: gcc9-pr89093.patch -Patch14: gcc9-pr89368.patch +Patch14: gcc9-s390x-bootstrap-fix.patch +Patch15: gcc9-pr88714.patch +Patch16: gcc9-pr89402.patch Patch1000: nvptx-tools-no-ptxas.patch Patch1001: nvptx-tools-build.patch @@ -769,7 +771,9 @@ to NVidia PTX capable devices if available. %patch11 -p0 -b .d-shared-libphobos~ %patch12 -p0 -b .pr89014~ %patch13 -p0 -b .pr89093~ -%patch14 -p0 -b .pr89368~ +%patch14 -p0 -b .s390x-bootstrap~ +%patch15 -p0 -b .pr88714~ +%patch16 -p0 -b .pr89402~ cd nvptx-tools-%{nvptx_tools_gitrev} %patch1000 -p1 -b .nvptx-tools-no-ptxas~ @@ -2958,6 +2962,16 @@ end %endif %changelog +* Tue Feb 19 2019 Jakub Jelinek 9.0.1-0.6 +- update from trunk + - PRs c++/88680, c++/89217, c++/89315, c++/89336, c++/89356, c++/89383, + c++/89387, c++/89390, c++/89391, c/87924, d/88127, fortran/71066, + fortran/87689, fortran/88299, ipa/89306, middle-end/88074, + middle-end/89294, rtl-optimization/66152, target/89271, target/89361, + target/89372, target/89397, tree-optimization/89209, + tree-optimization/89296 + - fix s390{,x} (#1677602, PR target/89369) + * Fri Feb 15 2019 Jakub Jelinek 9.0.1-0.5 - update from trunk - PRs c++/77304, c++/86379, c++/87322, c++/87996, c++/88977, c++/88986, diff --git a/gcc9-pr88714.patch b/gcc9-pr88714.patch new file mode 100644 index 0000000..fddbf38 --- /dev/null +++ b/gcc9-pr88714.patch @@ -0,0 +1,39 @@ +2019-02-18 Jakub Jelinek + + PR bootstrap/88714 + * constraints.md (q): Remove. + * config/arm/ldrdstrd.md (*arm_ldrd, *arm_strd): Use rk constraint + instead of q. + +--- gcc/config/arm/constraints.md.jj 2019-01-01 12:37:27.032812929 +0100 ++++ gcc/config/arm/constraints.md 2019-02-18 20:18:51.816941795 +0100 +@@ -90,9 +90,6 @@ (define_constraint "PJ" + (define_register_constraint "k" "STACK_REG" + "@internal The stack register.") + +-(define_register_constraint "q" "(TARGET_ARM && TARGET_LDRD) ? CORE_REGS : GENERAL_REGS" +- "@internal In ARM state with LDRD support, core registers, otherwise general registers.") +- + (define_register_constraint "b" "TARGET_THUMB ? BASE_REGS : NO_REGS" + "@internal + Thumb only. The union of the low registers and the stack register.") +--- gcc/config/arm/ldrdstrd.md.jj 2019-02-18 20:19:34.976233961 +0100 ++++ gcc/config/arm/ldrdstrd.md 2019-02-18 20:19:54.555912842 +0100 +@@ -159,7 +159,7 @@ (define_peephole2 ; swap the destination + (define_insn "*arm_ldrd" + [(parallel [(set (match_operand:SI 0 "s_register_operand" "=r") + (match_operand:SI 2 "memory_operand" "m")) +- (set (match_operand:SI 1 "s_register_operand" "=q") ++ (set (match_operand:SI 1 "s_register_operand" "=rk") + (match_operand:SI 3 "memory_operand" "m"))])] + "TARGET_LDRD && TARGET_ARM && reload_completed + && valid_operands_ldrd_strd (operands, true)" +@@ -180,7 +180,7 @@ (define_insn "*arm_strd" + [(parallel [(set (match_operand:SI 2 "memory_operand" "=m") + (match_operand:SI 0 "s_register_operand" "r")) + (set (match_operand:SI 3 "memory_operand" "=m") +- (match_operand:SI 1 "s_register_operand" "q"))])] ++ (match_operand:SI 1 "s_register_operand" "rk"))])] + "TARGET_LDRD && TARGET_ARM && reload_completed + && valid_operands_ldrd_strd (operands, false)" + { diff --git a/gcc9-pr89368.patch b/gcc9-pr89368.patch deleted file mode 100644 index 7fbd421..0000000 --- a/gcc9-pr89368.patch +++ /dev/null @@ -1,20 +0,0 @@ ---- gcc/go/gofrontend/wb.cc (revision 268947) -+++ gcc/go/gofrontend/wb.cc (revision 268948) -@@ -904,7 +904,8 @@ Gogo::check_write_barrier(Block* enclosi - ref = Expression::make_unary(OPERATOR_AND, ref, loc); - ref = Expression::make_cast(unsafe_pointer_type, ref, loc); - ref = Expression::make_cast(puint32_type, ref, loc); -- ref = Expression::make_unary(OPERATOR_MULT, ref, loc); -+ ref = Expression::make_dereference(ref, -+ Expression::NIL_CHECK_NOT_NEEDED, loc); - Expression* zero = Expression::make_integer_ul(0, ref->type(), loc); - Expression* cond = Expression::make_binary(OPERATOR_EQEQ, ref, zero, loc); - ---- gcc/go/gofrontend/MERGE (revision 268947) -+++ gcc/go/gofrontend/MERGE (revision 268948) -@@ -1,4 +1,4 @@ --0563f2d018cdb2cd685c254bac5ceb38396d0a27 -+1a74b8a22b2ff7f430729aa87ecb8cea7b5cdd70 - - The first line of this file holds the git revision number of the last - merge done from the gofrontend repository. diff --git a/gcc9-pr89402.patch b/gcc9-pr89402.patch new file mode 100644 index 0000000..a8fc080 --- /dev/null +++ b/gcc9-pr89402.patch @@ -0,0 +1,16 @@ +2019-02-19 Jakub Jelinek + + PR libstdc++/89402 + * src/c++98/compatibility-ldbl.cc (_ZNKSt4hashIeEclEe): Add + _GLIBCXX_PURE to the alias declaration. + +--- libstdc++-v3/src/c++98/compatibility-ldbl.cc.jj 2019-01-01 12:39:41.530606161 +0100 ++++ libstdc++-v3/src/c++98/compatibility-ldbl.cc 2019-02-19 16:12:52.402123217 +0100 +@@ -75,6 +75,6 @@ namespace std _GLIBCXX_VISIBILITY(defaul + // and std::hash::operator() + // are the same, no need to duplicate them. + extern "C" void _ZNKSt4hashIeEclEe (void) +- __attribute__((alias ("_ZNKSt3tr14hashIeEclEe"))); ++ _GLIBCXX_PURE __attribute__((alias ("_ZNKSt3tr14hashIeEclEe"))); + + #endif diff --git a/gcc9-s390x-bootstrap-fix.patch b/gcc9-s390x-bootstrap-fix.patch new file mode 100644 index 0000000..f010d99 --- /dev/null +++ b/gcc9-s390x-bootstrap-fix.patch @@ -0,0 +1,17 @@ +--- libgo/go/internal/cpu/cpu_gccgo.c.jj 2019-02-16 07:57:27.882179972 +0100 ++++ libgo/go/internal/cpu/cpu_gccgo.c 2019-02-16 08:36:37.241900882 +0100 +@@ -71,7 +71,7 @@ struct xgetbv_ret xgetbv(void) { + + #endif /* defined(__i386__) || defined(__x86_64__) */ + +-#ifdef __s390__ ++#ifdef __s390x__ + + struct facilityList { + uint64_t bits[4]; +@@ -184,4 +184,4 @@ struct queryResult klmdQuery() { + return ret; + } + +-#endif /* defined(__s390__) */ ++#endif /* defined(__s390x__) */ diff --git a/sources b/sources index 9dbe783..c51b1c7 100644 --- a/sources +++ b/sources @@ -1,3 +1,3 @@ -SHA512 (gcc-9.0.1-20190215.tar.xz) = 7f83f31103b5474bca8e880c2a0c6aa5ac5dce492a6a7ca7d694083cb1e2a0c0845baa9df057c53754dba9d27798dd886af5cd21c4ce8564d4f03a3137377aaf +SHA512 (gcc-9.0.1-20190219.tar.xz) = 5c4b8f38bc87c19337cb4b7fdbc4910eefabc43f06f4224087f7b4879750722a0b508cd214f0ac880c23ed8f8deb803442cbbe1e7ea6f8f24c6a6365e8d0a1a7 SHA512 (nvptx-newlib-aadc8eb0ec43b7cd0dd2dfb484bae63c8b05ef24.tar.xz) = 94f7089365296f7dfa485107b4143bebc850a81586f3460fd896bbbb6ba099a00217d4042133424fd2183b352132f4fd367e6a60599bdae2a26dfd48a77d0e04 SHA512 (nvptx-tools-c28050f60193b3b95a18866a96f03334e874e78f.tar.xz) = a688cb12cf805950a5abbb13b52f45c81dbee98e310b7ed57ae20e76dbfa5964a16270148374a6426d177db71909d28360490f091c86a5d19d4faa5127beeee1