This commit is contained in:
Jakub Jelinek 2013-05-10 17:36:24 +02:00
parent 8938366a48
commit 4bcc1e4fe2
4 changed files with 51 additions and 4 deletions

1
.gitignore vendored
View File

@ -71,3 +71,4 @@
/gcc-4.8.0-20130412.tar.bz2 /gcc-4.8.0-20130412.tar.bz2
/gcc-4.8.0-20130419.tar.bz2 /gcc-4.8.0-20130419.tar.bz2
/gcc-4.8.0-20130507.tar.bz2 /gcc-4.8.0-20130507.tar.bz2
/gcc-4.8.0-20130510.tar.bz2

View File

@ -1,9 +1,9 @@
%global DATE 20130507 %global DATE 20130510
%global SVNREV 198674 %global SVNREV 198794
%global gcc_version 4.8.0 %global gcc_version 4.8.0
# Note, gcc_release must be integer, if you want to add suffixes to # Note, gcc_release must be integer, if you want to add suffixes to
# %{release}, append them after %{gcc_release} on Release: line. # %{release}, append them after %{gcc_release} on Release: line.
%global gcc_release 4 %global gcc_release 5
%global _unpackaged_files_terminate_build 0 %global _unpackaged_files_terminate_build 0
%global multilib_64_archs sparc64 ppc64 s390x x86_64 %global multilib_64_archs sparc64 ppc64 s390x x86_64
%ifarch %{ix86} x86_64 ia64 ppc ppc64 alpha %ifarch %{ix86} x86_64 ia64 ppc ppc64 alpha
@ -194,6 +194,7 @@ Patch10: gcc48-pr38757.patch
Patch11: gcc48-libstdc++-docs.patch Patch11: gcc48-libstdc++-docs.patch
Patch12: gcc48-no-add-needed.patch Patch12: gcc48-no-add-needed.patch
Patch13: gcc48-rh957778.patch Patch13: gcc48-rh957778.patch
Patch14: gcc48-pr57230.patch
Patch1000: fastjar-0.97-segfault.patch Patch1000: fastjar-0.97-segfault.patch
Patch1001: fastjar-0.97-len1.patch Patch1001: fastjar-0.97-len1.patch
@ -748,6 +749,7 @@ package or when debugging this package.
%endif %endif
%patch12 -p0 -b .no-add-needed~ %patch12 -p0 -b .no-add-needed~
%patch13 -p0 -b .rh957778~ %patch13 -p0 -b .rh957778~
%patch14 -p0 -b .pr57230~
%if 0%{?_enable_debug_packages} %if 0%{?_enable_debug_packages}
cat > split-debuginfo.sh <<\EOF cat > split-debuginfo.sh <<\EOF
@ -2981,6 +2983,13 @@ fi
%{_prefix}/libexec/gcc/%{gcc_target_platform}/%{gcc_version}/plugin %{_prefix}/libexec/gcc/%{gcc_target_platform}/%{gcc_version}/plugin
%changelog %changelog
* Fri May 10 2013 Jakub Jelinek <jakub@redhat.com> 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 <jakub@redhat.com> 4.8.0-4 * Tue May 7 2013 Jakub Jelinek <jakub@redhat.com> 4.8.0-4
- update from the 4.8 branch - update from the 4.8 branch
- PRs ada/56474, c++/50261, c++/56450, c++/56859, c++/56970, c++/57064, - PRs ada/56474, c++/50261, c++/56450, c++/56859, c++/56970, c++/57064,

37
gcc48-pr57230.patch Normal file
View File

@ -0,0 +1,37 @@
2013-05-10 Jakub Jelinek <jakub@redhat.com>
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;
+}

View File

@ -1,4 +1,4 @@
be78a47bd82523250eb3e91646db5b3d cloog-0.18.0.tar.gz be78a47bd82523250eb3e91646db5b3d cloog-0.18.0.tar.gz
2659f09c2e43ef8b7d4406321753f1b2 fastjar-0.97.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 bce1586384d8635a76d2f017fb067cd2 isl-0.11.1.tar.bz2