Commit 2d1b811d by Bernd Schmidt Committed by Bernd Schmidt

Rotate bundles earlier in ia64_sched_reorder

From-SVN: r40157
parent 7a87c39c
......@@ -5,6 +5,7 @@
(gen_nop_type): New function.
(ia64_emit_nops): New function.
(ia64_reorg): Call it.
(ia64_sched_reorder): Move code that rotates bundles up a bit.
* reload1.c (eliminate_regs_in_insn): Restrict the special case
code not to try to optimize adds with anything but a REG destination.
......
......@@ -5665,6 +5665,15 @@ ia64_sched_reorder (dump, sched_verbose, ready, pn_ready, reorder_type)
dump_current_packet (dump);
}
if (reorder_type == 0)
{
if (sched_data.cur == 6)
rotate_two_bundles (sched_verbose ? dump : NULL);
else if (sched_data.cur >= 3)
rotate_one_bundle (sched_verbose ? dump : NULL);
sched_data.first_slot = sched_data.cur;
}
/* First, move all USEs, CLOBBERs and other crud out of the way. */
highest = ready[n_ready - 1];
for (insnp = ready; insnp < e_ready; insnp++)
......@@ -5738,15 +5747,6 @@ ia64_sched_reorder (dump, sched_verbose, ready, pn_ready, reorder_type)
}
}
if (reorder_type == 0)
{
if (sched_data.cur == 6)
rotate_two_bundles (sched_verbose ? dump : NULL);
else if (sched_data.cur >= 3)
rotate_one_bundle (sched_verbose ? dump : NULL);
sched_data.first_slot = sched_data.cur;
}
return itanium_reorder (sched_verbose ? dump : NULL,
ready, e_ready, reorder_type == 1);
}
......
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