Update post order number for merged SCC.
authorBin Cheng <bin.cheng@linux.alibaba.com>
Mon, 16 Mar 2020 03:09:14 +0000 (11:09 +0800)
committerBin Cheng <bin.cheng@linux.alibaba.com>
Mon, 16 Mar 2020 03:11:42 +0000 (11:11 +0800)
commite4e9a59105a81cdd6c1328b0a5ed9fe4cc82840e
tree10c62b24264529db7f77c3b0e85dc5c9dc2901e5
parent5e5ce5371f6a8199108eeade587261bf5593dedf
Update post order number for merged SCC.

Function loop_distribution::break_alias_scc_partitions needs to compute
SCC with runtime alias edges skipped.  As a result, partitions could be
re-assigned larger post order number than SCC's precedent partition and
distributed before the precedent one.  This fixes the issue by updating
the merged partition to the minimal post order in SCC.

gcc/
    PR tree-optimization/94125
    * tree-loop-distribution.c
    (loop_distribution::break_alias_scc_partitions): Update post order
    number for merged scc.

gcc/testsuite/
    PR tree-optimization/94125
    * gcc.dg/tree-ssa/pr94125.c: New test.
gcc/ChangeLog
gcc/testsuite/ChangeLog
gcc/testsuite/gcc.dg/tree-ssa/pr94125.c [new file with mode: 0644]
gcc/tree-loop-distribution.c