commit:     dc2012eb0cdd942ced0fb98e4a6cdd52e4f4dfb3
Author:     Aric Belsito <lluixhi <AT> gmail <DOT> com>
AuthorDate: Wed Nov 29 20:33:57 2017 +0000
Commit:     Aric Belsito <lluixhi <AT> gmail <DOT> com>
CommitDate: Wed Nov 29 20:33:57 2017 +0000
URL:        https://gitweb.gentoo.org/proj/musl.git/commit/?id=dc2012eb

sys-devel/gcc: sync 7.x with upstream

add patch for ICE with GRAPHITE

 sys-devel/gcc/Manifest                      |   2 -
 sys-devel/gcc/files/gcc-7.1.0-pr80706.patch | 119 ----------------------------
 sys-devel/gcc/files/gcc-7.2.0-pr69728.patch |  26 ++++++
 sys-devel/gcc/gcc-7.1.0-r1.ebuild           |  32 --------
 sys-devel/gcc/gcc-7.2.0.ebuild              |   8 +-
 5 files changed, 30 insertions(+), 157 deletions(-)

diff --git a/sys-devel/gcc/Manifest b/sys-devel/gcc/Manifest
index 156bd96..1e19a7d 100644
--- a/sys-devel/gcc/Manifest
+++ b/sys-devel/gcc/Manifest
@@ -10,6 +10,4 @@ DIST gcc-5.4.0-uclibc-patches-1.0.tar.bz2 3731 SHA256 
a3145faa6c81c0753ba754b735
 DIST gcc-5.4.0.tar.bz2 95661481 SHA256 
608df76dec2d34de6558249d8af4cbee21eceddbcb580d666f7a5a583ca3303a SHA512 
2941cc950c8f2409a314df497631f9b0266211aa74746c1839c46e04f1c7c299afe2528d1ef16ea39def408a644ba48f97519ec7a7dd37d260c3e9423514265b
 WHIRLPOOL 
ec81c8143e48bc8d9d0bbdc0fa3ca553c805193f53ac46c86127b54565894780dd97281485e396a130567464c753f043458c8e450018c957813f50ff90a40708
 DIST gcc-6.4.0-patches-1.0.tar.bz2 7577 SHA256 
9c9b68c28e67be281c9bcec5d944b2a3439bab953dce08fd35a65b10f9dae3cd SHA512 
e649e334eec4deb7c261d808ed460413d78a2a4a672823d214c1e173a13bc314ce898fbf3674a7c7fe3151a089384ee0a7dee479bc8d005a06b65b39216bdf75
 WHIRLPOOL 
d7d9a80038fb939c26605d91eda9bc23070179bdf6ce597255c44f9d83f2603aae91d9890d2a445bce8c682708743021485f1415cea0b9b8f02dd9d982e36d3b
 DIST gcc-6.4.0.tar.xz 76156220 SHA256 
850bf21eafdfe5cd5f6827148184c08c4a0852a37ccf36ce69855334d2c914d4 SHA512 
02c60e54527c7adf584798d5251f8a0b80c93d5deafce82501b2c28e6692e0bd783927bbfc4bc527a863c0cccc025150a34740a9e29badb02d4b48e56a8aba90
 WHIRLPOOL 
136b282c6957877d2f463d83740fa65a4e7a346ac94e4baabea25cec41ae307f34409b1e518a22927821d564b8634a48978dc8e1d0b988999e924adcbf3f5cc9
-DIST gcc-7.1.0-patches-1.1.tar.bz2 6746 SHA256 
39d4a0c659cc361bd3c71fdc9b793bccfa2bce06ede65ac49b805d1e236fcc8e SHA512 
1bf95a505dc6c37bf6924bb69fd0670c8f3355b6690c94edf4a4248649accbd426575b40cb7a473dfb0ae09a924b05619e5c633384bae0293edb670cfd0d3a30
 WHIRLPOOL 
