Skip to content
Snippets Groups Projects
Commit e0bdccac authored by Bin Cheng's avatar Bin Cheng
Browse files

tree-optimization/98736 - use programing order preserved RPO in ldist

Tree loop distribution uses RPO to build reduced dependence graph,
it's important that RPO preserves the original programing order.
Though it usually does so, when distributing loop nest, exit BB can
be placed before some loop BBs while after loop header.  This patch
fixes the issue by calling rev_post_order_and_mark_dfs_back_seme.

gcc/ChangeLog:

	PR tree-optimization/98736
	* tree-loop-distribution.c
	* (loop_distribution::bb_top_order_init):
	Compute RPO with programing order preserved by calling function
	rev_post_order_and_mark_dfs_back_seme.

gcc/testsuite/ChangeLog:

	PR tree-optimization/98736
	* gcc.c-torture/execute/pr98736.c: New test.
parent a7698c0e
No related branches found
No related tags found
Loading
Loading
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment