Commit b5b84a7f by Andrew Pinski

[multiple changes]

2006-09-06  James E Wilson  <wilson@specifix.com>

        PR rtl-opt/27883
        * flow.c (update_life_info): If UPDATE_LIFE_LOCAL and PROP_DEATH_NOTES
        then call count_or_remove_death_notes.

2006-09-06  Andrew Pinski  <pinskia@physics.uc.edu>

        PR rtl-opt/27883
        * g++.dg/opt/copysign-1.C: New test.

From-SVN: r116739
parent aa4f41c1
2006-09-06 James E Wilson <wilson@specifix.com>
PR rtl-opt/27883
* flow.c (update_life_info): If UPDATE_LIFE_LOCAL and PROP_DEATH_NOTES
then call count_or_remove_death_notes.
2006-09-06 Jason Merrill <jason@redhat.com>
PR c++/27371
......
......@@ -647,6 +647,17 @@ update_life_info (sbitmap blocks, enum update_life_extent extent,
count_or_remove_death_notes (blocks,
prop_flags & PROP_POST_REGSTACK ? -1 : 1);
}
else
{
/* FIXME: This can go when the dataflow branch has been merged in. */
/* For a local update, if we are creating new REG_DEAD notes, then we
must delete the old ones first to avoid conflicts if they are
different. */
if (prop_flags & PROP_DEATH_NOTES)
count_or_remove_death_notes (blocks,
prop_flags & PROP_POST_REGSTACK ? -1 : 1);
}
/* Clear log links in case we are asked to (re)compute them. */
if (prop_flags & PROP_LOG_LINKS)
......
2006-09-06 Andrew Pinski <pinskia@physics.uc.edu>
PR rtl-opt/27883
* g++.dg/opt/copysign-1.C: New test.
2006-09-06 Mark Mitchell <mark@codesourcery.com>
PR c++/28903
// { dg-options "-O2" }
// { dg-do compile }
// PR rtl-opt/27883
// MIPS used to ICE because local flow update
// was not removing an invalid REG_DEAD.
double copysign (double x, double y);
double GetDouble();
double a = copysign (1.0, GetDouble());
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment