[gcc] 4.8.0-0.15
Jakub Jelinek
jakub at fedoraproject.org
Mon Mar 4 12:47:35 UTC 2013
commit 2bea4b26c1cc060c0ab0b5077863f6c97824cd2f
Author: Jakub Jelinek <jakub at redhat.com>
Date: Mon Mar 4 13:47:31 2013 +0100
4.8.0-0.15
.gitignore | 1 +
gcc.spec | 38 ++-
gcc48-asan-speedup.patch | 535 ---------------------------------------------
gcc48-pr56258.patch | 81 -------
gcc48-pr56265.patch | 132 -----------
gcc48-pr56405.patch | 36 ---
gcc48-pr56424.patch | 57 +++++
gcc48-pr56509.patch | 92 ++++++++
gcc48-unused-locals.patch | 297 -------------------------
sources | 2 +-
10 files changed, 176 insertions(+), 1095 deletions(-)
---
diff --git a/.gitignore b/.gitignore
index 7f5d205..590bfe1 100644
--- a/.gitignore
+++ b/.gitignore
@@ -63,3 +63,4 @@
/gcc-4.8.0-20130213.tar.bz2
/gcc-4.8.0-20130215.tar.bz2
/gcc-4.8.0-20130220.tar.bz2
+/gcc-4.8.0-20130304.tar.bz2
diff --git a/gcc.spec b/gcc.spec
index 8861297..2a71597 100644
--- a/gcc.spec
+++ b/gcc.spec
@@ -1,9 +1,9 @@
-%global DATE 20130220
-%global SVNREV 196173
+%global DATE 20130304
+%global SVNREV 196430
%global gcc_version 4.8.0
# 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.14
+%global gcc_release 0.15
%global _unpackaged_files_terminate_build 0
%global multilib_64_archs sparc64 ppc64 s390x x86_64
%ifarch %{ix86} x86_64 ia64 ppc ppc64 alpha
@@ -194,11 +194,8 @@ Patch10: gcc48-pr38757.patch
Patch11: gcc48-libstdc++-docs.patch
Patch12: gcc48-no-add-needed.patch
Patch13: gcc48-pr55608.patch
-Patch14: gcc48-asan-speedup.patch
-Patch15: gcc48-pr56258.patch
-Patch16: gcc48-pr56405.patch
-Patch17: gcc48-unused-locals.patch
-Patch18: gcc48-pr56265.patch
+Patch14: gcc48-pr56424.patch
+Patch15: gcc48-pr56509.patch
Patch1000: fastjar-0.97-segfault.patch
Patch1001: fastjar-0.97-len1.patch
@@ -751,11 +748,8 @@ package or when debugging this package.
%endif
%patch12 -p0 -b .no-add-needed~
%patch13 -p0 -b .pr55608~
-%patch14 -p0 -b .asan-speedup~
-%patch15 -p0 -b .pr56258~
-%patch16 -p0 -b .pr56405~
-%patch17 -p0 -b .unused-locals~
-%patch18 -p0 -b .pr56265~
+%patch14 -p0 -b .pr56424~
+%patch15 -p0 -b .pr56509~
%if 0%{?_enable_debug_packages}
cat > split-debuginfo.sh <<\EOF
@@ -2979,6 +2973,24 @@ fi
%{_prefix}/libexec/gcc/%{gcc_target_platform}/%{gcc_version}/plugin
%changelog
+* Mon Mar 4 2013 Jakub Jelinek <jakub at redhat.com> 4.8.0-0.15
+- updated from trunk
+ - PRs c++/10291, c++/40405, c++/52688, c++/55632, c++/55813, c++/56243,
+ c++/56358, c++/56359, c++/56377, c++/56395, c++/56403, c++/56419,
+ c++/56438, c++/56481, fortran/54730, fortran/56385, fortran/56416,
+ fortran/56477, fortran/56491, libfortran/30162, libstdc++/56011,
+ libstdc++/56012, middle-end/45472, middle-end/56077,
+ middle-end/56108, middle-end/56420, middle-end/56461,
+ rtl-optimization/50339, rtl-optimization/56466, sanitizer/56393,
+ sanitizer/56454, target/48901, target/52500, target/52501,
+ target/52550, target/54639, target/54640, target/54662, target/56444,
+ target/56445, target/56455, testsuite/52641, tree-optimization/55481,
+ tree-optimization/56175, tree-optimization/56294,
+ tree-optimization/56310, tree-optimization/56415,
+ tree-optimization/56426, tree-optimization/56443,
+ tree-optimization/56448
+- fnsplit fix (PR tree-optimization/56424)
+
* Wed Feb 20 2013 Jakub Jelinek <jakub at redhat.com> 4.8.0-0.14
- updated from trunk
- PRs asan/56330, c++/51242, c++/54276, c++/56373, libquadmath/56379,
diff --git a/gcc48-pr56424.patch b/gcc48-pr56424.patch
new file mode 100644
index 0000000..4d4aff5
--- /dev/null
+++ b/gcc48-pr56424.patch
@@ -0,0 +1,57 @@
+2013-03-04 Eric Botcazou <ebotcazou at adacore.com>
+
+ PR tree-optimization/56424
+ * ipa-split.c (split_function): Do not set the RSO flag if result is
+ not by reference and its type is not a register type.
+
+ * gcc.dg/pr56424.c: New test.
+
+--- gcc/ipa-split.c (revision 196253)
++++ gcc/ipa-split.c (working copy)
+@@ -1309,7 +1309,9 @@ split_function (struct split_point *spli
+ so return slot optimization is always possible. Moreover this is
+ required to make DECL_BY_REFERENCE work. */
+ if (aggregate_value_p (DECL_RESULT (current_function_decl),
+- TREE_TYPE (current_function_decl)))
++ TREE_TYPE (current_function_decl))
++ && (!is_gimple_reg_type (TREE_TYPE (DECL_RESULT (current_function_decl)))
++ || DECL_BY_REFERENCE (DECL_RESULT (current_function_decl))))
+ gimple_call_set_return_slot_opt (call, true);
+
+ /* Update return value. This is bit tricky. When we do not return,
+--- gcc/testsuite/gcc.dg/pr56424.c 2013-02-13 21:50:57.150673158 +0100
++++ gcc/testsuite/gcc.dg/pr56424.c 2013-03-04 12:59:24.133888683 +0100
+@@ -0,0 +1,33 @@
++/* PR tree-optimization/56424 */
++
++/* { dg-do compile } */
++/* { dg-options "-O2 -fexceptions -fnon-call-exceptions" } */
++
++extern long double cosl (long double);
++extern long double sinl (long double);
++extern long double reml (long double, long double);
++
++long double my_cos (long double arg)
++{
++ return cosl (arg);
++}
++
++long double my_sin (long double arg)
++{
++ if (__builtin_fabs (arg) < 1.0)
++ return arg;
++
++ return sinl (arg);
++}
++
++long double my_cot (long double arg, long double cycle)
++{
++ long double t = reml (arg, cycle);
++ return my_cos (t) / my_sin (t);
++}
++
++long double my_tan (long double arg, long double cycle)
++{
++ long double t = reml (arg, cycle);
++ return my_sin (t) / my_cos (t);
++}
diff --git a/gcc48-pr56509.patch b/gcc48-pr56509.patch
new file mode 100644
index 0000000..7cf6839
--- /dev/null
+++ b/gcc48-pr56509.patch
@@ -0,0 +1,92 @@
+2013-03-04 Jakub Jelinek <jakub at redhat.com>
+
+ PR bootstrap/56509
+ * opts.c (opts_obstack, opts_concat): Moved to...
+ * opts-common.c (opts_obstack, opts_concat): ... here.
+
+--- gcc/opts-common.c.jj 2013-02-27 08:27:26.000000000 +0100
++++ gcc/opts-common.c 2013-03-04 10:02:58.016096542 +0100
+@@ -692,6 +692,40 @@ decode_cmdline_option (const char **argv
+ return result;
+ }
+
++/* Obstack for option strings. */
++
++struct obstack opts_obstack;
++
++/* Like libiberty concat, but allocate using opts_obstack. */
++
++char *
++opts_concat (const char *first, ...)
++{
++ char *newstr, *end;
++ size_t length = 0;
++ const char *arg;
++ va_list ap;
++
++ /* First compute the size of the result and get sufficient memory. */
++ va_start (ap, first);
++ for (arg = first; arg; arg = va_arg (ap, const char *))
++ length += strlen (arg);
++ newstr = XOBNEWVEC (&opts_obstack, char, length + 1);
++ va_end (ap);
++
++ /* Now copy the individual pieces to the result string. */
++ va_start (ap, first);
++ for (arg = first, end = newstr; arg; arg = va_arg (ap, const char *))
++ {
++ length = strlen (arg);
++ memcpy (end, arg, length);
++ end += length;
++ }
++ *end = '\0';
++ va_end (ap);
++ return newstr;
++}
++
+ /* Decode command-line options (ARGC and ARGV being the arguments of
+ main) into an array, setting *DECODED_OPTIONS to a pointer to that
+ array and *DECODED_OPTIONS_COUNT to the number of entries in the
+--- gcc/opts.c.jj 2013-02-27 08:27:26.000000000 +0100
++++ gcc/opts.c 2013-03-04 10:02:16.401346992 +0100
+@@ -268,40 +268,6 @@ add_comma_separated_to_vector (void **pv
+ *pvec = v;
+ }
+
+-/* Like libiberty concat, but allocate using opts_obstack. */
+-
+-char *
+-opts_concat (const char *first, ...)
+-{
+- char *newstr, *end;
+- size_t length = 0;
+- const char *arg;
+- va_list ap;
+-
+- /* First compute the size of the result and get sufficient memory. */
+- va_start (ap, first);
+- for (arg = first; arg; arg = va_arg (ap, const char *))
+- length += strlen (arg);
+- newstr = XOBNEWVEC (&opts_obstack, char, length + 1);
+- va_end (ap);
+-
+- /* Now copy the individual pieces to the result string. */
+- va_start (ap, first);
+- for (arg = first, end = newstr; arg; arg = va_arg (ap, const char *))
+- {
+- length = strlen (arg);
+- memcpy (end, arg, length);
+- end += length;
+- }
+- *end = '\0';
+- va_end (ap);
+- return newstr;
+-}
+-
+-/* Obstack for option strings. */
+-
+-struct obstack opts_obstack;
+-
+ /* Initialize OPTS and OPTS_SET before using them in parsing options. */
+
+ void
diff --git a/sources b/sources
index 73225ef..dc64418 100644
--- a/sources
+++ b/sources
@@ -1,4 +1,4 @@
be78a47bd82523250eb3e91646db5b3d cloog-0.18.0.tar.gz
2659f09c2e43ef8b7d4406321753f1b2 fastjar-0.97.tar.gz
-d18630509460934dfd7163a884b63ecd gcc-4.8.0-20130220.tar.bz2
bce1586384d8635a76d2f017fb067cd2 isl-0.11.1.tar.bz2
+4f89409558bba0856fbd26778fd49841 gcc-4.8.0-20130304.tar.bz2
More information about the scm-commits
mailing list