9682649fff62b56683637d25a58d11928342d99e52b2269f42369fd1d691208a7645802cb0d609ac30e20593ecdceb8cb1ab9b216963afe14db1b17ed43d5eb7
-DIST gcc-7.1.0.tar.bz2 84303533 SHA256 
8a8136c235f64c6fef69cac0d73a46a1a09bb250776a050aec8f9fc880bebc17 SHA512 
b5d952be9a10f0e0926bb2868877d10544039d6d2f35ba0a08f51231dd622a007650764a03e173194701467547789ad7d2d9cbc10adcdf118d619cdedbd14aec
 WHIRLPOOL 
1dce5f89d4110bacd7f65140a1dee7b1a4898682e2ae8621832bda6f101354d226743acf77974b5e97d861c6eb6c47637138987dfb6ba222ad81b751e80ff6e6
 DIST gcc-7.2.0.tar.xz 62312628 SHA256 
1cf7adf8ff4b5aa49041c8734bbcf1ad18cc4c94d0029aae0f4e48841088479a SHA512 
f853cd6530b4055d8d8289da74687cb4c6d5f363598d386332d31852b581bac76c3adb7d61889edec3b779f63d8646f0122840f12965ce4a4389ba535dbbb6e1
 WHIRLPOOL 
9503fb08731d94b5d79b182579f41992e9db16dba8a034cbfa8a2703a975185859e79c1e3f6094d14d08c7f5d7135c2ca5ffd8d6f7ae7820c20d4076fe5e9f65

