From b4bb7ab1c74f8e1e5dc0849d4c2148b16074307d Mon Sep 17 00:00:00 2001 From: CentOS Sources Date: Nov 19 2015 16:04:04 +0000 Subject: import gcc-4.8.5-4.el7 --- diff --git a/.gcc.metadata b/.gcc.metadata index cdc1fdf..bc0d5cc 100644 --- a/.gcc.metadata +++ b/.gcc.metadata @@ -1,4 +1,4 @@ 85f620a26aabf6a934c44ca40a9799af0952f863 SOURCES/cloog-0.18.0.tar.gz 8263777994323f58bb81869354fb18c6ca32f88a SOURCES/fastjar-0.97.tar.gz -67cb44e56acd1a81e8641595b8ba300a50d5a04a SOURCES/gcc-4.8.3-20140911.tar.bz2 +500237a6ba14b8a56751f57e5957b40cefa9cb01 SOURCES/gcc-4.8.5-20150702.tar.bz2 d7936929c3937e03f09b64c3c54e49422fa8ddb3 SOURCES/isl-0.11.1.tar.bz2 diff --git a/.gitignore b/.gitignore index eb870f7..388b5e1 100644 --- a/.gitignore +++ b/.gitignore @@ -1,4 +1,4 @@ SOURCES/cloog-0.18.0.tar.gz SOURCES/fastjar-0.97.tar.gz -SOURCES/gcc-4.8.3-20140911.tar.bz2 +SOURCES/gcc-4.8.5-20150702.tar.bz2 SOURCES/isl-0.11.1.tar.bz2 diff --git a/SOURCES/gcc48-i386-libgomp.patch b/SOURCES/gcc48-i386-libgomp.patch index 45883a6..520561e 100644 --- a/SOURCES/gcc48-i386-libgomp.patch +++ b/SOURCES/gcc48-i386-libgomp.patch @@ -9,12 +9,3 @@ fi esac ;; -@@ -79,7 +79,7 @@ if test $enable_linux_futex = yes; then - config_path="linux/x86 linux posix" - case " ${CC} ${CFLAGS} " in - *" -m32 "*) -- XCFLAGS="${XCFLAGS} -march=i486 -mtune=i686" -+ XCFLAGS="${XCFLAGS} -march=i486 -mtune=generic" - ;; - esac - ;; diff --git a/SOURCES/gcc48-pr56493.patch b/SOURCES/gcc48-pr56493.patch deleted file mode 100644 index 87603db..0000000 --- a/SOURCES/gcc48-pr56493.patch +++ /dev/null @@ -1,76 +0,0 @@ -2013-06-17 Jakub Jelinek - - PR c++/56493 - * convert.c (convert_to_real, convert_to_expr, convert_to_complex): - Handle COMPOUND_EXPR. - - * c-c++-common/pr56493.c: New test. - ---- gcc/convert.c.jj 2013-05-13 09:44:53.000000000 +0200 -+++ gcc/convert.c 2013-06-16 12:16:13.754108523 +0200 -@@ -95,6 +95,15 @@ convert_to_real (tree type, tree expr) - enum built_in_function fcode = builtin_mathfn_code (expr); - tree itype = TREE_TYPE (expr); - -+ if (TREE_CODE (expr) == COMPOUND_EXPR) -+ { -+ tree t = convert_to_real (type, TREE_OPERAND (expr, 1)); -+ if (t == TREE_OPERAND (expr, 1)) -+ return expr; -+ return build2_loc (EXPR_LOCATION (expr), COMPOUND_EXPR, TREE_TYPE (t), -+ TREE_OPERAND (expr, 0), t); -+ } -+ - /* Disable until we figure out how to decide whether the functions are - present in runtime. */ - /* Convert (float)sqrt((double)x) where x is float into sqrtf(x) */ -@@ -366,6 +375,15 @@ convert_to_integer (tree type, tree expr - return error_mark_node; - } - -+ if (ex_form == COMPOUND_EXPR) -+ { -+ tree t = convert_to_integer (type, TREE_OPERAND (expr, 1)); -+ if (t == TREE_OPERAND (expr, 1)) -+ return expr; -+ return build2_loc (EXPR_LOCATION (expr), COMPOUND_EXPR, TREE_TYPE (t), -+ TREE_OPERAND (expr, 0), t); -+ } -+ - /* Convert e.g. (long)round(d) -> lround(d). */ - /* If we're converting to char, we may encounter differing behavior - between converting from double->char vs double->long->char. -@@ -854,6 +872,14 @@ convert_to_complex (tree type, tree expr - - if (TYPE_MAIN_VARIANT (elt_type) == TYPE_MAIN_VARIANT (subtype)) - return expr; -+ else if (TREE_CODE (expr) == COMPOUND_EXPR) -+ { -+ tree t = convert_to_complex (type, TREE_OPERAND (expr, 1)); -+ if (t == TREE_OPERAND (expr, 1)) -+ return expr; -+ return build2_loc (EXPR_LOCATION (expr), COMPOUND_EXPR, -+ TREE_TYPE (t), TREE_OPERAND (expr, 0), t); -+ } - else if (TREE_CODE (expr) == COMPLEX_EXPR) - return fold_build2 (COMPLEX_EXPR, type, - convert (subtype, TREE_OPERAND (expr, 0)), ---- gcc/testsuite/c-c++-common/pr56493.c.jj 2013-06-17 10:24:36.891659600 +0200 -+++ gcc/testsuite/c-c++-common/pr56493.c 2013-06-17 10:24:33.164720149 +0200 -@@ -0,0 +1,16 @@ -+/* PR c++/56493 */ -+/* { dg-do compile } */ -+/* { dg-options "-O2 -fdump-tree-gimple" } */ -+ -+unsigned long long bar (void); -+int x; -+ -+void -+foo (void) -+{ -+ x += bar (); -+} -+ -+/* Verify we narrow the addition from unsigned long long to unsigned int type. */ -+/* { dg-final { scan-tree-dump " (\[a-zA-Z._0-9]*) = \\(unsigned int\\) \[^;\n\r]*;.* (\[a-zA-Z._0-9]*) = \\(unsigned int\\) \[^;\n\r]*;.* = \\1 \\+ \\2;" "gimple" { target { ilp32 || lp64 } } } } */ -+/* { dg-final { cleanup-tree-dump "gimple" } } */ diff --git a/SOURCES/gcc48-pr63284.patch b/SOURCES/gcc48-pr63284.patch deleted file mode 100644 index 592e000..0000000 --- a/SOURCES/gcc48-pr63284.patch +++ /dev/null @@ -1,78 +0,0 @@ -2014-09-17 Jakub Jelinek - - PR debug/63284 - * tree-cfgcleanup.c (fixup_noreturn_call): Don't split block - if there are only debug stmts after the noreturn call, instead - remove the debug stmts. - - * gcc.dg/pr63284.c: New test. - ---- gcc/tree-cfgcleanup.c (revision 215332) -+++ gcc/tree-cfgcleanup.c (revision 215333) -@@ -498,7 +498,20 @@ fixup_noreturn_call (gimple stmt) - - /* First split basic block if stmt is not last. */ - if (stmt != gsi_stmt (gsi_last_bb (bb))) -- split_block (bb, stmt); -+ { -+ if (stmt == gsi_stmt (gsi_last_nondebug_bb (bb))) -+ { -+ /* Don't split if there are only debug stmts -+ after stmt, that can result in -fcompare-debug -+ failures. Remove the debug stmts instead, -+ they should be all unreachable anyway. */ -+ gimple_stmt_iterator gsi = gsi_for_stmt (stmt); -+ for (gsi_next (&gsi); !gsi_end_p (gsi); ) -+ gsi_remove (&gsi, true); -+ } -+ else -+ split_block (bb, stmt); -+ } - - changed |= remove_fallthru_edge (bb->succs); - ---- gcc/testsuite/gcc.dg/pr63284.c (revision 0) -+++ gcc/testsuite/gcc.dg/pr63284.c (revision 215333) -@@ -0,0 +1,42 @@ -+/* PR debug/63284 */ -+/* { dg-do compile } */ -+/* { dg-options "-O2 -fcompare-debug" } */ -+ -+int a[10], *b, *d, c, f; -+int fn2 (void); -+void fn3 (void); -+void fn4 (int); -+ -+static int -+fn1 (int x) -+{ -+ int e = a[0]; -+ if (e) -+ return 1; -+ if (b) -+ switch (x) -+ { -+ case 1: -+ if (d) -+ e = fn2 (); -+ else -+ fn3 (); -+ break; -+ case 0: -+ if (d) -+ { -+ fn3 (); -+ if (c) -+ fn4 (1); -+ } -+ else -+ fn4 (0); -+ } -+ return e; -+} -+ -+void -+fn6 (void) -+{ -+ f = fn1 (0); -+} diff --git a/SOURCES/gcc48-pr63341.patch b/SOURCES/gcc48-pr63341.patch deleted file mode 100644 index 0d1d249..0000000 --- a/SOURCES/gcc48-pr63341.patch +++ /dev/null @@ -1,224 +0,0 @@ -2014-09-25 Jakub Jelinek - - PR tree-optimization/63341 - * tree-vectorizer.h (vect_create_data_ref_ptr, - vect_create_addr_base_for_vector_ref): Add another tree argument - defaulting to NULL_TREE. - * tree-vect-data-refs.c (vect_create_data_ref_ptr): Add byte_offset - argument, pass it down to vect_create_addr_base_for_vector_ref. - (vect_create_addr_base_for_vector_ref): Add byte_offset argument, - add that to base_offset too if non-NULL. - * tree-vect-stmts.c (vectorizable_load): Add byte_offset variable, - for dr_explicit_realign_optimized set it to vector byte size - - 1 instead of setting offset, pass byte_offset down to - vect_create_data_ref_ptr. - - * gcc.dg/vect/pr63341-1.c: New test. - * gcc.dg/vect/pr63341-2.c: New test. - ---- gcc/tree-vectorizer.h (revision 215586) -+++ gcc/tree-vectorizer.h (revision 215587) -@@ -931,7 +931,8 @@ extern tree vect_check_gather (gimple, l - extern bool vect_analyze_data_refs (loop_vec_info, bb_vec_info, int *); - extern tree vect_create_data_ref_ptr (gimple, tree, struct loop *, tree, - tree *, gimple_stmt_iterator *, -- gimple *, bool, bool *); -+ gimple *, bool, bool *, -+ tree = NULL_TREE); - extern tree bump_vector_ptr (tree, gimple, gimple_stmt_iterator *, gimple, tree); - extern tree vect_create_destination_var (tree, tree); - extern bool vect_grouped_store_supported (tree, unsigned HOST_WIDE_INT); -@@ -949,7 +950,8 @@ extern void vect_record_grouped_load_vec - extern int vect_get_place_in_interleaving_chain (gimple, gimple); - extern tree vect_get_new_vect_var (tree, enum vect_var_kind, const char *); - extern tree vect_create_addr_base_for_vector_ref (gimple, gimple_seq *, -- tree, struct loop *); -+ tree, struct loop *, -+ tree = NULL_TREE); - - /* In tree-vect-loop.c. */ - /* FORNOW: Used in tree-parloops.c. */ ---- gcc/tree-vect-data-refs.c (revision 215586) -+++ gcc/tree-vect-data-refs.c (revision 215587) -@@ -3553,6 +3553,9 @@ vect_get_new_vect_var (tree type, enum v - is as follows: - if LOOP=i_loop: &in (relative to i_loop) - if LOOP=j_loop: &in+i*2B (relative to j_loop) -+ BYTE_OFFSET: Optional, defaulted to NULL. If supplied, it is added to the -+ initial address. Unlike OFFSET, which is number of elements to -+ be added, BYTE_OFFSET is measured in bytes. - - Output: - 1. Return an SSA_NAME whose value is the address of the memory location of -@@ -3566,7 +3569,8 @@ tree - vect_create_addr_base_for_vector_ref (gimple stmt, - gimple_seq *new_stmt_list, - tree offset, -- struct loop *loop) -+ struct loop *loop, -+ tree byte_offset) - { - stmt_vec_info stmt_info = vinfo_for_stmt (stmt); - struct data_reference *dr = STMT_VINFO_DATA_REF (stmt_info); -@@ -3628,6 +3632,16 @@ vect_create_addr_base_for_vector_ref (gi - base_offset = force_gimple_operand (base_offset, &seq, false, tmp); - gimple_seq_add_seq (new_stmt_list, seq); - } -+ if (byte_offset) -+ { -+ tree tmp = create_tmp_var (sizetype, "offset"); -+ -+ byte_offset = fold_convert (sizetype, byte_offset); -+ base_offset = fold_build2 (PLUS_EXPR, sizetype, -+ base_offset, byte_offset); -+ base_offset = force_gimple_operand (base_offset, &seq, false, tmp); -+ gimple_seq_add_seq (new_stmt_list, seq); -+ } - - /* base + base_offset */ - if (loop_vinfo) -@@ -3692,6 +3706,10 @@ vect_create_addr_base_for_vector_ref (gi - 5. BSI: location where the new stmts are to be placed if there is no loop - 6. ONLY_INIT: indicate if ap is to be updated in the loop, or remain - pointing to the initial address. -+ 7. BYTE_OFFSET (optional, defaults to NULL): a byte offset to be added -+ to the initial address accessed by the data-ref in STMT. This is -+ similar to OFFSET, but OFFSET is counted in elements, while BYTE_OFFSET -+ in bytes. - - Output: - 1. Declare a new ptr to vector_type, and have it point to the base of the -@@ -3705,6 +3723,8 @@ vect_create_addr_base_for_vector_ref (gi - initial_address = &a[init]; - if OFFSET is supplied: - initial_address = &a[init + OFFSET]; -+ if BYTE_OFFSET is supplied: -+ initial_address = &a[init] + BYTE_OFFSET; - - Return the initial_address in INITIAL_ADDRESS. - -@@ -3722,7 +3742,7 @@ tree - vect_create_data_ref_ptr (gimple stmt, tree aggr_type, struct loop *at_loop, - tree offset, tree *initial_address, - gimple_stmt_iterator *gsi, gimple *ptr_incr, -- bool only_init, bool *inv_p) -+ bool only_init, bool *inv_p, tree byte_offset) - { - const char *base_name; - stmt_vec_info stmt_info = vinfo_for_stmt (stmt); -@@ -3881,10 +3901,10 @@ vect_create_data_ref_ptr (gimple stmt, t - /* (2) Calculate the initial address of the aggregate-pointer, and set - the aggregate-pointer to point to it before the loop. */ - -- /* Create: (&(base[init_val+offset]) in the loop preheader. */ -+ /* Create: (&(base[init_val+offset]+byte_offset) in the loop preheader. */ - - new_temp = vect_create_addr_base_for_vector_ref (stmt, &new_stmt_list, -- offset, loop); -+ offset, loop, byte_offset); - if (new_stmt_list) - { - if (pe) ---- gcc/tree-vect-stmts.c (revision 215586) -+++ gcc/tree-vect-stmts.c (revision 215587) -@@ -4319,6 +4319,7 @@ vectorizable_load (gimple stmt, gimple_s - int i, j, group_size; - tree msq = NULL_TREE, lsq; - tree offset = NULL_TREE; -+ tree byte_offset = NULL_TREE; - tree realignment_token = NULL_TREE; - gimple phi = NULL; - vec dr_chain = vNULL; -@@ -4934,7 +4935,8 @@ vectorizable_load (gimple stmt, gimple_s - if (alignment_support_scheme == dr_explicit_realign_optimized) - { - phi = SSA_NAME_DEF_STMT (msq); -- offset = size_int (TYPE_VECTOR_SUBPARTS (vectype) - 1); -+ byte_offset = size_binop (MINUS_EXPR, TYPE_SIZE_UNIT (vectype), -+ size_one_node); - } - } - else -@@ -4955,7 +4957,8 @@ vectorizable_load (gimple stmt, gimple_s - if (j == 0) - dataref_ptr = vect_create_data_ref_ptr (first_stmt, aggr_type, at_loop, - offset, &dummy, gsi, -- &ptr_incr, false, &inv_p); -+ &ptr_incr, false, &inv_p, -+ byte_offset); - else - dataref_ptr = bump_vector_ptr (dataref_ptr, ptr_incr, gsi, stmt, - TYPE_SIZE_UNIT (aggr_type)); ---- gcc/testsuite/gcc.dg/vect/pr63341-1.c (revision 0) -+++ gcc/testsuite/gcc.dg/vect/pr63341-1.c (revision 215587) -@@ -0,0 +1,32 @@ -+/* PR tree-optimization/63341 */ -+/* { dg-do run } */ -+ -+#include "tree-vect.h" -+ -+typedef union U { unsigned short s; unsigned char c; } __attribute__((packed)) U; -+struct S { char e __attribute__((aligned (64))); U s[32]; }; -+struct S t = {0, {{1}, {2}, {3}, {4}, {5}, {6}, {7}, {8}, -+ {9}, {10}, {11}, {12}, {13}, {14}, {15}, {16}, -+ {17}, {18}, {19}, {20}, {21}, {22}, {23}, {24}, -+ {25}, {26}, {27}, {28}, {29}, {30}, {31}, {32}}}; -+unsigned short d[32] = { 1 }; -+ -+__attribute__((noinline, noclone)) void -+foo () -+{ -+ int i; -+ for (i = 0; i < 32; i++) -+ d[i] = t.s[i].s; -+ if (__builtin_memcmp (d, t.s, sizeof d)) -+ abort (); -+} -+ -+int -+main () -+{ -+ check_vect (); -+ foo (); -+ return 0; -+} -+ -+/* { dg-final { cleanup-tree-dump "vect" } } */ ---- gcc/testsuite/gcc.dg/vect/pr63341-2.c (revision 0) -+++ gcc/testsuite/gcc.dg/vect/pr63341-2.c (revision 215587) -@@ -0,0 +1,35 @@ -+/* PR tree-optimization/63341 */ -+/* { dg-do run } */ -+ -+#include "tree-vect.h" -+ -+typedef union U { unsigned short s; unsigned char c; } __attribute__((packed)) U; -+struct S { char e __attribute__((aligned (64))); U s[32]; }; -+struct S t = {0, {{0x5010}, {0x5111}, {0x5212}, {0x5313}, {0x5414}, {0x5515}, {0x5616}, {0x5717}, -+ {0x5818}, {0x5919}, {0x5a1a}, {0x5b1b}, {0x5c1c}, {0x5d1d}, {0x5e1e}, {0x5f1f}, -+ {0x6020}, {0x6121}, {0x6222}, {0x6323}, {0x6424}, {0x6525}, {0x6626}, {0x6727}, -+ {0x6828}, {0x6929}, {0x6a2a}, {0x6b2b}, {0x6c2c}, {0x6d2d}, {0x6e2e}, {0x6f2f}}}; -+unsigned short d[32] = { 1 }; -+ -+__attribute__((noinline, noclone)) void -+foo () -+{ -+ int i; -+ for (i = 0; i < 32; i++) -+ d[i] = t.s[i].s + 4; -+ for (i = 0; i < 32; i++) -+ if (d[i] != t.s[i].s + 4) -+ abort (); -+ else -+ asm volatile ("" : : : "memory"); -+} -+ -+int -+main () -+{ -+ check_vect (); -+ foo (); -+ return 0; -+} -+ -+/* { dg-final { cleanup-tree-dump "vect" } } */ diff --git a/SOURCES/gcc48-rh1243366.patch b/SOURCES/gcc48-rh1243366.patch new file mode 100644 index 0000000..da137f3 --- /dev/null +++ b/SOURCES/gcc48-rh1243366.patch @@ -0,0 +1,35 @@ +2015-07-15 Jonathan Wakely + + PR libstdc++/57394 + * include/std/streambuf (basic_streambuf(const basic_streambuf&)): + Fix initializer for _M_out_end. + (operator=(const basic_streambuf&)): Replace stub with actual + implementation. + +--- libstdc++-v3/include/std/streambuf ++++ libstdc++-v3/include/std/streambuf +@@ -802,12 +802,22 @@ + basic_streambuf(const basic_streambuf& __sb) + : _M_in_beg(__sb._M_in_beg), _M_in_cur(__sb._M_in_cur), + _M_in_end(__sb._M_in_end), _M_out_beg(__sb._M_out_beg), +- _M_out_cur(__sb._M_out_cur), _M_out_end(__sb._M_out_cur), ++ _M_out_cur(__sb._M_out_cur), _M_out_end(__sb._M_out_end), + _M_buf_locale(__sb._M_buf_locale) + { } + + basic_streambuf& +- operator=(const basic_streambuf&) { return *this; }; ++ operator=(const basic_streambuf& __sb) ++ { ++ _M_in_beg = __sb._M_in_beg; ++ _M_in_cur = __sb._M_in_cur; ++ _M_in_end = __sb._M_in_end; ++ _M_out_beg = __sb._M_out_beg; ++ _M_out_cur = __sb._M_out_cur; ++ _M_out_end = __sb._M_out_end; ++ _M_buf_locale = __sb._M_buf_locale; ++ return *this; ++ }; + }; + + // Explicit specialization declarations, defined in src/streambuf.cc. diff --git a/SOURCES/gcc48-sparc-config-detection.patch b/SOURCES/gcc48-sparc-config-detection.patch index 97fed22..b669a5c 100644 --- a/SOURCES/gcc48-sparc-config-detection.patch +++ b/SOURCES/gcc48-sparc-config-detection.patch @@ -1,15 +1,15 @@ --- gcc/config.gcc.jj 2008-04-24 15:42:46.000000000 -0500 +++ gcc/config.gcc 2008-04-24 15:44:51.000000000 -0500 -@@ -2421,7 +2421,7 @@ sparc-*-rtems*) +@@ -2478,7 +2478,7 @@ sparc-*-rtems*) tm_file="${tm_file} dbxelf.h elfos.h sparc/sysv4.h sparc/sp-elf.h sparc/rtemself.h rtems.h newlib-stdint.h" - tmake_file="sparc/t-sparc sparc/t-elf sparc/t-rtems t-rtems" + tmake_file="sparc/t-sparc sparc/t-rtems t-rtems" ;; -sparc-*-linux*) +sparc-*-linux* | sparcv9-*-linux*) tm_file="${tm_file} dbxelf.h elfos.h sparc/sysv4.h gnu-user.h linux.h glibc-stdint.h sparc/tso.h" extra_options="${extra_options} sparc/long-double-switch.opt" case ${target} in -@@ -2474,7 +2474,7 @@ sparc64-*-rtems*) +@@ -2532,7 +2532,7 @@ sparc64-*-rtems*) extra_options="${extra_options}" tmake_file="${tmake_file} sparc/t-sparc sparc/t-rtems-64 t-rtems" ;; diff --git a/SOURCES/gcc48-test-compat-Wno-abi.patch b/SOURCES/gcc48-test-compat-Wno-abi.patch deleted file mode 100644 index cc2b74c..0000000 --- a/SOURCES/gcc48-test-compat-Wno-abi.patch +++ /dev/null @@ -1,23 +0,0 @@ -2014-09-26 Jakub Jelinek - - * g++.dg/compat/struct-layout-1_generate.c: Add -Wno-abi - to default options. - ---- gcc/testsuite/g++.dg/compat/struct-layout-1_generate.c (revision 215636) -+++ gcc/testsuite/g++.dg/compat/struct-layout-1_generate.c (revision 215637) -@@ -1,5 +1,5 @@ - /* Structure layout test generator. -- Copyright (C) 2004, 2005, 2007, 2008, 2009, 2011, 2012 -+ Copyright (C) 2004-2014 - Free Software Foundation, Inc. - Contributed by Jakub Jelinek . - -@@ -44,7 +44,7 @@ along with GCC; see the file COPYING3. - #endif - - const char *dg_options[] = { --"/* { dg-options \"%s-I%s\" } */\n", -+"/* { dg-options \"%s-I%s -Wno-abi\" } */\n", - "/* { dg-options \"%s-I%s -mno-mmx -Wno-abi\" { target i?86-*-* x86_64-*-* } } */\n", - "/* { dg-options \"%s-I%s -fno-common\" { target hppa*-*-hpux* powerpc*-*-darwin* *-*-mingw32* *-*-cygwin* } } */\n", - "/* { dg-options \"%s-I%s -mno-mmx -fno-common -Wno-abi\" { target i?86-*-darwin* x86_64-*-darwin* i?86-*-mingw32* x86_64-*-mingw32* i?86-*-cygwin* } } */\n", diff --git a/SPECS/gcc.spec b/SPECS/gcc.spec index fa0f6e2..d243c09 100644 --- a/SPECS/gcc.spec +++ b/SPECS/gcc.spec @@ -1,8 +1,8 @@ -%global DATE 20140911 -%global SVNREV 215159 +%global DATE 20150702 +%global SVNREV 225304 # 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 9 +%global gcc_release 4 %global _unpackaged_files_terminate_build 0 %global _performance_build 1 %global multilib_64_archs sparc64 ppc64 ppc64p7 s390x x86_64 @@ -76,9 +76,9 @@ Name: gcc %if 0%{?rhel} == 7 %global gcc_version 4.8.2 %else -%global gcc_version 4.8.3 +%global gcc_version 4.8.5 %endif -Version: 4.8.3 +Version: 4.8.5 Release: %{gcc_release}%{?dist} %if "%{version}" != "%{gcc_version}" %define gcc_provides %{gcc_version}-16%{?dist} @@ -210,17 +210,14 @@ Patch10: gcc48-pr38757.patch Patch11: gcc48-libstdc++-docs.patch Patch12: gcc48-no-add-needed.patch Patch13: gcc48-pr56564.patch -Patch14: gcc48-pr56493.patch -Patch15: gcc48-color-auto.patch -Patch16: gcc48-pr28865.patch -Patch17: gcc48-libgo-p224.patch -Patch18: gcc48-pr60010.patch -Patch19: gcc48-aarch64-ada.patch -Patch20: gcc48-aarch64-async-unw-tables.patch -Patch21: gcc48-aarch64-unwind-opt.patch -Patch22: gcc48-pr63341.patch -Patch23: gcc48-pr63284.patch -Patch24: gcc48-test-compat-Wno-abi.patch +Patch14: gcc48-color-auto.patch +Patch15: gcc48-pr28865.patch +Patch16: gcc48-libgo-p224.patch +Patch17: gcc48-pr60010.patch +Patch18: gcc48-aarch64-ada.patch +Patch19: gcc48-aarch64-async-unw-tables.patch +Patch20: gcc48-aarch64-unwind-opt.patch +Patch21: gcc48-rh1243366.patch Patch1000: fastjar-0.97-segfault.patch Patch1001: fastjar-0.97-len1.patch @@ -906,22 +903,19 @@ package or when debugging this package. %endif %patch12 -p0 -b .no-add-needed~ %patch13 -p0 -b .pr56564~ -%patch14 -p0 -b .pr56493~ %if 0%{?fedora} >= 20 || 0%{?rhel} >= 7 -%patch15 -p0 -b .color-auto~ +%patch14 -p0 -b .color-auto~ %endif -%patch16 -p0 -b .pr28865~ -%patch17 -p0 -b .libgo-p224~ +%patch15 -p0 -b .pr28865~ +%patch16 -p0 -b .libgo-p224~ rm -f libgo/go/crypto/elliptic/p224{,_test}.go -%patch18 -p0 -b .pr60010~ +%patch17 -p0 -b .pr60010~ %ifarch aarch64 -%patch19 -p0 -b .aarch64-ada~ +%patch18 -p0 -b .aarch64-ada~ %endif -%patch20 -p0 -b .aarch64-async-unw-tables~ -%patch21 -p0 -b .aarch64-unwind-opt~ -%patch22 -p0 -b .pr63341~ -%patch23 -p0 -b .pr63284~ -%patch24 -p0 -b .test-compat-Wno-abi~ +%patch19 -p0 -b .aarch64-async-unw-tables~ +%patch20 -p0 -b .aarch64-unwind-opt~ +%patch21 -p0 -b .rh1243366~ %if 0%{?_enable_debug_packages} cat > split-debuginfo.sh <<\EOF @@ -992,7 +986,7 @@ tar xjf %{SOURCE10} %patch1200 -p0 -b .cloog-ppc64le-config~ -sed -i -e 's/4\.8\.4/4.8.3/' gcc/BASE-VER +sed -i -e 's/4\.8\.5/4.8.5/' gcc/BASE-VER echo 'Red Hat %{version}-%{gcc_release}' > gcc/DEV-PHASE %if 0%{?fedora} >= 16 || 0%{?rhel} >= 7 @@ -1223,7 +1217,7 @@ CC="$CC" CFLAGS="$OPT_FLAGS" \ --with-long-double-128 \ %endif %ifarch ppc64le - --disable-multilib \ + --enable-targets=powerpcle-linux --disable-multilib \ %endif %ifarch sparc --disable-linux-futex \ @@ -3363,8 +3357,72 @@ fi %{_prefix}/libexec/gcc/%{gcc_target_platform}/%{gcc_version}/plugin %changelog +* Wed Jul 15 2015 Jakub Jelinek 4.8.5-4 +- fix up basic_streambuf copy constructor and assignment operator + (#1243366) + +* Thu Jul 2 2015 Jakub Jelinek 4.8.5-3 +- backport aarch64 crc enablement - -mcpu=generic+crc (#1179935) +- rebuild against fixed binutils to fix up systemtap markers on aarch64 + (#1238462) + +* Wed Jul 1 2015 Jakub Jelinek 4.8.5-2 +- add --enable-targets=powerpcle-linux on ppc64le (#1237363) + +* Tue Jun 23 2015 Jakub Jelinek 4.8.5-1 +- update from the 4.8 branch (#1230103) + - GCC 4.8.5 release + - fix -imacros handling (#1004526, PR c/57653) + - fix up IPA type handling (#1217267, PRs ipa/63551, ipa/64153) + - add PowerPC analyze swaps optimization pass (#1208103, #1200336) + - fix PowerPC vsx_extract_* patterns (#1206341) + - fix PowerPC -mcrypto handling (#1200335) + - Power8 unaligned vectorization improvements (#1199221, PR target/65456) + - PRs ada/47500, ada/63225, bootstrap/64213, c++/56710, c++/58624, + c++/63415, c++/63455, c++/64251, c++/64297, c++/64487, c++/65721, + c++/65727, c/52769, c/61553, c/64766, debug/63342, debug/65549, + fortran/56674, fortran/56867, fortran/57023, fortran/58813, + fortran/59016, fortran/59024, fortran/59488, fortran/60898, + fortran/61138, fortran/61407, fortran/63733, fortran/63744, + fortran/63938, fortran/64244, fortran/64528, fortran/65024, + gcov-profile/64634, inline-asm/63282, ipa/59626, ipa/63838, + libfortran/63589, libgfortran/59513, libgfortran/60956, libgomp/61200, + libstdc++/57440, libstdc++/59603, libstdc++/61947, libstdc++/63449, + libstdc++/63840, libstdc++/65279, libstdc++/65543, lto/65015, + lto/65193, middle-end/43631, middle-end/56917, middle-end/57748, + middle-end/58624, middle-end/59990, middle-end/63608, + middle-end/63665, middle-end/63704, middle-end/64067, + middle-end/64111, middle-end/64199, middle-end/64225, + middle-end/65409, middle-end/65680, middle-end/66133, + middle-end/66251, pch/65550, preprocessor/60436, + rtl-optimization/61058, rtl-optimization/63475, + rtl-optimization/63483, rtl-optimization/63659, + rtl-optimization/64037, rtl-optimization/64557, sanitizer/64265, + target/49423, target/52941, target/53988, target/55351, target/56846, + target/59593, target/60111, target/61413, target/62218, target/62642, + target/63335, target/63428, target/63673, target/63947, target/64113, + target/64115, target/64304, target/64358, target/64387, target/64409, + target/64452, target/64453, target/64479, target/64513, target/64579, + target/64580, target/64795, target/64882, target/64979, target/65138, + target/65163, target/65196, target/65286, target/65368, target/65787, + target/65849, target/66140, target/66148, target/66215, target/66275, + target/66470, target/66474, tree-optimization/59124, + tree-optimization/60656, tree-optimization/61634, + tree-optimization/61686, tree-optimization/61969, + tree-optimization/62031, tree-optimization/62167, + tree-optimization/63375, tree-optimization/63379, + tree-optimization/63551, tree-optimization/63593, + tree-optimization/63605, tree-optimization/63841, + tree-optimization/63844, tree-optimization/64269, + tree-optimization/64277, tree-optimization/64493, + tree-optimization/64495, tree-optimization/64563, + tree-optimization/65063, tree-optimization/65388, + tree-optimization/65518, tree-optimization/66123, + tree-optimization/66233, tree-optimization/66251, + tree-optimization/66272 + * Fri Nov 14 2014 Richard Henderson 4.8.3-9 -- Enable Ada for ppc64le (#1162196) +- enable Ada for ppc64le (#1162196) * Fri Sep 26 2014 Jakub Jelinek 4.8.3-8 - fix PowerPC unaligned vectorization bug (#1146871,