diff options
Diffstat (limited to 'gcc')
-rw-r--r-- | gcc/ChangeLog | 6 | ||||
-rw-r--r-- | gcc/tree-ssa-pre.c | 9 |
2 files changed, 6 insertions, 9 deletions
diff --git a/gcc/ChangeLog b/gcc/ChangeLog index 2a128c6..3431ed8 100644 --- a/gcc/ChangeLog +++ b/gcc/ChangeLog @@ -1,3 +1,9 @@ +2006-03-23 Andrew Pinski <pinskia@physics.uc.edu> + + PR tree-opt/26795 + * tree-ssa-pre.c (create_value_expr_from): Don't reject + expressions which have overflowed constants. + 2006-03-23 Zdenek Dvorak <dvorakz@suse.cz> * cse.c (cse_end_of_basic_block): Do not check for LOOP_END note. diff --git a/gcc/tree-ssa-pre.c b/gcc/tree-ssa-pre.c index e925621..fc0dff5 100644 --- a/gcc/tree-ssa-pre.c +++ b/gcc/tree-ssa-pre.c @@ -2938,15 +2938,6 @@ create_value_expr_from (tree expr, basic_block block, tree stmt) if (op == NULL_TREE) continue; - /* If OP is a constant that has overflowed, do not value number - this expression. */ - if (CONSTANT_CLASS_P (op) - && TREE_OVERFLOW (op)) - { - pool_free (pool, vexpr); - return NULL; - } - /* Recursively value-numberize reference ops and tree lists. */ if (REFERENCE_CLASS_P (op)) { |