diff options
author | Jeff Law <law@redhat.com> | 2002-06-04 11:46:14 -0600 |
---|---|---|
committer | Jeff Law <law@gcc.gnu.org> | 2002-06-04 11:46:14 -0600 |
commit | 85d692168905f7ccb3463f5b8a1fda54fe7ea22f (patch) | |
tree | 100d6f14c9cba9eedae456288118fc9c150d270b /gcc/haifa-sched.c | |
parent | 63f4a88e2873b14f843f02a0aeb4c8de73c51f57 (diff) | |
download | gcc-85d692168905f7ccb3463f5b8a1fda54fe7ea22f.zip gcc-85d692168905f7ccb3463f5b8a1fda54fe7ea22f.tar.gz gcc-85d692168905f7ccb3463f5b8a1fda54fe7ea22f.tar.bz2 |
sched-int.h (struct deps): New field libcall_block_tail_insn.
* sched-int.h (struct deps): New field libcall_block_tail_insn.
* sched_deps.c (init_deps): Initialize libcall_block_tail_insn.
* sched_deps.c (sched_analyze_insn): If libcall_block_tail_insn
is set, then mark the current insn as being part of a libcall
scheduling group.
(sched_analyze): Set and clear libcall_block_tail_insn appropriately.
* haifa-sched.c (schedule_block): Do not count USE or CLOBBER
insns against the issue rate.
From-SVN: r54251
Diffstat (limited to 'gcc/haifa-sched.c')
-rw-r--r-- | gcc/haifa-sched.c | 5 |
1 files changed, 4 insertions, 1 deletions
diff --git a/gcc/haifa-sched.c b/gcc/haifa-sched.c index b59f7e1..0dc84e5 100644 --- a/gcc/haifa-sched.c +++ b/gcc/haifa-sched.c @@ -2166,7 +2166,10 @@ schedule_block (b, rgn_n_insns) can_issue_more = (*targetm.sched.variable_issue) (sched_dump, sched_verbose, insn, can_issue_more); - else + /* A naked CLOBBER or USE generates no instruction, so do + not count them against the issue rate. */ + else if (GET_CODE (PATTERN (insn)) != USE + && GET_CODE (PATTERN (insn)) != CLOBBER) can_issue_more--; schedule_insn (insn, &ready, clock_var); |