------- Comment #7 from bergner at gcc dot gnu dot org  2007-06-22 17:56 -------
Subject: Bug 26026

Author: bergner
Date: Fri Jun 22 17:56:14 2007
New Revision: 125952

URL: http://gcc.gnu.org/viewcvs?root=gcc&view=rev&rev=125952
Log:
Reassociation rewrite backport from mainline.

        2006-03-22  Jeff Law  <[EMAIL PROTECTED]>
        * loop-unroll.c (analyze_iv_to_split_insn): Handle
        iv_analyze_result returning false.

        2006-04-20  Jeff Law  <[EMAIL PROTECTED]>
        * tree-ssa-reassoc.c (negate_value): Avoid num_imm_uses when
        checking for zero or one use.
        (reassociate_bb): Similarly.

        2006-04-19  Alan Modra  <[EMAIL PROTECTED]>
        PR rtl-optimization/26026
        * fold-const.c (fold_binary): Optimize div and mod where the divisor
        is a known power of two shifted left a variable amount.

        2006-01-06  Jeff Law  <[EMAIL PROTECTED]>
        * tree-cfg.c (bsi_replace): Rename final argument from
        PRESERVE_EH_INFO to UPDATE_EH_INFO.  Fix typo in last
        change (stmt -> orig_stmt).
        * tree-eh.c (verify_eh_throw_stmt_node): New function.
        (bsi_remove): Add new argument.  Remove EH information
        if requested.
        (verify_eh_throw_table_statements): New function.
        (bsi_remove): Add new argument REMOVE_EH_INFO.  All callers
        updated.
        * tree-optimize.c (execute_free_cfg_annotations): Verify
        the EH throw statement table after removing annotations.
        * except.h (verify_eh_throw_table_statements): Prototype.
        * tree-flow.h (bsi_remove): Update prototype.
        * tree-vrp.c (remove_range_assertions): Add new argument to
        bsi_remove call.
        * tree-ssa-loop-im.c (move_computations_stmt): Likewise.
        * tree-complex.c (expand_complex_div_wide): Likewise.
        * tree-ssa-threadupdate.c (remove_ctrl_stmt_and_useless_edges):
Likewise
        * tree-tailcall.c (eliminate_tailcall): Likewise.
        * tree-ssa-dse.c (dse_optimize_stmt): Likewise.
        * tree-ssa-loop-ivopts.c (remove_statement): Likewise.
        * tree-nrv.c (tree_nrv): Likewise.
        * tree-vectorizer.c (slpeel_make_loop_iterate_ntimes): Likewise.
        * tree-if-conv.c (tree_if_convert_cond_expr): Likewise.
        (combine_blocks): Likewise.
        * tree-ssa-phiopt.c (replace_phi_edge_with_variable): Likewise.
        * tree-cfgcleanup.c (cleanup_ctrl_expr_graph): Likewise.
        (cleanup_control_flow): Likewise.
        (remove_forwarder_block): Likewise.
        * tree-ssa-pre.c (remove_dead_inserted_code): Likewise.
        * tree-sra.c (sra_replace): Likewise.
        * tree-ssa-forwprop.c (forward_propagate_into_cond): Likewise.
        (forward_propagate_single_use_vars): Likewise.
        * tree-ssa-dce.c (remove_dead_stmt): Likewise.
        * tree-inline.c (expand_call_inline): Likewise.
        * tree-vect-transform.c (vect_transform_loop): Likewise.
        * tree-outof-ssa.c (rewrite_trees): Likewise.
        * tree-cfg.c (make_goto_expr_edges): Likewise.
        (cleanup_dead_labels): Likewise.
        (tree_merge_blocks, remove_bb, disband_implicit_edges): Likewise.
        (bsi_move_before, bsi_move_after): Likewise.
        (bsi_move_to_bb_end, try_redirect_by_replacing_jump): Likewise
        (tree_redirect_edge_and_branch, tree_split_block): Likewise.

        2006-01-04  Jeff Law  <[EMAIL PROTECTED]>
        * tree-cfg.c (bsi_replace): Remove the original statement
        from the EH throw statement table.

        2005-12-19  Roger Sayle  <[EMAIL PROTECTED]>
        * combine.c (try_combine): Improve splitting of binary operators
        by taking advantage of reassociative transformations.

        2005-12-12  Jeff Law  <[EMAIL PROTECTED]>
        * tree-ssa-dom.c (simplify_rhs_and_lookup_avail_expr): Remove
        reassociation code.
        * passes.c (init_optimization_passes): Run reassociation again
        after loop optimizations.

        2005-12-12  Daniel Berlin  <[EMAIL PROTECTED]>
        * tree-ssa-dom.c (thread_across_edge): Canonicalize condition
        if necessary.
        (optimize_stmt): Ditto.
        (canonicalize_comparison): New function.
        * tree-ssa-operands.c (swap_tree_operands): Make external.
        (get_expr_operands): Stop auto-canonicalization.
        * tree-ssa-reassoc.c: Rewrite.
        (init_optimization_passes): 
        * tree-flow.h (swap_tree_operands): Prototype.
        * Makefile.in (tree-ssa-reassoc.o): Update dependencies.

        * gcc.dg/tree-ssa/ssa-pre-2.c: Update due to reassociation changes.
        * gcc.dg/tree-ssa/reassoc-1.c: Likewise.
        * gcc.dg/tree-ssa/reassoc-2.c: Likewise.
        * gcc.dg/tree-ssa/reassoc-3.c: Likewise.
        * gcc.dg/tree-ssa/reassoc-4.c: Likewise.
        * gcc.dg/tree-ssa/reassoc-5.c: New.
        * gcc.dg/tree-ssa/reassoc-6.c: New.
        * gcc.dg/tree-ssa/reassoc-7.c: New.
        * gcc.dg/tree-ssa/reassoc-8.c: New.
        * gcc.dg/tree-ssa/reassoc-9.c: New.
        * gcc.dg/tree-ssa/reassoc-10.c: New.
        * gcc.dg/tree-ssa/reassoc-11.c: New.

Added:
    branches/ibm/gcc-4_1-branch/gcc/testsuite/gcc.dg/tree-ssa/reassoc-10.c
    branches/ibm/gcc-4_1-branch/gcc/testsuite/gcc.dg/tree-ssa/reassoc-11.c
    branches/ibm/gcc-4_1-branch/gcc/testsuite/gcc.dg/tree-ssa/reassoc-5.c
    branches/ibm/gcc-4_1-branch/gcc/testsuite/gcc.dg/tree-ssa/reassoc-6.c
    branches/ibm/gcc-4_1-branch/gcc/testsuite/gcc.dg/tree-ssa/reassoc-7.c
    branches/ibm/gcc-4_1-branch/gcc/testsuite/gcc.dg/tree-ssa/reassoc-8.c
    branches/ibm/gcc-4_1-branch/gcc/testsuite/gcc.dg/tree-ssa/reassoc-9.c
Modified:
    branches/ibm/gcc-4_1-branch/gcc/ChangeLog
    branches/ibm/gcc-4_1-branch/gcc/Makefile.in
    branches/ibm/gcc-4_1-branch/gcc/combine.c
    branches/ibm/gcc-4_1-branch/gcc/except.h
    branches/ibm/gcc-4_1-branch/gcc/loop-unroll.c
    branches/ibm/gcc-4_1-branch/gcc/passes.c
    branches/ibm/gcc-4_1-branch/gcc/testsuite/gcc.dg/tree-ssa/reassoc-1.c
    branches/ibm/gcc-4_1-branch/gcc/testsuite/gcc.dg/tree-ssa/reassoc-2.c
    branches/ibm/gcc-4_1-branch/gcc/testsuite/gcc.dg/tree-ssa/reassoc-3.c
    branches/ibm/gcc-4_1-branch/gcc/testsuite/gcc.dg/tree-ssa/reassoc-4.c
    branches/ibm/gcc-4_1-branch/gcc/testsuite/gcc.dg/tree-ssa/ssa-pre-2.c
    branches/ibm/gcc-4_1-branch/gcc/tree-cfg.c
    branches/ibm/gcc-4_1-branch/gcc/tree-cfgcleanup.c
    branches/ibm/gcc-4_1-branch/gcc/tree-complex.c
    branches/ibm/gcc-4_1-branch/gcc/tree-eh.c
    branches/ibm/gcc-4_1-branch/gcc/tree-flow.h
    branches/ibm/gcc-4_1-branch/gcc/tree-if-conv.c
    branches/ibm/gcc-4_1-branch/gcc/tree-inline.c
    branches/ibm/gcc-4_1-branch/gcc/tree-nrv.c
    branches/ibm/gcc-4_1-branch/gcc/tree-optimize.c
    branches/ibm/gcc-4_1-branch/gcc/tree-outof-ssa.c
    branches/ibm/gcc-4_1-branch/gcc/tree-sra.c
    branches/ibm/gcc-4_1-branch/gcc/tree-ssa-dce.c
    branches/ibm/gcc-4_1-branch/gcc/tree-ssa-dom.c
    branches/ibm/gcc-4_1-branch/gcc/tree-ssa-dse.c
    branches/ibm/gcc-4_1-branch/gcc/tree-ssa-forwprop.c
    branches/ibm/gcc-4_1-branch/gcc/tree-ssa-loop-im.c
    branches/ibm/gcc-4_1-branch/gcc/tree-ssa-loop-ivopts.c
    branches/ibm/gcc-4_1-branch/gcc/tree-ssa-operands.c
    branches/ibm/gcc-4_1-branch/gcc/tree-ssa-phiopt.c
    branches/ibm/gcc-4_1-branch/gcc/tree-ssa-pre.c
    branches/ibm/gcc-4_1-branch/gcc/tree-ssa-reassoc.c
    branches/ibm/gcc-4_1-branch/gcc/tree-ssa-threadupdate.c
    branches/ibm/gcc-4_1-branch/gcc/tree-tailcall.c
    branches/ibm/gcc-4_1-branch/gcc/tree-vect-transform.c
    branches/ibm/gcc-4_1-branch/gcc/tree-vectorizer.c
    branches/ibm/gcc-4_1-branch/gcc/tree-vrp.c


-- 


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=26026

Reply via email to