diff options
author | dje <dje@138bc75d-0d04-0410-961f-82ee72b054a4> | 2004-03-03 16:32:45 +0000 |
---|---|---|
committer | dje <dje@138bc75d-0d04-0410-961f-82ee72b054a4> | 2004-03-03 16:32:45 +0000 |
commit | 839f841511dc0908d11199c48add0335fd068928 (patch) | |
tree | a9a88dd3608db538ae3d670cde68145ab19f3038 /gcc/toplev.c | |
parent | 399d212bf0da5ed1e49763af597f5cdbcdc40acf (diff) | |
download | gcc-839f841511dc0908d11199c48add0335fd068928.tar.gz |
2004-03-03 Mostafa Hagog <mustafa@il.ibm.com>
* common.opt: Add description of the new -fgcse-after-reload flag.
* flags.h (flag_gcse_after_reload): Declaration of global variable.
* gcse.c (reg_used_on_edge ,reg_set_between_after_reload_p,
reg_used_between_after_reload_p, rtx get_avail_load_store_reg,
is_jump_table_basic_block, bb_has_well_behaved_predecessors,
get_bb_avail_insn, hash_scan_set_after_reload,
compute_hash_table_after_reload, eliminate_partially_redundant_loads,
gcse_after_reload, get_bb_avail_insn): New functions to implement
gcse-after-reload.
(gcse_after_reload_main): New function, the main entry point to
gcse-after-reload.
* rtl.h (gcse_after_reload_main): Declaration of the new function.
* opts.c (common_handle_option): Handle the -fgcse-after-reload flag.
* toplev.c (flag_gcse_after_reload): Initialization.
* passes.c (rest_of_handl_gcse2): Call gcse_after_reload_main.
* params.def (PARAM_GCSE_AFTER_RELOAD_PARTIAL_FRACTION,
PARAM_GCSE_AFTER_RELOAD_CRITICAL_FRACTION): New parameters for tuning
the gcse after reload optimization.
* params.h (GCSE_AFTER_RELOAD_PARTIAL_FRACTION,
GCSE_AFTER_RELOAD_CRITICAL_FRACTION): Two macros to access the tuning
parameters.
* doc/invoke.texi: Documentation for the new flag gcse-after-reload.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@78842 138bc75d-0d04-0410-961f-82ee72b054a4
Diffstat (limited to 'gcc/toplev.c')
-rw-r--r-- | gcc/toplev.c | 4 |
1 files changed, 4 insertions, 0 deletions
diff --git a/gcc/toplev.c b/gcc/toplev.c index da9e7f90bab..8192a1a8ea8 100644 --- a/gcc/toplev.c +++ b/gcc/toplev.c @@ -526,6 +526,9 @@ int flag_gcse_sm = 1; int flag_gcse_las = 1; +/* Nonzero means perform global cse after register allocation. */ +int flag_gcse_after_reload = 0; + /* Perform target register optimization before prologue / epilogue threading. */ @@ -915,6 +918,7 @@ static const lang_independent_options f_options[] = {"gcse-lm", &flag_gcse_lm, 1 }, {"gcse-sm", &flag_gcse_sm, 1 }, {"gcse-las", &flag_gcse_las, 1 }, + {"gcse-after-reload", &flag_gcse_after_reload, 1}, {"branch-target-load-optimize", &flag_branch_target_load_optimize, 1 }, {"branch-target-load-optimize2", &flag_branch_target_load_optimize2, 1 }, {"btr-bb-exclusive", &flag_btr_bb_exclusive, 1 }, |