diff --git a/.gitignore b/.gitignore index 7dc56da..b3cf14d 100644 --- a/.gitignore +++ b/.gitignore @@ -71,3 +71,4 @@ /gcc-4.8.0-20130412.tar.bz2 /gcc-4.8.0-20130419.tar.bz2 /gcc-4.8.0-20130507.tar.bz2 +/gcc-4.8.0-20130510.tar.bz2 diff --git a/gcc.spec b/gcc.spec index 44af22f..c14fe87 100644 --- a/gcc.spec +++ b/gcc.spec @@ -1,9 +1,9 @@ -%global DATE 20130507 -%global SVNREV 198674 +%global DATE 20130510 +%global SVNREV 198794 %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 4 +%global gcc_release 5 %global _unpackaged_files_terminate_build 0 %global multilib_64_archs sparc64 ppc64 s390x x86_64 %ifarch %{ix86} x86_64 ia64 ppc ppc64 alpha @@ -194,6 +194,7 @@ Patch10: gcc48-pr38757.patch Patch11: gcc48-libstdc++-docs.patch Patch12: gcc48-no-add-needed.patch Patch13: gcc48-rh957778.patch +Patch14: gcc48-pr57230.patch Patch1000: fastjar-0.97-segfault.patch Patch1001: fastjar-0.97-len1.patch @@ -748,6 +749,7 @@ package or when debugging this package. %endif %patch12 -p0 -b .no-add-needed~ %patch13 -p0 -b .rh957778~ +%patch14 -p0 -b .pr57230~ %if 0%{?_enable_debug_packages} cat > split-debuginfo.sh <<\EOF @@ -2981,6 +2983,13 @@ fi %{_prefix}/libexec/gcc/%{gcc_target_platform}/%{gcc_version}/plugin %changelog +* Fri May 10 2013 Jakub Jelinek 4.8.0-5 +- update from the 4.8 branch + - PRs bootstrap/54281, bootstrap/54659, c++/57047, c++/57068, c++/57222, + fortran/57142, libstdc++/57212, middle-end/56988, target/55033, + target/57237, tree-optimization/57200, tree-optimization/57214 +- fix up strlen pass (PR tree-optimization/57230) + * Tue May 7 2013 Jakub Jelinek 4.8.0-4 - update from the 4.8 branch - PRs ada/56474, c++/50261, c++/56450, c++/56859, c++/56970, c++/57064, diff --git a/gcc48-pr57230.patch b/gcc48-pr57230.patch new file mode 100644 index 0000000..5449dde --- /dev/null +++ b/gcc48-pr57230.patch @@ -0,0 +1,37 @@ +2013-05-10 Jakub Jelinek + + PR tree-optimization/57230 + * tree-ssa-strlen.c (handle_char_store): Add missing integer_zerop + check. + + * gcc.dg/strlenopt-23.c: New test. + +--- gcc/tree-ssa-strlen.c.jj 2013-04-26 08:49:53.000000000 +0200 ++++ gcc/tree-ssa-strlen.c 2013-05-10 08:57:20.654523288 +0200 +@@ -1703,7 +1703,7 @@ handle_char_store (gimple_stmt_iterator + its length may be decreased. */ + adjust_last_stmt (si, stmt, false); + } +- else if (si != NULL) ++ else if (si != NULL && integer_zerop (gimple_assign_rhs1 (stmt))) + { + si = unshare_strinfo (si); + si->length = build_int_cst (size_type_node, 0); +--- gcc/testsuite/gcc.dg/strlenopt-23.c.jj 2013-05-10 09:01:27.808152595 +0200 ++++ gcc/testsuite/gcc.dg/strlenopt-23.c 2013-05-10 09:02:08.042931124 +0200 +@@ -0,0 +1,15 @@ ++/* PR tree-optimization/57230 */ ++/* { dg-do run } */ ++/* { dg-options "-O2" } */ ++ ++#include "strlenopt.h" ++ ++int ++main () ++{ ++ char p[] = "hello world"; ++ p[0] = (char) (strlen (p) - 1); ++ if (strlen (p) != 11) ++ abort (); ++ return 0; ++} diff --git a/sources b/sources index 38f79c8..b017cae 100644 --- a/sources +++ b/sources @@ -1,4 +1,4 @@ be78a47bd82523250eb3e91646db5b3d cloog-0.18.0.tar.gz 2659f09c2e43ef8b7d4406321753f1b2 fastjar-0.97.tar.gz -01a69c8570aa3a0dcdef76a335d60076 gcc-4.8.0-20130507.tar.bz2 +685602a8393f6d34cf63d14827828fbf gcc-4.8.0-20130510.tar.bz2 bce1586384d8635a76d2f017fb067cd2 isl-0.11.1.tar.bz2