Commit 61a17dca by James Greenhalgh Committed by James Greenhalgh

[Haifa Scheduler] Fix latent bug in macro-fusion/instruction grouping

gcc/

	* haifa-sched.c (recompute_todo_spec): Treat SCHED_GROUP_P
	as forcing a HARD_DEP between instructions, thereby
	disallowing rewriting to break dependencies.

From-SVN: r220751
parent 87be7f0c
2015-02-17 James Greenhalgh <james.greenhalgh@arm.com>
* haifa-sched.c (recompute_todo_spec): Treat SCHED_GROUP_P
as forcing a HARD_DEP between instructions, thereby
disallowing rewriting to break dependencies.
2015-02-16 Jan Hubicka <hubicka@ucw.cz>
* symtab.c (symtab_node::verify_base): Verify body_removed->!definiton
......
......@@ -1233,6 +1233,11 @@ recompute_todo_spec (rtx_insn *next, bool for_backtrack)
if (!sd_lists_empty_p (next, SD_LIST_HARD_BACK))
return HARD_DEP;
/* If NEXT is intended to sit adjacent to this instruction, we don't
want to try to break any dependencies. Treat it as a HARD_DEP. */
if (SCHED_GROUP_P (next))
return HARD_DEP;
/* Now we've got NEXT with speculative deps only.
1. Look at the deps to see what we have to do.
2. Check if we can do 'todo'. */
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment