/* params.def - Run-time parameters.
- Copyright (C) 2001-2015 Free Software Foundation, Inc.
+ Copyright (C) 2001-2017 Free Software Foundation, Inc.
Written by Mark Mitchell <mark@codesourcery.com>.
This file is part of GCC.
"The maximum number of unswitchings in a single loop.",
3, 0, 0)
+/* The maximum number of insns in loop header duplicated by he copy loop
+ headers pass. */
+DEFPARAM(PARAM_MAX_LOOP_HEADER_INSNS,
+ "max-loop-header-insns",
+ "The maximum number of insns in loop header duplicated by he copy loop headers pass.",
+ 20, 0, 0)
+
/* The maximum number of iterations of a loop the brute force algorithm
for analysis of # of iterations of the loop tries to evaluate. */
DEFPARAM(PARAM_MAX_ITERATIONS_TO_TRACK,
DEFPARAM (PARAM_ALIGN_LOOP_ITERATIONS,
"align-loop-iterations",
- "Loops iterating at least selected number of iterations will get loop alignement..",
+ "Loops iterating at least selected number of iterations will get loop alignment..",
4, 0, 0)
/* For guessed profiles, the loops having unknown number of iterations
DEFPARAM(PARAM_IV_CONSIDER_ALL_CANDIDATES_BOUND,
"iv-consider-all-candidates-bound",
"Bound on number of candidates below that all candidates are considered in iv optimizations.",
- 30, 0, 0)
+ 40, 0, 0)
/* The induction variable optimizations give up on loops that contain more
induction variable uses. */
"If number of candidates in the set is smaller, we always try to remove unused ivs during its optimization.",
10, 0, 0)
+DEFPARAM(PARAM_AVG_LOOP_NITER,
+ "avg-loop-niter",
+ "Average number of iterations of a loop.",
+ 10, 1, 0)
+
DEFPARAM(PARAM_SCEV_MAX_EXPR_SIZE,
"scev-max-expr-size",
"Bound on size of expressions used in the scalar evolutions analyzer.",
"Bound on the complexity of the expressions in the scalar evolutions analyzer.",
10, 0, 0)
+DEFPARAM (PARAM_MAX_TREE_IF_CONVERSION_PHI_ARGS,
+ "max-tree-if-conversion-phi-args",
+ "Maximum number of arguments in a PHI supported by TREE if-conversion "
+ "unless the loop is marked with simd pragma.",
+ 4, 2, 0)
+
DEFPARAM(PARAM_VECT_MAX_VERSION_FOR_ALIGNMENT_CHECKS,
"vect-max-version-for-alignment-checks",
"Bound on number of runtime checks inserted by the vectorizer's loop versioning for alignment check.",
DEFPARAM (PARAM_MAX_ISL_OPERATIONS,
"max-isl-operations",
- "maximum number of ISL operations, 0 means unlimited",
+ "maximum number of isl operations, 0 means unlimited",
350000, 0, 0)
/* Avoid data dependence analysis on very large loops. */
DEFPARAM (MIN_PARTITION_SIZE,
"lto-min-partition",
"Minimal size of a partition for LTO (in estimated instructions).",
- 1000, 0, 0)
+ 10000, 0, 0)
+
+DEFPARAM (MAX_PARTITION_SIZE,
+ "lto-max-partition",
+ "Maximal size of a partition for LTO (in estimated instructions).",
+ 1000000, 0, INT_MAX)
/* Diagnostic parameters. */
"Maximum amount of similar bbs to compare a bb with.",
10, 0, 0)
+DEFPARAM (PARAM_STORE_MERGING_ALLOW_UNALIGNED,
+ "store-merging-allow-unaligned",
+ "Allow the store merging pass to introduce unaligned stores "
+ "if it is legal to do so",
+ 1, 0, 1)
+
+DEFPARAM (PARAM_MAX_STORES_TO_MERGE,
+ "max-stores-to-merge",
+ "Maximum number of constant stores to merge in the"
+ "store merging pass",
+ 64, 2, 0)
+
DEFPARAM (PARAM_MAX_TAIL_MERGE_ITERATIONS,
"max-tail-merge-iterations",
"Maximum amount of iterations of the pass over a function.",
"in function becomes greater or equal to this number.",
7000, 0, INT_MAX)
+DEFPARAM (PARAM_USE_AFTER_SCOPE_DIRECT_EMISSION_THRESHOLD,
+ "use-after-scope-direct-emission-threshold",
+ "Use direct poisoning/unpoisoning intructions for variables "
+ "smaller or equal to this number.",
+ 256, 0, INT_MAX)
+
DEFPARAM (PARAM_UNINIT_CONTROL_DEP_ATTEMPTS,
"uninit-control-dep-attempts",
"Maximum number of nested calls to search for control dependencies "
"constructor generated by Pointer Bounds Checker.",
5000, 100, 0)
+DEFPARAM (PARAM_FSM_SCALE_PATH_STMTS,
+ "fsm-scale-path-stmts",
+ "Scale factor to apply to the number of statements in a threading path when comparing to the number of (scaled) blocks.",
+ 2, 1, 10)
+
+DEFPARAM (PARAM_FSM_MAXIMUM_PHI_ARGUMENTS,
+ "fsm-maximum-phi-arguments",
+ "Maximum number of arguments a PHI may have before the FSM threader will not try to thread through its block.",
+ 100, 1, 999999)
+
+DEFPARAM (PARAM_FSM_SCALE_PATH_BLOCKS,
+ "fsm-scale-path-blocks",
+ "Scale factor to apply to the number of blocks in a threading path when comparing to the number of (scaled) statements.",
+ 3, 1, 10)
+
DEFPARAM (PARAM_MAX_FSM_THREAD_PATH_INSNS,
"max-fsm-thread-path-insns",
"Maximum number of instructions to copy when duplicating blocks on a finite state automaton jump thread path.",
"max-ssa-name-query-depth",
"Maximum recursion depth allowed when querying a property of an"
" SSA name.",
- 2, 1, 0)
+ 3, 1, 0)
+
+DEFPARAM (PARAM_MAX_RTL_IF_CONVERSION_INSNS,
+ "max-rtl-if-conversion-insns",
+ "Maximum number of insns in a basic block to consider for RTL "
+ "if-conversion.",
+ 10, 0, 99)
+
+DEFPARAM (PARAM_MAX_RTL_IF_CONVERSION_PREDICTABLE_COST,
+ "max-rtl-if-conversion-predictable-cost",
+ "Maximum permissible cost for the sequence that would be "
+ "generated by the RTL if-conversion pass for a branch that "
+ "is considered predictable.",
+ 20, 0, 200)
+
+DEFPARAM (PARAM_MAX_RTL_IF_CONVERSION_UNPREDICTABLE_COST,
+ "max-rtl-if-conversion-unpredictable-cost",
+ "Maximum permissible cost for the sequence that would be "
+ "generated by the RTL if-conversion pass for a branch that "
+ "is considered unpredictable.",
+ 40, 0, 200)
+
+DEFPARAM (PARAM_HSA_GEN_DEBUG_STORES,
+ "hsa-gen-debug-stores",
+ "Level of hsa debug stores verbosity",
+ 0, 0, 1)
+
+DEFPARAM (PARAM_MAX_SPECULATIVE_DEVIRT_MAYDEFS,
+ "max-speculative-devirt-maydefs",
+ "Maximum number of may-defs visited when devirtualizing "
+ "speculatively", 50, 0, 0)
+
+DEFPARAM (PARAM_MAX_VRP_SWITCH_ASSERTIONS,
+ "max-vrp-switch-assertions",
+ "Maximum number of assertions to add along the default "
+ "edge of a switch statement during VRP",
+ 10, 0, 0)
+
+DEFPARAM (PARAM_VECT_EPILOGUES_NOMASK,
+ "vect-epilogues-nomask",
+ "Enable loop epilogue vectorization using smaller vector size.",
+ 0, 0, 1)
+
/*
Local variables: