summaryrefslogtreecommitdiff
path: root/gcc/sched-int.h
diff options
context:
space:
mode:
authoramacleod <amacleod@138bc75d-0d04-0410-961f-82ee72b054a4>2001-07-26 13:59:22 +0000
committeramacleod <amacleod@138bc75d-0d04-0410-961f-82ee72b054a4>2001-07-26 13:59:22 +0000
commit85de291ed5d11eab35e18498b64be4c807cb39f5 (patch)
treed529585912a27f24d918c1691b52427ec3a93d8a /gcc/sched-int.h
parentf99445ceede4ac11d54ce93c78a61c3c9e38dc66 (diff)
downloadgcc-85de291ed5d11eab35e18498b64be4c807cb39f5.tar.gz
2001-07-26 Andrew MacLeod <amacleod@redhat.com>
* params.def (PARAM_MAX_PENDING_LIST_LENGTH): Add parameter to limit length of dependancy flush list. * params.h (MAX_PENDING_LIST_LENGTH): Define. * sched-int.h (struct deps): Add pending_flush_length field. * sched-deps.c (flush_pending_lists): Last_pending_memory_flush now has 1 element in it. (sched_analyze_1): Use MAX_PENDING_LIST_LENGTH. (sched_analyze): After a jump, if the pending memory flush list is too large, flush the pending lists. (init_deps): Initialize pending_flush_length to 0. * doc/invoke.texi (max_pending_list_length): Document parameter. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@44398 138bc75d-0d04-0410-961f-82ee72b054a4
Diffstat (limited to 'gcc/sched-int.h')
-rw-r--r--gcc/sched-int.h4
1 files changed, 4 insertions, 0 deletions
diff --git a/gcc/sched-int.h b/gcc/sched-int.h
index 0eb2e668279..0b7ebab08d7 100644
--- a/gcc/sched-int.h
+++ b/gcc/sched-int.h
@@ -53,6 +53,10 @@ struct deps
a function of the length of these pending lists. */
int pending_lists_length;
+ /* Length of the pending memory flush list. Large functions with no
+ calls may build up extremely large lists. */
+ int pending_flush_length;
+
/* The last insn upon which all memory references must depend.
This is an insn which flushed the pending lists, creating a dependency
between it and all previously pending memory references. This creates