diff options
author | Ajit Agarwal <ajitkum@xilinx.com> | 2015-11-13 23:31:51 +0000 |
---|---|---|
committer | Jeff Law <law@gcc.gnu.org> | 2015-11-13 16:31:51 -0700 |
commit | 8fe17e23b052741c8cbec99c7173c3c07f8e8c64 (patch) | |
tree | 5b2631fd0e6dc942bbd89ba9465f3c9d6d96aaa6 /gcc/tree-pass.h | |
parent | 269e63b735d6e4e18367e94e8417b5d5eb799960 (diff) | |
download | gcc-8fe17e23b052741c8cbec99c7173c3c07f8e8c64.zip gcc-8fe17e23b052741c8cbec99c7173c3c07f8e8c64.tar.gz gcc-8fe17e23b052741c8cbec99c7173c3c07f8e8c64.tar.bz2 |
[Patch,tree-optimization]: Add new path Splitting pass on tree ssa
representation
* Makefile.in (OBJS): Add gimple-ssa-split-paths.o
* common.opt (-fsplit-paths): New flag controlling path splitting.
* doc/invoke.texi (fsplit-paths): Document.
* opts.c (default_options_table): Add -fsplit-paths to -O2.
* passes.def: Add split_paths pass.
* timevar.def (TV_SPLIT_PATHS): New timevar.
* tracer.c: Include "tracer.h"
(ignore_bb_p): No longer static.
(transform_duplicate): New function, broken out of tail_duplicate.
(tail_duplicate): Use transform_duplicate.
* tracer.h (ignore_bb_p): Declare
(transform_duplicate): Likewise.
* tree-pass.h (make_pass_split_paths): Declare.
* gimple-ssa-split-paths.c: New file.
* gcc.dg/tree-ssa/split-path-1.c: New test.
Co-Authored-By: Jeff Law <law@redhat.com>
From-SVN: r230364
Diffstat (limited to 'gcc/tree-pass.h')
-rw-r--r-- | gcc/tree-pass.h | 1 |
1 files changed, 1 insertions, 0 deletions
diff --git a/gcc/tree-pass.h b/gcc/tree-pass.h index 49e22a9..da67761 100644 --- a/gcc/tree-pass.h +++ b/gcc/tree-pass.h @@ -390,6 +390,7 @@ extern gimple_opt_pass *make_pass_tree_loop_done (gcc::context *ctxt); extern gimple_opt_pass *make_pass_ch (gcc::context *ctxt); extern gimple_opt_pass *make_pass_ch_vect (gcc::context *ctxt); extern gimple_opt_pass *make_pass_ccp (gcc::context *ctxt); +extern gimple_opt_pass *make_pass_split_paths (gcc::context *ctxt); extern gimple_opt_pass *make_pass_phi_only_cprop (gcc::context *ctxt); extern gimple_opt_pass *make_pass_build_ssa (gcc::context *ctxt); extern gimple_opt_pass *make_pass_build_alias (gcc::context *ctxt); |