From 1bfe0e3c3bb0b68b2b50454266b88a3b48022c6d Mon Sep 17 00:00:00 2001 From: Jakub Jelinek Date: Sat, 17 Mar 2018 14:56:00 +0100 Subject: [PATCH] 8.0.1-0.19 --- .gitignore | 1 + gcc.spec | 25 ++++++++++---- gcc8-pr84786.patch | 76 ------------------------------------------ gcc8-pr84808.patch | 82 ---------------------------------------------- sources | 2 +- 5 files changed, 20 insertions(+), 166 deletions(-) delete mode 100644 gcc8-pr84786.patch delete mode 100644 gcc8-pr84808.patch diff --git a/.gitignore b/.gitignore index afd3a9c..8495443 100644 --- a/.gitignore +++ b/.gitignore @@ -41,3 +41,4 @@ /gcc-8.0.1-20180222.tar.xz /gcc-8.0.1-20180310.tar.xz /gcc-8.0.1-20180312.tar.xz +/gcc-8.0.1-20180317.tar.xz diff --git a/gcc.spec b/gcc.spec index c47a602..7071db1 100644 --- a/gcc.spec +++ b/gcc.spec @@ -1,10 +1,10 @@ -%global DATE 20180312 -%global SVNREV 258461 +%global DATE 20180317 +%global SVNREV 258622 %global gcc_version 8.0.1 %global gcc_major 8 # 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.18 +%global gcc_release 0.19 %global nvptx_tools_gitrev c28050f60193b3b95a18866a96f03334e874e78f %global nvptx_newlib_gitrev aadc8eb0ec43b7cd0dd2dfb484bae63c8b05ef24 %global _unpackaged_files_terminate_build 0 @@ -245,8 +245,6 @@ Patch9: gcc8-aarch64-async-unw-tables.patch Patch10: gcc8-foffload-default.patch Patch11: gcc8-Wno-format-security.patch Patch12: gcc8-rh1512529-aarch64.patch -Patch13: gcc8-pr84786.patch -Patch14: gcc8-pr84808.patch Patch1000: nvptx-tools-no-ptxas.patch Patch1001: nvptx-tools-build.patch @@ -806,8 +804,6 @@ to NVidia PTX capable devices if available. %patch10 -p0 -b .foffload-default~ %patch11 -p0 -b .Wno-format-security~ %patch12 -p0 -b .rh1512529-aarch64~ -%patch13 -p0 -b .pr84786~ -%patch14 -p0 -b .pr84808~ cd nvptx-tools-%{nvptx_tools_gitrev} %patch1000 -p1 -b .nvptx-tools-no-ptxas~ @@ -3068,6 +3064,21 @@ fi %endif %changelog +* Sat Mar 17 2018 Jakub Jelinek 8.0.1-0.19 +- update from the trunk + - PRs ada/82813, c++/79085, c++/79937, c++/80227, c++/81236, c++/82336, + c++/82410, c++/82565, c++/83911, c++/83916, c++/83937, c++/84222, + c++/84720, c++/84798, c++/84801, c++/84820, c++/84839, c++/84843, + c++/84874, c++/84906, c/46921, c/84852, c/84853, c/84873, c/84909, + c/84910, fortran/61775, fortran/69395, fortran/78741, ipa/84658, + ipa/84722, ipa/8480, ipa/84833, libgfortran/84880, libstdc++/78420, + libstdc++/83662, libstdc++/84773, lto/84805, middle-end/84831, + middle-end/84834, sanitizer/83392, target/68256, target/78090, + target/83451, target/84574, target/84711, target/84743, target/84827, + target/84828, target/84844, target/84860, target/84876, target/84899, + target/84902, tree-optimization/84725, tree-optimization/84830, + tree-optimization/84841 + * Mon Mar 12 2018 Jakub Jelinek 8.0.1-0.18 - update from the trunk - PRs c++/84355, c++/84802, c++/84813, debug/58150, fortran/83939, diff --git a/gcc8-pr84786.patch b/gcc8-pr84786.patch deleted file mode 100644 index 739f8c3..0000000 --- a/gcc8-pr84786.patch +++ /dev/null @@ -1,76 +0,0 @@ -2018-03-12 Jakub Jelinek - - PR target/84786 - * config/i386/sse.md (sse2_loadhpd): Use Yv constraint rather than v - on the last operand. - - * gcc.target/i386/avx512f-pr84786-1.c: New test. - * gcc.target/i386/avx512f-pr84786-2.c: New test. - ---- gcc/config/i386/sse.md.jj 2018-03-05 17:00:24.568655800 +0100 -+++ gcc/config/i386/sse.md 2018-03-12 11:05:48.917401886 +0100 -@@ -9022,14 +9022,14 @@ (define_expand "sse2_loadhpd_exp" - ;; see comment above inline_secondary_memory_needed function in i386.c - (define_insn "sse2_loadhpd" - [(set (match_operand:V2DF 0 "nonimmediate_operand" -- "=x,v,x,v,o,o ,o") -+ "=x,v,x,v ,o,o ,o") - (vec_concat:V2DF - (vec_select:DF - (match_operand:V2DF 1 "nonimmediate_operand" -- " 0,v,0,v,0,0 ,0") -+ " 0,v,0,v ,0,0 ,0") - (parallel [(const_int 0)])) - (match_operand:DF 2 "nonimmediate_operand" -- " m,m,x,v,x,*f,r")))] -+ " m,m,x,Yv,x,*f,r")))] - "TARGET_SSE2 && !(MEM_P (operands[1]) && MEM_P (operands[2]))" - "@ - movhpd\t{%2, %0|%0, %2} ---- gcc/testsuite/gcc.target/i386/avx512f-pr84786-1.c.jj 2018-03-12 11:32:33.563665173 +0100 -+++ gcc/testsuite/gcc.target/i386/avx512f-pr84786-1.c 2018-03-12 11:35:33.964695384 +0100 -@@ -0,0 +1,25 @@ -+/* PR target/84786 */ -+/* { dg-do run { target { ! ia32 } } } */ -+/* { dg-options "-mavx512f -mno-avx512vl -O2" } */ -+/* { dg-require-effective-target avx512f } */ -+ -+#include "avx512f-check.h" -+ -+typedef double V __attribute__((vector_size (16))); -+ -+__attribute__((noipa)) V -+foo (V x, double y) -+{ -+ register double z __asm ("xmm18"); -+ asm volatile ("" : "=v" (z) : "0" (y)); -+ x[1] = z; -+ return x; -+} -+ -+static void -+avx512f_test (void) -+{ -+ V a = foo ((V) { 1.0, 2.0 }, 3.0); -+ if (a[0] != 1.0 || a[1] != 3.0) -+ abort (); -+} ---- gcc/testsuite/gcc.target/i386/avx512f-pr84786-2.c.jj 2018-03-12 11:32:43.445666826 +0100 -+++ gcc/testsuite/gcc.target/i386/avx512f-pr84786-2.c 2018-03-12 11:35:45.260697279 +0100 -@@ -0,0 +1,16 @@ -+/* PR target/84786 */ -+/* { dg-do compile { target { ! ia32 } } } */ -+/* { dg-options "-mavx512f -mno-avx512vl -O2" } */ -+ -+typedef double V __attribute__((vector_size (16))); -+ -+__attribute__((noipa)) V -+foo (V x, double y) -+{ -+ register double z __asm ("xmm18"); -+ asm volatile ("" : "=v" (z) : "0" (y)); -+ x[1] = z; -+ return x; -+} -+ -+/* { dg-final { scan-assembler-not "vunpcklpd\[\^\n\r]*xmm(1\[6-9]|\[23]\[0-9])" } } */ diff --git a/gcc8-pr84808.patch b/gcc8-pr84808.patch deleted file mode 100644 index 8689258..0000000 --- a/gcc8-pr84808.patch +++ /dev/null @@ -1,82 +0,0 @@ -2018-03-12 Jakub Jelinek - - PR c++/84808 - * constexpr.c (find_array_ctor_elt): Don't use elt reference after - first potential CONSTRUCTOR_ELTS reallocation. Convert dindex to - sizetype. Formatting fixes. - - * g++.dg/cpp1y/constexpr-84808.C: New test. - ---- gcc/cp/constexpr.c.jj 2018-03-07 22:52:02.000000000 +0100 -+++ gcc/cp/constexpr.c 2018-03-12 12:39:46.890321137 +0100 -@@ -2194,9 +2194,9 @@ find_array_ctor_elt (tree ary, tree dind - that the same is true of the other elements and index directly. */ - if (end > 0) - { -- tree cindex = (*elts)[end-1].index; -+ tree cindex = (*elts)[end - 1].index; - if (TREE_CODE (cindex) == INTEGER_CST -- && compare_tree_int (cindex, end-1) == 0) -+ && compare_tree_int (cindex, end - 1) == 0) - { - if (i < end) - return i; -@@ -2225,6 +2225,8 @@ find_array_ctor_elt (tree ary, tree dind - constructor_elt e; - tree lo = TREE_OPERAND (idx, 0); - tree hi = TREE_OPERAND (idx, 1); -+ tree value = elt.value; -+ dindex = fold_convert (sizetype, dindex); - if (tree_int_cst_lt (lo, dindex)) - { - /* There are still some lower elts; shorten the range. */ -@@ -2238,7 +2240,7 @@ find_array_ctor_elt (tree ary, tree dind - /* Append the element we want to insert. */ - ++middle; - e.index = dindex; -- e.value = unshare_constructor (elt.value); -+ e.value = unshare_constructor (value); - vec_safe_insert (CONSTRUCTOR_ELTS (ary), middle, e); - } - else -@@ -2254,8 +2256,8 @@ find_array_ctor_elt (tree ary, tree dind - e.index = hi; - else - e.index = build2 (RANGE_EXPR, sizetype, new_lo, hi); -- e.value = unshare_constructor (elt.value); -- vec_safe_insert (CONSTRUCTOR_ELTS (ary), middle+1, e); -+ e.value = unshare_constructor (value); -+ vec_safe_insert (CONSTRUCTOR_ELTS (ary), middle + 1, e); - } - } - return middle; ---- gcc/testsuite/g++.dg/cpp1y/constexpr-84808.C.jj 2018-03-12 12:45:29.472374837 +0100 -+++ gcc/testsuite/g++.dg/cpp1y/constexpr-84808.C 2018-03-12 12:46:11.742381465 +0100 -@@ -0,0 +1,27 @@ -+// PR c++/84808 -+// { dg-do compile { target c++14 } } -+ -+struct A { int i; constexpr A () : i() {} }; -+struct B { A a[24]; }; -+ -+constexpr int -+foo (int n) -+{ -+ B b; -+ ++b.a[n + 20].i; -+ ++b.a[n + 18].i; -+ ++b.a[n + 16].i; -+ ++b.a[n + 14].i; -+ ++b.a[n + 12].i; -+ ++b.a[n + 10].i; -+ ++b.a[n + 8].i; -+ ++b.a[n + 6].i; -+ ++b.a[n + 4].i; -+ ++b.a[n + 2].i; -+ ++b.a[n].i; -+ return b.a[2].i + b.a[4].i + b.a[6].i + b.a[8].i + b.a[10].i -+ + b.a[12].i + b.a[14].i + b.a[16].i + b.a[18].i + b.a[20].i + b.a[22].i; -+} -+ -+constexpr int i = foo (2); -+static_assert (i == 11, ""); diff --git a/sources b/sources index 1b4019f..1c4852a 100644 --- a/sources +++ b/sources @@ -1,3 +1,3 @@ -SHA512 (gcc-8.0.1-20180312.tar.xz) = 4d88974201d1894fa66c39aabd27f0657ce4d451c35df8ace7500c2ad1109da3147e770cb23e4121035ea6ec742a96bc4d6374836ddccac34cc1330fbc7b9345 +SHA512 (gcc-8.0.1-20180317.tar.xz) = 9104499d49c15003be7e18e5ceadb902b0d0751e005f5a43cf9a671d295998a9e0d6de344ecb80840ff4d2b8ceedbd52a448cc2782ed063fbd58aef12c8a0398 SHA512 (nvptx-newlib-aadc8eb0ec43b7cd0dd2dfb484bae63c8b05ef24.tar.xz) = 94f7089365296f7dfa485107b4143bebc850a81586f3460fd896bbbb6ba099a00217d4042133424fd2183b352132f4fd367e6a60599bdae2a26dfd48a77d0e04 SHA512 (nvptx-tools-c28050f60193b3b95a18866a96f03334e874e78f.tar.xz) = a688cb12cf805950a5abbb13b52f45c81dbee98e310b7ed57ae20e76dbfa5964a16270148374a6426d177db71909d28360490f091c86a5d19d4faa5127beeee1