This is the mail archive of the gcc-patches@gcc.gnu.org mailing list for the GCC project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

Re: [PATCH] tree level if-conversion for vectorizer


I have addressed following feedback in this iteration:

o Remove tree-gimple.c change
o Update comments regarding vectorizer needs
o Create one temp., for condition, per block
o Allow only var decls as LHS for candidate assignments and expose assignment. This may transform 'uninitialized use' into 'un-intentionally initialized use', but that is fine.
o Remove expr.c change from previous patch to allow (void)0 as one of the COND_EXPR operand.


Bootstrapped on powerpc-darwin. DejaGNU test run is in progress. OK if it succeeds ?

Thanks,
-
Devang

2004-09-01 Devang Patel <dpatel@apple.com>

* Makefile.in (OBJS-common): Add tree-if-conv.o
(tree-if-conv.o): New rule.
* cfgloop.c (flow_loop_exit_edges_find): Set EDGE_LOOP_EXIT flag.
(get_loop_body_in_bfs_order): New.
* cfgloop.h (get_loop_body_in_bfs_order): New.
* tree-flow.h (enum move_pos): Move here from ..
* tree-ssa-loop-im.c (enum move_pos): here.
(movement_possibility): Make externally visible.
* tree-optimize.c (init_tree_optimization_passes): New entry for
if conversion pass.
* tree-pass.h (pass_if_conversion): New.
* tree-ssa-operands.c (get_expr_operands): Handle COND_EXPR.
* tree-if-conv.c: New file.
* doc/passes.texi: Document tree if-conversion pass.
* doc/tree-ssa.texi: Same.


testsuite:

        * gcc.dg/tree-ssa/ifc-20040816-1.c: New test.
        * gcc.dg/tree-ssa/ifc-20040816-2.c: New test.


Attachment: ifc_mainline.take4.2.diff
Description: Binary data



Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]