re PR rtl-optimization/80747 (gcc.dg/tree-ssa/tailrecursion-4.c fails with ICE when...
authorJakub Jelinek <jakub@redhat.com>
Thu, 21 Dec 2017 19:28:10 +0000 (20:28 +0100)
committerJakub Jelinek <jakub@gcc.gnu.org>
Thu, 21 Dec 2017 19:28:10 +0000 (20:28 +0100)
commit63e1159cce00ff64b4b60108f4e278050ca36f0f
tree50e7acc64c90af764212da7bce7be2d500da1cee
parent9b8e85a5e3be803e0b476a8bbcb8aee0e9c48837
re PR rtl-optimization/80747 (gcc.dg/tree-ssa/tailrecursion-4.c fails with ICE when compiled with options "-fprofile-use -freorder-blocks-and-partition")

PR rtl-optimization/80747
PR rtl-optimization/83512
* cfgrtl.c (force_nonfallthru_and_redirect): When splitting
succ edge from ENTRY, copy partition from e->dest to the newly
created bb.
* bb-reorder.c (reorder_basic_blocks_simple): If last_tail is
ENTRY, use BB_PARTITION of its successor block as current_partition.
Don't copy partition when splitting succ edge from ENTRY.

* gcc.dg/pr80747.c: New test.
* gcc.dg/pr83512.c: New test.

From-SVN: r255954
gcc/ChangeLog
gcc/bb-reorder.c
gcc/cfgrtl.c
gcc/testsuite/ChangeLog
gcc/testsuite/gcc.dg/pr80747.c [new file with mode: 0644]
gcc/testsuite/gcc.dg/pr83512.c [new file with mode: 0644]