4.4.0-0.23
This commit is contained in:
parent
caa5b98426
commit
8ac0ea7ebe
@ -1,3 +1,3 @@
|
|||||||
fastjar-0.97.tar.gz
|
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
|
cloog-ppl-0.15.tar.gz
|
||||||
|
3
gcc.spec
3
gcc.spec
@ -434,7 +434,7 @@ which are required to compile with the GNAT.
|
|||||||
%patch22 -p0 -b .raw-string~
|
%patch22 -p0 -b .raw-string~
|
||||||
%patch24 -p0 -b .atom~
|
%patch24 -p0 -b .atom~
|
||||||
%patch25 -p0 -b .pr39226~
|
%patch25 -p0 -b .pr39226~
|
||||||
%patch26 -p0 -b .power7~
|
#%patch26 -p0 -b .power7~
|
||||||
|
|
||||||
# This testcase doesn't compile.
|
# This testcase doesn't compile.
|
||||||
rm libjava/testsuite/libjava.lang/PR35020*
|
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 DW_AT_decl_line on DW_TAG_imported* (#488771, PR debug/39387)
|
||||||
- fix SCCVN with SSA names occurring in abnormal PHIs (#488061,
|
- fix SCCVN with SSA names occurring in abnormal PHIs (#488061,
|
||||||
PR tree-optimization/39362)
|
PR tree-optimization/39362)
|
||||||
- preliminary Power7 support
|
|
||||||
|
|
||||||
* Wed Mar 4 2009 Jakub Jelinek <jakub@redhat.com> 4.4.0-0.22
|
* Wed Mar 4 2009 Jakub Jelinek <jakub@redhat.com> 4.4.0-0.22
|
||||||
- update from trunk
|
- update from trunk
|
||||||
|
@ -1,108 +0,0 @@
|
|||||||
2009-03-04 Richard Guenther <rguenther@suse.de>
|
|
||||||
|
|
||||||
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<list>
|
|
||||||
+
|
|
||||||
+struct A
|
|
||||||
+{
|
|
||||||
+ virtual ~A();
|
|
||||||
+};
|
|
||||||
+
|
|
||||||
+A* foo();
|
|
||||||
+
|
|
||||||
+void bar(std::list<int> x)
|
|
||||||
+{
|
|
||||||
+ std::list<int> 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<Node*>(prev)->data; }
|
|
||||||
+};
|
|
||||||
+
|
|
||||||
+struct A
|
|
||||||
+{
|
|
||||||
+ virtual ~A();
|
|
||||||
+};
|
|
||||||
+
|
|
||||||
+A* foo();
|
|
||||||
+
|
|
||||||
+void bar()
|
|
||||||
+{
|
|
||||||
+ List y;
|
|
||||||
+ if (y.back())
|
|
||||||
+ delete foo();
|
|
||||||
+}
|
|
||||||
+
|
|
2
sources
2
sources
@ -1,3 +1,3 @@
|
|||||||
2659f09c2e43ef8b7d4406321753f1b2 fastjar-0.97.tar.gz
|
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
|
716b7a0823f96c9d02c1703a9c47d387 cloog-ppl-0.15.tar.gz
|
||||||
|
Loading…
Reference in New Issue
Block a user