]> git.ipfire.org Git - thirdparty/gcc.git/commitdiff
backport: [multiple changes]
authorRichard Biener <rguenth@gcc.gnu.org>
Wed, 7 May 2014 10:07:09 +0000 (10:07 +0000)
committerRichard Biener <rguenth@gcc.gnu.org>
Wed, 7 May 2014 10:07:09 +0000 (10:07 +0000)
2014-05-07  Richard Biener  <rguenther@suse.de>

Backport from mainline
2013-11-29  Richard Biener  <rguenther@suse.de>

PR tree-optimization/59334
* tree-ssa-dce.c (eliminate_unnecessary_stmts): Fix bug
in previous commit.

2013-11-28  Richard Biener  <rguenther@suse.de>

PR tree-optimization/59330
* tree-ssa-dce.c (eliminate_unnecessary_stmts): Simplify
and fix delayed marking of free calls not necessary.

* gcc.dg/torture/pr59330.c: New testcase.

2014-01-09  Richard Biener  <rguenther@suse.de>

PR tree-optimization/59715
* tree-cfg.h (split_critical_edges): Declare.
* tree-cfg.c (split_critical_edges): Export.
* tree-ssa-sink.c (execute_sink_code): Split critical edges.

* gcc.dg/torture/pr59715.c: New testcase.

From-SVN: r210147

gcc/tree-flow.h

index 319be2bb6184d092e45be2f53df4a6ff7bb8b0cb..d39abbe5f77c5dbf7430f504e5343cf9bc28b253 100644 (file)
@@ -466,6 +466,7 @@ extern basic_block move_sese_region_to_fn (struct function *, basic_block,
                                           basic_block, tree);
 void remove_edge_and_dominated_blocks (edge);
 bool tree_node_can_be_shared (tree);
+extern unsigned int split_critical_edges (void);
 
 /* In tree-cfgcleanup.c  */
 extern bitmap cfgcleanup_altered_bbs;