aboutsummaryrefslogtreecommitdiff
path: root/gcc/sched-int.h
diff options
context:
space:
mode:
authorJeff Law <law@redhat.com>2002-06-04 11:46:14 -0600
committerJeff Law <law@gcc.gnu.org>2002-06-04 11:46:14 -0600
commit85d692168905f7ccb3463f5b8a1fda54fe7ea22f (patch)
tree100d6f14c9cba9eedae456288118fc9c150d270b /gcc/sched-int.h
parent63f4a88e2873b14f843f02a0aeb4c8de73c51f57 (diff)
downloadgcc-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/sched-int.h')
-rw-r--r--gcc/sched-int.h6
1 files changed, 6 insertions, 0 deletions
diff --git a/gcc/sched-int.h b/gcc/sched-int.h
index 56c200e..9ec916e 100644
--- a/gcc/sched-int.h
+++ b/gcc/sched-int.h
@@ -86,6 +86,12 @@ struct deps
the call. */
bool in_post_call_group_p;
+ /* Set to the tail insn of the outermost libcall block.
+
+ When nonzero, we will mark each insn processed by sched_analyze_insn
+ with SCHED_GROUP_P to ensure libcalls are scheduled as a unit. */
+ rtx libcall_block_tail_insn;
+
/* The maximum register number for the following arrays. Before reload
this is max_reg_num; after reload it is FIRST_PSEUDO_REGISTER. */
int max_reg;