summaryrefslogtreecommitdiff
path: root/gcc
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
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')
-rw-r--r--gcc/ChangeLog5
-rw-r--r--gcc/modulo-sched.c7
2 files changed, 10 insertions, 2 deletions
diff --git a/gcc/ChangeLog b/gcc/ChangeLog
index 6c323f6d822..81886235bd6 100644
--- a/gcc/ChangeLog
+++ b/gcc/ChangeLog
@@ -1,3 +1,8 @@
+2009-03-31 Ayal Zaks <zaks@il.ibm.com>
+
+ * modulo-sched.c (sms_schedule_by_order): Pass the actual
+ schedulable rows to compute_split_row.
+
2009-03-31 Ben Elliston <bje@au.ibm.com>
PR target/31635
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);