]> git.ipfire.org Git - thirdparty/gcc.git/commit
[Patch,tree-optimization]: Add new path Splitting pass on tree ssa
authorlaw <law@138bc75d-0d04-0410-961f-82ee72b054a4>
Fri, 13 Nov 2015 23:31:51 +0000 (23:31 +0000)
committerlaw <law@138bc75d-0d04-0410-961f-82ee72b054a4>
Fri, 13 Nov 2015 23:31:51 +0000 (23:31 +0000)
commitb0e3fe9603e8f733d29b95c1f7725f47c910c6cf
tree5b2631fd0e6dc942bbd89ba9465f3c9d6d96aaa6
parentbb0363917ab6674c9e652f3d083644ef6a8f6a74
[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.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@230364 138bc75d-0d04-0410-961f-82ee72b054a4
13 files changed:
gcc/ChangeLog
gcc/Makefile.in
gcc/common.opt
gcc/doc/invoke.texi
gcc/gimple-ssa-split-paths.c [new file with mode: 0644]
gcc/opts.c
gcc/passes.def
gcc/testsuite/ChangeLog
gcc/testsuite/gcc.dg/tree-ssa/split-path-1.c [new file with mode: 0644]
gcc/timevar.def
gcc/tracer.c
gcc/tracer.h [new file with mode: 0644]
gcc/tree-pass.h