OSDN Git Service

2007-05-13 Daniel Berlin <dberlin@dberlin.org>
authordberlin <dberlin@138bc75d-0d04-0410-961f-82ee72b054a4>
Sun, 13 May 2007 21:52:10 +0000 (21:52 +0000)
committerdberlin <dberlin@138bc75d-0d04-0410-961f-82ee72b054a4>
Sun, 13 May 2007 21:52:10 +0000 (21:52 +0000)
Fix PR tree-optimization/31911
* tree-ssa-pre.c (phi_translate): Make sure to cache results even
if they didn't change the expression.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@124657 138bc75d-0d04-0410-961f-82ee72b054a4

gcc/ChangeLog
gcc/tree-ssa-pre.c

index e3380b5..46ee450 100644 (file)
@@ -1,3 +1,9 @@
+2007-05-13  Daniel Berlin  <dberlin@dberlin.org>
+
+       Fix PR tree-optimization/31911
+       * tree-ssa-pre.c (phi_translate): Make sure to cache results even
+       if they didn't change the expression.
+
 2007-05-13  Zdenek Dvorak  <dvorakz@suse.cz>
 
        * tree-scalar-evolution.c (resolve_mixers): Exported.
index 7275acf..4633211 100644 (file)
@@ -1075,8 +1075,8 @@ phi_translate (tree expr, bitmap_set_t set1, bitmap_set_t set2,
                newexpr->base.ann = NULL;
                vn_lookup_or_add_with_vuses (newexpr, tvuses);
                expr = newexpr;
-               phi_trans_add (oldexpr, newexpr, pred, tvuses);
              }
+           phi_trans_add (oldexpr, expr, pred, tvuses);
          }
       }
       return expr;
@@ -1188,8 +1188,8 @@ phi_translate (tree expr, bitmap_set_t set1, bitmap_set_t set2,
                vn_lookup_or_add_with_vuses (newexpr, newvuses);
              }
            expr = newexpr;
-           phi_trans_add (oldexpr, newexpr, pred, newvuses);
          }
+       phi_trans_add (oldexpr, expr, pred, newvuses);
       }
       return expr;
       break;
@@ -1233,8 +1233,8 @@ phi_translate (tree expr, bitmap_set_t set1, bitmap_set_t set2,
                vn_lookup_or_add (newexpr, NULL);
              }
            expr = newexpr;
-           phi_trans_add (oldexpr, newexpr, pred, NULL);
          }
+       phi_trans_add (oldexpr, expr, pred, NULL);
       }
       return expr;
 
@@ -1266,8 +1266,8 @@ phi_translate (tree expr, bitmap_set_t set1, bitmap_set_t set2,
                vn_lookup_or_add (newexpr, NULL);
              }
            expr = newexpr;
-           phi_trans_add (oldexpr, newexpr, pred, NULL);
          }
+       phi_trans_add (oldexpr, expr, pred, NULL);
       }
       return expr;