diff options
Diffstat (limited to 'gcc')
-rw-r--r-- | gcc/ChangeLog | 5 | ||||
-rw-r--r-- | gcc/modulo-sched.c | 7 |
2 files changed, 10 insertions, 2 deletions
diff --git a/gcc/ChangeLog b/gcc/ChangeLog index 6c323f6..8188623 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 7134bfc..bd49f9f 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); |