summaryrefslogtreecommitdiff
path: root/gcc/modulo-sched.c
diff options
context:
space:
mode:
authorrevitale <revitale@138bc75d-0d04-0410-961f-82ee72b054a4>2009-03-31 06:19:06 +0000
committerrevitale <revitale@138bc75d-0d04-0410-961f-82ee72b054a4>2009-03-31 06:19:06 +0000
commit7af239b5581b3391731254babaa05ec512f46953 (patch)
tree6a788421a09216a743934cc9663c126f27d8d2fe /gcc/modulo-sched.c
parent09271b9d12c1f0cf1e8a74e254dca14510ef2644 (diff)
downloadgcc-7af239b5581b3391731254babaa05ec512f46953.tar.gz
SMS - Pass the actual schedulable rows to compute_split_row
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@145333 138bc75d-0d04-0410-961f-82ee72b054a4
Diffstat (limited to 'gcc/modulo-sched.c')
-rw-r--r--gcc/modulo-sched.c7
1 files changed, 5 insertions, 2 deletions
diff --git a/gcc/modulo-sched.c b/gcc/modulo-sched.c
index 7134bfc0d00..bd49f9f9b6a 100644
--- a/gcc/modulo-sched.c
+++ b/gcc/modulo-sched.c
@@ -1832,11 +1832,14 @@ sms_schedule_by_order (ddg_ptr g, int mii, int maxii, int *nodes_order)
}
num_splits++;
+ /* The scheduling window is exclusive of 'end'
+ whereas compute_split_window() expects an inclusive,
+ ordered range. */
if (step == 1)
- split_row = compute_split_row (sched_nodes, start, end,
+ split_row = compute_split_row (sched_nodes, start, end - 1,
ps->ii, u_node);
else
- split_row = compute_split_row (sched_nodes, end, start,
+ split_row = compute_split_row (sched_nodes, end + 1, start,
ps->ii, u_node);
ps_insert_empty_row (ps, split_row, sched_nodes);