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