diff --git a/sys-devel/gcc/files/gcc-7.1.0-pr80706.patch 
b/sys-devel/gcc/files/gcc-7.1.0-pr80706.patch
deleted file mode 100644
index 73572b2..0000000
--- a/sys-devel/gcc/files/gcc-7.1.0-pr80706.patch
+++ /dev/null
@@ -1,119 +0,0 @@
---- branches/gcc-7-branch/gcc/config/i386/sync.md      2017/04/20 09:50:13     
247016
-+++ branches/gcc-7-branch/gcc/config/i386/sync.md      2017/05/14 12:49:55     
248032
-@@ -25,6 +25,9 @@
-   UNSPEC_FILD_ATOMIC
-   UNSPEC_FIST_ATOMIC
- 
-+  UNSPEC_LDX_ATOMIC
-+  UNSPEC_STX_ATOMIC
-+
-   ;; __atomic support
-   UNSPEC_LDA
-   UNSPEC_STA
-@@ -199,9 +202,8 @@
-       }
-       else
-       {
--        adjust_reg_mode (tmp, DImode);
--        emit_move_insn (tmp, src);
--        emit_move_insn (mem, tmp);
-+        emit_insn (gen_loaddi_via_sse (tmp, src));
-+        emit_insn (gen_storedi_via_sse (mem, tmp));
-       }
- 
-       if (mem != dst)
-@@ -226,10 +228,12 @@
-   "operands[5] = gen_lowpart (DFmode, operands[1]);")
- 
- (define_peephole2
--  [(set (match_operand:DI 0 "sse_reg_operand")
--      (match_operand:DI 1 "memory_operand"))
-+  [(set (match_operand:DF 0 "sse_reg_operand")
-+      (unspec:DF [(match_operand:DI 1 "memory_operand")]
-+                 UNSPEC_LDX_ATOMIC))
-    (set (match_operand:DI 2 "memory_operand")
--      (match_dup 0))
-+      (unspec:DI [(match_dup 0)]
-+                 UNSPEC_STX_ATOMIC))
-    (set (match_operand:DF 3 "fp_register_operand")
-       (match_operand:DF 4 "memory_operand"))]
-   "!TARGET_64BIT
-@@ -301,7 +305,9 @@
-   rtx dst = operands[0], src = operands[1];
-   rtx mem = operands[2], tmp = operands[3];
- 
--  if (!SSE_REG_P (src))
-+  if (SSE_REG_P (src))
-+    emit_move_insn (dst, src);
-+  else
-     {
-       if (REG_P (src))
-       {
-@@ -313,16 +319,13 @@
-       {
-         emit_insn (gen_loaddi_via_fpu (tmp, src));
-         emit_insn (gen_storedi_via_fpu (dst, tmp));
--        DONE;
-       }
-       else
-       {
--        adjust_reg_mode (tmp, DImode);
--        emit_move_insn (tmp, src);
--        src = tmp;
-+        emit_insn (gen_loaddi_via_sse (tmp, src));
-+        emit_insn (gen_storedi_via_sse (dst, tmp));
-       }
-     }
--  emit_move_insn (dst, src);
-   DONE;
- })
- 
-@@ -344,10 +347,12 @@
- (define_peephole2
-   [(set (match_operand:DF 0 "memory_operand")
-       (match_operand:DF 1 "fp_register_operand"))
--   (set (match_operand:DI 2 "sse_reg_operand")
--      (match_operand:DI 3 "memory_operand"))
-+   (set (match_operand:DF 2 "sse_reg_operand")
-+      (unspec:DF [(match_operand:DI 3 "memory_operand")]
-+                 UNSPEC_LDX_ATOMIC))
-    (set (match_operand:DI 4 "memory_operand")
--      (match_dup 2))]
-+      (unspec:DI [(match_dup 2)]
-+                 UNSPEC_STX_ATOMIC))]
-   "!TARGET_64BIT
-    && peep2_reg_dead_p (3, operands[2])
-    && rtx_equal_p (operands[0], adjust_address_nv (operands[3], DFmode, 0))"
-@@ -382,6 +387,32 @@
-   [(set_attr "type" "fmov")
-    (set_attr "mode" "DI")])
- 
-+(define_insn "loaddi_via_sse"
-+  [(set (match_operand:DF 0 "register_operand" "=x")
-+      (unspec:DF [(match_operand:DI 1 "memory_operand" "m")]
-+                 UNSPEC_LDX_ATOMIC))]
-+  "TARGET_SSE"
-+{
-+  if (TARGET_SSE2)
-+    return "%vmovq\t{%1, %0|%0, %1}";
-+  return "movlps\t{%1, %0|%0, %1}";
-+}
-+  [(set_attr "type" "ssemov")
-+   (set_attr "mode" "DI")])
-+
-+(define_insn "storedi_via_sse"
-+  [(set (match_operand:DI 0 "memory_operand" "=m")
-+      (unspec:DI [(match_operand:DF 1 "register_operand" "x")]
-+                 UNSPEC_STX_ATOMIC))]
-+  "TARGET_SSE"
-+{
-+  if (TARGET_SSE2)
-+    return "%vmovq\t{%1, %0|%0, %1}";
-+  return "movlps\t{%1, %0|%0, %1}";
-+}
-+  [(set_attr "type" "ssemov")
-+   (set_attr "mode" "DI")])
-+
- (define_expand "atomic_compare_and_swap<mode>"
-   [(match_operand:QI 0 "register_operand")    ;; bool success output
-    (match_operand:SWI124 1 "register_operand")        ;; oldval output

diff --git a/sys-devel/gcc/files/gcc-7.2.0-pr69728.patch 
b/sys-devel/gcc/files/gcc-7.2.0-pr69728.patch
new file mode 100644
index 0000000..ca5eedc
--- /dev/null
+++ b/sys-devel/gcc/files/gcc-7.2.0-pr69728.patch
@@ -0,0 +1,26 @@
+diff -Naur gcc-7.2.0.orig/gcc/graphite-sese-to-poly.c 
gcc-7.2.0/gcc/graphite-sese-to-poly.c
+--- gcc-7.2.0.orig/gcc/graphite-sese-to-poly.c 2017-11-29 12:32:19.000188886 
-0800
++++ gcc-7.2.0/gcc/graphite-sese-to-poly.c      2017-11-29 12:32:35.858188584 
-0800
+@@ -1043,6 +1043,14 @@
+   if (empty < 0 || empty)
+     return empty < 0 ? isl_schedule_free (schedule) : schedule;
+ 
++  isl_union_set *domain = isl_schedule_get_domain (schedule);
++  /* We cannot apply an empty domain to pbbs in this loop so return early.  */
++  if (isl_union_set_is_empty (domain))
++    {
++      isl_union_set_free (domain);
++      return schedule;
++    }
++
+   isl_space *space = isl_set_get_space (iterators);
+   int loop_index = isl_space_dim (space, isl_dim_set) - 1;
+ 
+@@ -1063,7 +1071,6 @@
+   prefix = isl_multi_aff_set_tuple_id (prefix, isl_dim_out, label);
+ 
+   int n = isl_multi_aff_dim (prefix, isl_dim_in);
+-  isl_union_set *domain = isl_schedule_get_domain (schedule);
+   isl_multi_union_pw_aff *mupa = outer_projection_mupa (domain, n);
+   mupa = isl_multi_union_pw_aff_apply_multi_aff (mupa, prefix);
+   return isl_schedule_insert_partial_schedule (schedule, mupa);

diff --git a/sys-devel/gcc/gcc-7.1.0-r1.ebuild 
b/sys-devel/gcc/gcc-7.1.0-r1.ebuild
deleted file mode 100644
index c5194d1..0000000
--- a/sys-devel/gcc/gcc-7.1.0-r1.ebuild
+++ /dev/null
@@ -1,32 +0,0 @@
-# Copyright 1999-2017 Gentoo Foundation
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI="5"
-
-PATCH_VER="1.1"
-#UCLIBC_VER="1.0"
-
-inherit epatch toolchain
-
-KEYWORDS=""
-
-RDEPEND=""
-DEPEND="${RDEPEND}
-       elibc_glibc? ( >=sys-libs/glibc-2.13 )
-       >=${CATEGORY}/binutils-2.20"
-
-if [[ ${CATEGORY} != cross-* ]] ; then
-       PDEPEND="${PDEPEND} elibc_glibc? ( >=sys-libs/glibc-2.13 )"
-fi
-
-src_prepare() {
-       toolchain_src_prepare
-
-       # Upstream Patch
-       epatch "${FILESDIR}"/${PN}-7.1.0-pr80706.patch
-
-       if use elibc_musl || [[ ${CATEGORY} = cross-*-musl ]]; then
-               epatch "${FILESDIR}"/6.3.0/cpu_indicator.patch
-               epatch "${FILESDIR}"/7.1.0/posix_memalign.patch
-       fi
-}

diff --git a/sys-devel/gcc/gcc-7.2.0.ebuild b/sys-devel/gcc/gcc-7.2.0.ebuild
index 5eb4bef..035e93f 100644
--- a/sys-devel/gcc/gcc-7.2.0.ebuild
+++ b/sys-devel/gcc/gcc-7.2.0.ebuild
@@ -3,13 +3,13 @@
 
 EAPI="5"
 
-PATCH_GCC_VER="7.1.0"
 PATCH_VER="1.1"
+PATCH_GCC_VER="7.1.0"
 #UCLIBC_VER="1.0"
 
 inherit epatch toolchain
 
-KEYWORDS=""
+KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~m68k ~mips ~ppc ~ppc64 ~s390 
~sh ~sparc ~x86 ~amd64-fbsd ~x86-fbsd"
 
 RDEPEND=""
 DEPEND="${RDEPEND}
@@ -20,11 +20,11 @@ if [[ ${CATEGORY} != cross-* ]] ; then
        PDEPEND="${PDEPEND} elibc_glibc? ( >=sys-libs/glibc-2.13 )"
 fi
 
-
-
 src_prepare() {
        toolchain_src_prepare
 
+       epatch "${FILESDIR}"/gcc-7.2.0-pr69728.patch
+
        if use elibc_musl || [[ ${CATEGORY} = cross-*-musl ]]; then
                epatch "${FILESDIR}"/6.3.0/cpu_indicator.patch
                epatch "${FILESDIR}"/7.1.0/posix_memalign.patch

Reply via email to