r139048 - in /trunk/gcc: ChangeLog passes.c tes...

rguenth@gcc.gnu.org rguenth@gcc.gnu.org
Wed Aug 13 08:57:00 GMT 2008


Author: rguenth
Date: Wed Aug 13 08:57:20 2008
New Revision: 139048

URL: http://gcc.gnu.org/viewcvs?root=gcc&view=rev&rev=139048
Log:
2008-08-13  Richard Guenther  <rguenther@suse.de>

	PR tree-optimization/15255
	* tree-ssa-reassoc.c (linearize_expr_tree): Declare.
	(struct oecount_s): New struct and VEC types.
	(cvec): New global.
	(oecount_hash): New function.
	(oecount_eq): Likewise.
	(oecount_cmp): Likewise.
	(zero_one_operation): New function.
	(build_and_add_sum): Likewise.
	(undistribute_ops_list): Perform un-distribution of multiplication
	and division on the chain of summands.
	(should_break_up_subtract): Also break up subtracts for factors.
	(reassociate_bb): Delete dead visited statements.
	Call undistribute_ops_list.  Re-sort and optimize if it did something.
	* passes.c (init_optimization_passes): Move DSE before
	reassociation.
	* tree-ssa-loop-niter.c (stmt_dominates_stmt_p): Correctly handle
	PHI nodes.

	* gcc.dg/tree-ssa/reassoc-14.c: New testcase.
	* gcc.dg/tree-ssa/reassoc-15.c: Likewise.
	* gcc.dg/tree-ssa/reassoc-16.c: Likewise.
	* gcc.dg/torture/reassoc-1.c: Likewise.
	* gcc.dg/tree-ssa/recip-2.c: Adjust.
	* gcc.dg/tree-ssa/recip-6.c: Likewise.
	* gcc.dg/tree-ssa/recip-7.c: Likewise.
	* gfortran.dg/reassoc_4.f: Likewise.

Added:
    trunk/gcc/testsuite/gcc.dg/torture/reassoc-1.c
    trunk/gcc/testsuite/gcc.dg/tree-ssa/reassoc-14.c
    trunk/gcc/testsuite/gcc.dg/tree-ssa/reassoc-15.c
    trunk/gcc/testsuite/gcc.dg/tree-ssa/reassoc-16.c
    trunk/gcc/testsuite/gcc.dg/tree-ssa/reassoc-17.c
    trunk/gcc/testsuite/gcc.dg/tree-ssa/reassoc-18.c
    trunk/gcc/testsuite/gfortran.dg/reassoc_4.f
Modified:
    trunk/gcc/ChangeLog
    trunk/gcc/passes.c
    trunk/gcc/testsuite/ChangeLog
    trunk/gcc/testsuite/gcc.dg/tree-ssa/recip-2.c
    trunk/gcc/testsuite/gcc.dg/tree-ssa/recip-6.c
    trunk/gcc/testsuite/gcc.dg/tree-ssa/recip-7.c
    trunk/gcc/tree-ssa-loop-niter.c
    trunk/gcc/tree-ssa-reassoc.c



More information about the Gcc-cvs mailing list