[Bug tree-optimization/30978] Does not propagate comparison results
rguenth at gcc dot gnu dot org
gcc-bugzilla@gcc.gnu.org
Fri Apr 27 13:44:00 GMT 2007
------- Comment #2 from rguenth at gcc dot gnu dot org 2007-04-27 14:44 -------
Subject: Bug 30978
Author: rguenth
Date: Fri Apr 27 14:43:42 2007
New Revision: 124217
URL: http://gcc.gnu.org/viewcvs?root=gcc&view=rev&rev=124217
Log:
2007-04-27 Richard Guenther <rguenther@suse.de>
PR tree-optimization/30965
PR tree-optimization/30978
* Makefile.in (tree-ssa-forwprop.o): Depend on $(FLAGS_H).
* tree-ssa-forwprop.c (forward_propagate_into_cond_1): Remove.
(find_equivalent_equality_comparison): Likewise.
(simplify_cond): Likewise.
(get_prop_source_stmt): New helper.
(get_prop_dest_stmt): Likewise.
(can_propagate_from): Likewise.
(remove_prop_source_from_use): Likewise.
(combine_cond_expr_cond): Likewise.
(forward_propagate_comparison): New function.
(forward_propagate_into_cond): Rewrite to use fold for
tree combining.
(tree_ssa_forward_propagate_single_use_vars): Call
forward_propagate_comparison to propagate comparisons.
* gcc.dg/tree-ssa/pr30978.c: New testcase.
* gcc.dg/tree-ssa/bool-3.c: Remove XFAIL, explain why.
* gcc.dg/tree-ssa/ssa-fre-4.c: Use char instead of bool
* gcc.dg/strict-overflow-5.c: Adjust tree dump scanning.
Added:
trunk/gcc/testsuite/gcc.dg/tree-ssa/pr30978.c
Modified:
trunk/gcc/ChangeLog
trunk/gcc/Makefile.in
trunk/gcc/testsuite/ChangeLog
trunk/gcc/testsuite/gcc.dg/strict-overflow-5.c
trunk/gcc/testsuite/gcc.dg/tree-ssa/bool-3.c
trunk/gcc/testsuite/gcc.dg/tree-ssa/ssa-fre-4.c
trunk/gcc/tree-ssa-forwprop.c
--
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=30978
More information about the Gcc-bugs
mailing list