2017-06-29 Richard Biener <rguenther@suse.de>
commiteede5d6fce327a1d493962c84b92b90537cc9905
authorrguenth <rguenth@138bc75d-0d04-0410-961f-82ee72b054a4>
Thu, 29 Jun 2017 11:25:29 +0000 (29 11:25 +0000)
committerrguenth <rguenth@138bc75d-0d04-0410-961f-82ee72b054a4>
Thu, 29 Jun 2017 11:25:29 +0000 (29 11:25 +0000)
treeb04e0bef1db0be49b0cd9205bc42896a05b79fe4
parentb2d4d2bbbe45b1b02cfbd3f7ebdacedbb28aed93
2017-06-29  Richard Biener  <rguenther@suse.de>

* tree-cfg.c (group_case_labels_stmt): Return whether we changed
anything.
(group_case_labels): Likewise.
(find_taken_edge): Push sanity checking on val to workers...
(find_taken_edge_cond_expr): ... here
(find_taken_edge_switch_expr): ... and here, handle cases
with just a default label.
* tree-cfg.h (group_case_labels_stmt): Adjust prototype.
(group_case_labels): Likewise.
* tree-cfgcleanup.c (execute_cleanup_cfg_post_optimizing): When
group_case_labels does anything cleanup the CFG again.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@249780 138bc75d-0d04-0410-961f-82ee72b054a4
gcc/ChangeLog
gcc/tree-cfg.c
gcc/tree-cfg.h
gcc/tree-cfgcleanup.c