From 8ac0ea7ebe76968715b52d52ad7faffbca031dfb Mon Sep 17 00:00:00 2001 From: Jakub Jelinek Date: Sat, 7 Mar 2009 09:37:59 +0000 Subject: [PATCH] 4.4.0-0.23 --- .cvsignore | 2 +- gcc.spec | 3 +- power7.patch => gcc44-power7.patch | 0 gcc44-pr39358.patch | 108 ----------------------------- sources | 2 +- 5 files changed, 3 insertions(+), 112 deletions(-) rename power7.patch => gcc44-power7.patch (100%) delete mode 100644 gcc44-pr39358.patch diff --git a/.cvsignore b/.cvsignore index 7659195..e548bd1 100644 --- a/.cvsignore +++ b/.cvsignore @@ -1,3 +1,3 @@ fastjar-0.97.tar.gz -gcc-4.4.0-20090304.tar.bz2 +gcc-4.4.0-20090307.tar.bz2 cloog-ppl-0.15.tar.gz diff --git a/gcc.spec b/gcc.spec index 59b75b8..fcd9e5e 100644 --- a/gcc.spec +++ b/gcc.spec @@ -434,7 +434,7 @@ which are required to compile with the GNAT. %patch22 -p0 -b .raw-string~ %patch24 -p0 -b .atom~ %patch25 -p0 -b .pr39226~ -%patch26 -p0 -b .power7~ +#%patch26 -p0 -b .power7~ # This testcase doesn't compile. rm libjava/testsuite/libjava.lang/PR35020* @@ -1779,7 +1779,6 @@ fi - fix DW_AT_decl_line on DW_TAG_imported* (#488771, PR debug/39387) - fix SCCVN with SSA names occurring in abnormal PHIs (#488061, PR tree-optimization/39362) -- preliminary Power7 support * Wed Mar 4 2009 Jakub Jelinek 4.4.0-0.22 - update from trunk diff --git a/power7.patch b/gcc44-power7.patch similarity index 100% rename from power7.patch rename to gcc44-power7.patch diff --git a/gcc44-pr39358.patch b/gcc44-pr39358.patch deleted file mode 100644 index c0bc2cf..0000000 --- a/gcc44-pr39358.patch +++ /dev/null @@ -1,108 +0,0 @@ -2009-03-04 Richard Guenther - - PR tree-optimization/39358 - * tree-ssa-structalias.c (do_sd_constraint): Fix check for - escaped_id and callused_id. - (solve_graph): Likewise. - - * g++.dg/warn/Wstrict-aliasing-bogus-escape-2.C: New testcase. - * g++.dg/warn/Wstrict-aliasing-bogus-escape-3.C: Likewise. - ---- gcc/tree-ssa-structalias.c (revision 144601) -+++ gcc/tree-ssa-structalias.c (revision 144602) -@@ -1524,8 +1524,8 @@ do_sd_constraint (constraint_graph_t gra - of a variable can also reach all other fields of the variable - we simply have to expand the solution to contain all sub-fields - if one sub-field is contained. */ -- if (c->rhs.var == escaped_id -- || c->rhs.var == callused_id) -+ if (c->rhs.var == find (escaped_id) -+ || c->rhs.var == find (callused_id)) - { - bitmap vars = NULL; - /* In a first pass record all variables we need to add all -@@ -1594,9 +1594,10 @@ do_sd_constraint (constraint_graph_t gra - /* Merging the solution from ESCAPED needlessly increases - the set. Use ESCAPED as representative instead. - Same for CALLUSED. */ -- else if (get_varinfo (t)->id == escaped_id -- || get_varinfo (t)->id == callused_id) -- flag |= bitmap_set_bit (sol, get_varinfo (t)->id); -+ else if (get_varinfo (t)->id == find (escaped_id)) -+ flag |= bitmap_set_bit (sol, escaped_id); -+ else if (get_varinfo (t)->id == find (callused_id)) -+ flag |= bitmap_set_bit (sol, callused_id); - else if (add_graph_edge (graph, lhs, t)) - flag |= bitmap_ior_into (sol, get_varinfo (t)->solution); - } -@@ -2516,8 +2517,8 @@ solve_graph (constraint_graph_t graph) - - if (!solution_empty - /* Do not propagate the ESCAPED/CALLUSED solutions. */ -- && i != escaped_id -- && i != callused_id) -+ && i != find (escaped_id) -+ && i != find (callused_id)) - { - bitmap_iterator bi; - ---- gcc/testsuite/g++.dg/warn/Wstrict-aliasing-bogus-escape-2.C (revision 0) -+++ gcc/testsuite/g++.dg/warn/Wstrict-aliasing-bogus-escape-2.C (revision 144602) -@@ -0,0 +1,19 @@ -+/* { dg-do compile } */ -+/* { dg-options "-O2 -Wstrict-aliasing" } */ -+ -+#include -+ -+struct A -+{ -+ virtual ~A(); -+}; -+ -+A* foo(); -+ -+void bar(std::list x) -+{ -+ std::list y = x; -+ if (*y.rbegin()) -+ delete foo(); -+} -+ ---- gcc/testsuite/g++.dg/warn/Wstrict-aliasing-bogus-escape-3.C (revision 0) -+++ gcc/testsuite/g++.dg/warn/Wstrict-aliasing-bogus-escape-3.C (revision 144602) -@@ -0,0 +1,35 @@ -+/* { dg-do compile } */ -+/* { dg-options "-O2 -Wstrict-aliasing" } */ -+ -+struct Node_base {}; -+ -+struct Node : Node_base -+{ -+ int data; -+}; -+ -+struct List -+{ -+ Node_base node, *prev; -+ -+ List() : prev(&node) { xyz(); } -+ -+ void xyz(); -+ -+ int back() { return static_cast(prev)->data; } -+}; -+ -+struct A -+{ -+ virtual ~A(); -+}; -+ -+A* foo(); -+ -+void bar() -+{ -+ List y; -+ if (y.back()) -+ delete foo(); -+} -+ diff --git a/sources b/sources index 2674f42..d78d617 100644 --- a/sources +++ b/sources @@ -1,3 +1,3 @@ 2659f09c2e43ef8b7d4406321753f1b2 fastjar-0.97.tar.gz -75f2e4ab9717342f13146245d58fa160 gcc-4.4.0-20090304.tar.bz2 +79ee98a73c0cbab32938bbf5d85f086b gcc-4.4.0-20090307.tar.bz2 716b7a0823f96c9d02c1703a9c47d387 cloog-ppl-0.15.tar.gz