summaryrefslogtreecommitdiff
path: root/gcc/params.def
diff options
context:
space:
mode:
authorhagog <hagog@138bc75d-0d04-0410-961f-82ee72b054a4>2004-05-25 12:55:06 +0000
committerhagog <hagog@138bc75d-0d04-0410-961f-82ee72b054a4>2004-05-25 12:55:06 +0000
commit406a73e72e285d52b83924c5c6a0347260b2579e (patch)
treeba0032753f675cc964af30f84d718202207f1c63 /gcc/params.def
parentd263732c915b08ccfb5ef155ed27a8671760dc91 (diff)
downloadgcc-406a73e72e285d52b83924c5c6a0347260b2579e.tar.gz
* ddg.h, ddg.c, modulo-sched.c: New files.
* cfglayout.c (duplicate_insn_chain): Remove "static" and push internals to "dupicate_insn". (duplicate_insn): New function. * cfglayout.h (duplicate_insn_chain, duplicate_insn): New declarations. * common.opt (fmodulo-sched): New flag. * df.c (df_bb_regno_last_use_find, df_bb_regno_first_def_find): Remove static and forward declaration. (df_find_def, df_reg_used, df_bb_regno_last_def_find): New functions. * df.h (df_bb_regno_last_use_find, df_bb_regno_first_def_find, df_bb_regno_last_def_find, df_find_def, df_reg_used): New declarations. * flags.h (flag_modulo_sched): New flag. * opts.c (common_handle_option): Handle modulo-sched flag. * params.def (max-sms-loop-number, sms-max-ii-factor, sms-dfa-history, sms-loop-average-count-threshold): New parameters. * params.h (MAX_SMS_LOOP_NUMBER, SMS_MAX_II_FACTOR, SMS_DFA_HISTORY, SMS_LOOP_AVERAGE_COUNT_THRESHOLD): New parameters. * passes.c ("sms", "sms-vcg"): New dumps. (rest_of_handle_sched): Call sms_schedule. * rtl.h (sms_schedule): New declaration. * timevar.def (TV_SMS): New. * toplev.c (flag_modulo_sched): Initialize. (f_options): Handle -fmodulo-sched option. * docs/invoke.texi: Document -fmodulo-sched & -dm options. * docs/passes.texi: Document new SMS pass.f toplev.c doc/invoke.texi doc/passes.texi git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@82235 138bc75d-0d04-0410-961f-82ee72b054a4
Diffstat (limited to 'gcc/params.def')
-rw-r--r--gcc/params.def23
1 files changed, 23 insertions, 0 deletions
diff --git a/gcc/params.def b/gcc/params.def
index ff77eb488ce..72095affd4f 100644
--- a/gcc/params.def
+++ b/gcc/params.def
@@ -229,6 +229,29 @@ DEFPARAM(PARAM_MAX_UNSWITCH_LEVEL,
"The maximum number of unswitchings in a single loop",
3)
+DEFPARAM(PARAM_MAX_SMS_LOOP_NUMBER,
+ "max-sms-loop-number",
+ "Maximum number of loops to perform swing modulo scheduling on \
+ (mainly for debugging)",
+ -1)
+
+/* This parameter is used to tune SMS MAX II calculations. */
+DEFPARAM(PARAM_SMS_MAX_II_FACTOR,
+ "sms-max-ii-factor",
+ "A factor for tuning the upper bound that swing modulo scheduler uses \
+ for scheduling a loop",
+ 100)
+DEFPARAM(PARAM_SMS_DFA_HISTORY,
+ "sms-dfa-history",
+ "The number of cycles the swing modulo scheduler considers when \
+ checking conflicts using DFA",
+ 0)
+DEFPARAM(PARAM_SMS_LOOP_AVERAGE_COUNT_THRESHOLD,
+ "sms-loop-average-count-threshold",
+ "A threshold on the average loop count considered by the swing modulo \
+ scheduler",
+ 0)
+
DEFPARAM(HOT_BB_COUNT_FRACTION,
"hot-bb-count-fraction",
"Select fraction of the maximal count of repetitions of basic block in \