summaryrefslogtreecommitdiff
path: root/gcc/sched-ebb.c
diff options
context:
space:
mode:
authorvmakarov <vmakarov@138bc75d-0d04-0410-961f-82ee72b054a4>2003-01-17 00:00:18 +0000
committervmakarov <vmakarov@138bc75d-0d04-0410-961f-82ee72b054a4>2003-01-17 00:00:18 +0000
commit6dff42fd775ffa01354e0fab5ce8408c4ce1266d (patch)
tree6a518c0a40b187dcecd0e59e899e3632f564f628 /gcc/sched-ebb.c
parentbbb1a791317eccd866842cb4e79b2986ca3c4619 (diff)
downloadgcc-6dff42fd775ffa01354e0fab5ce8408c4ce1266d.tar.gz
2003-01-16 Vladimir Makarov <vmakarov@redhat.com>
* haifa-sched.c (move_insn): Restore moving all schedule group. (set_priorities): Restore taking SCHED_GROUP_P into account. * sched-deps.c (add_dependence): Restore processing the last group insn. (remove_dependence, group_leader): Restore the functions. (set_sched_group_p): Restore adding dependencies from previous insn in the group. (compute_forward_dependences): Restore usage of group_leader. * sched-ebb.c (init_ready_list): Restore taking SCHED_GROUP_P into account. * sched-rgn.c (init_ready_list): Restore taking SCHED_GROUP_P into account. (can_schedule_ready_p): Ditto. (add_branch_dependences): Restore skipping over the group insns. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@61412 138bc75d-0d04-0410-961f-82ee72b054a4
Diffstat (limited to 'gcc/sched-ebb.c')
-rw-r--r--gcc/sched-ebb.c11
1 files changed, 9 insertions, 2 deletions
diff --git a/gcc/sched-ebb.c b/gcc/sched-ebb.c
index 29189a68d0c..59f7ac04329 100644
--- a/gcc/sched-ebb.c
+++ b/gcc/sched-ebb.c
@@ -90,9 +90,16 @@ init_ready_list (ready)
Count number of insns in the target block being scheduled. */
for (insn = NEXT_INSN (prev_head); insn != next_tail; insn = NEXT_INSN (insn))
{
- if (INSN_DEP_COUNT (insn) == 0)
+ rtx next;
+
+ if (! INSN_P (insn))
+ continue;
+ next = NEXT_INSN (insn);
+
+ if (INSN_DEP_COUNT (insn) == 0
+ && (! INSN_P (next) || SCHED_GROUP_P (next) == 0))
ready_add (ready, insn);
- if (!(SCHED_GROUP_P (insn)))
+ if (! SCHED_GROUP_P (insn))
target_n_insns++;
}
}