diff options
author | Jakub Jelinek <jakub@redhat.com> | 2011-03-17 13:36:04 +0100 |
---|---|---|
committer | Jakub Jelinek <jakub@gcc.gnu.org> | 2011-03-17 13:36:04 +0100 |
commit | dabd47e701a73fca7f4e2495b5a86704bf0a1855 (patch) | |
tree | c09b459b96bf1b799f0dc616fcf477cc1bb299cd /gcc/params.def | |
parent | 1b6fa86002afb4a8f28ab40afc812ec5e73ccba6 (diff) | |
download | gcc-dabd47e701a73fca7f4e2495b5a86704bf0a1855.zip gcc-dabd47e701a73fca7f4e2495b5a86704bf0a1855.tar.gz gcc-dabd47e701a73fca7f4e2495b5a86704bf0a1855.tar.bz2 |
re PR rtl-optimization/48141 (DSE compile time hog)
PR rtl-optimization/48141
* params.def (PARAM_MAX_DSE_ACTIVE_LOCAL_STORES): New.
* dse.c: Include params.h.
(active_local_stores_len): New variable.
(add_wild_read, dse_step1): Clear it when setting active_local_stores
to NULL.
(record_store, check_mem_read_rtx): Decrease it when removing
from the chain.
(scan_insn): Likewise. Increase it when adding to chain, if it
reaches PARAM_MAX_DSE_ACTIVE_LOCAL_STORES limit, set to 1 and
set active_local_stores to NULL before the addition.
* Makefile.in (dse.o): Depend on $(PARAMS_H).
From-SVN: r171090
Diffstat (limited to 'gcc/params.def')
-rw-r--r-- | gcc/params.def | 6 |
1 files changed, 6 insertions, 0 deletions
diff --git a/gcc/params.def b/gcc/params.def index 5749eb2..e5a82e9 100644 --- a/gcc/params.def +++ b/gcc/params.def @@ -698,6 +698,12 @@ DEFPARAM(PARAM_MAX_SCHED_READY_INSNS, "The maximum number of instructions ready to be issued to be considered by the scheduler during the first scheduling pass", 100, 0, 0) +/* This is the maximum number of active local stores RTL DSE will consider. */ +DEFPARAM (PARAM_MAX_DSE_ACTIVE_LOCAL_STORES, + "max-dse-active-local-stores", + "Maximum number of active local stores in RTL dead store elimination", + 5000, 0, 0) + /* Prefetching and cache-optimizations related parameters. Default values are usually set by machine description. */ |