diff options
author | Andrew MacLeod <amacleod@redhat.com> | 2001-07-26 13:59:22 +0000 |
---|---|---|
committer | Andrew Macleod <amacleod@gcc.gnu.org> | 2001-07-26 13:59:22 +0000 |
commit | 4a121cc34cd8153380aee3246979b8fb35e2a88f (patch) | |
tree | d529585912a27f24d918c1691b52427ec3a93d8a /gcc/sched-int.h | |
parent | db3ef87b8a1858f77998a9e8a5275cc5755350d7 (diff) | |
download | gcc-4a121cc34cd8153380aee3246979b8fb35e2a88f.zip gcc-4a121cc34cd8153380aee3246979b8fb35e2a88f.tar.gz gcc-4a121cc34cd8153380aee3246979b8fb35e2a88f.tar.bz2 |
params.def (PARAM_MAX_PENDING_LIST_LENGTH): Add parameter to limit length of dependancy flush list.
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.
From-SVN: r44398
Diffstat (limited to 'gcc/sched-int.h')
-rw-r--r-- | gcc/sched-int.h | 4 |
1 files changed, 4 insertions, 0 deletions
diff --git a/gcc/sched-int.h b/gcc/sched-int.h index 0eb2e66..0b7ebab 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 |