Name | | |
align-loop-iterations | | Loops iterating at least selected number of iterations will get loop alignment. |
align-threshold | <1,65536> | Select fraction of the maximal frequency of executions of basic block in function given basic block get alignment. |
analyzer-bb-explosion-factor | | The maximum number of 'after supernode' exploded nodes within the analyzer per supernode, before terminating analysis. |
analyzer-max-enodes-per-program-point | | The maximum number of exploded nodes per program point within the analyzer, before terminating analysis of that point. |
analyzer-max-recursion-depth | | The maximum number of times a callsite can appear in a call stack within the analyzer, before terminating analysis of a call that would recurse deeper. |
analyzer-min-snodes-for-call-summary | | The minimum number of supernodes within a function for the analyzer to consider summarizing its effects at call sites. |
asan-globals | <0,1> | Enable asan globals protection. |
asan-instrument-allocas | <0,1> | Enable asan allocas/VLAs protection. |
asan-instrument-reads | <0,1> | Enable asan load operations protection. |
asan-instrument-writes | <0,1> | Enable asan store operations protection. |
asan-instrumentation-with-call-threshold | | Use callbacks instead of inline code if number of accesses in function becomes greater or equal to this number. |
asan-memintrin | <0,1> | Enable asan builtin functions protection. |
asan-stack | <0,1> | Enable asan stack protection. |
asan-use-after-return | <0,1> | Enable asan detection of use-after-return bugs. |
avg-loop-niter | <1,65536> | Average number of iterations of a loop. |
avoid-fma-max-bits | <0,512> | Maximum number of bits for which we avoid creating FMAs. |
builtin-expect-probability | <0,100> | Set the estimated probability in percentage for builtin expect. The default value is 90% probability. |
builtin-string-cmp-inline-length | <0,100> | The maximum length of a constant string for a builtin string cmp call eligible for inlining. The default value is 3. |
case-values-threshold | | The smallest number of different values for which it is best to use a jump-table instead of a tree of conditional branches, if 0, use the default for the machine. |
comdat-sharing-probability | | Probability that COMDAT function will be shared with different compilation unit. |
cxx-max-namespaces-for-diagnostic-help | | Maximum number of namespaces to search for alternatives when name lookup fails. |
dse-max-alias-queries-per-store | | Maximum number of queries into the alias oracle per store. |
dse-max-object-size | | Maximum size (in bytes) of objects tracked bytewise by dead store elimination. |
early-inlining-insns | | Maximal estimated growth of function body caused by early inlining of single call. |
fsm-maximum-phi-arguments | <1,999999> | Maximum number of arguments a PHI may have before the FSM threader will not try to thread through its block. |
fsm-scale-path-blocks | <1,10> | Scale factor to apply to the number of blocks in a threading path when comparing to the number of (scaled) statements. |
fsm-scale-path-stmts | <1,10> | Scale factor to apply to the number of statements in a threading path when comparing to the number of (scaled) blocks. |
gcse-after-reload-critical-fraction | | The threshold ratio of critical edges execution count that permit performing redundancy elimination after reload. |
gcse-after-reload-partial-fraction | | The threshold ratio for performing partial redundancy elimination after reload. |
gcse-cost-distance-ratio | | Scaling factor in calculation of maximum distance an expression can be moved by GCSE optimizations. |
gcse-unrestricted-cost | | Cost at which GCSE optimizations will not constraint the distance an expression can travel. |
ggc-min-expand | | Minimum heap expansion to trigger garbage collection, as a percentage of the total size of the heap. |
ggc-min-heapsize | | Minimum heap size before we start collecting garbage, in kilobytes. |
gimple-fe-computed-hot-bb-threshold | | The number of executions of a basic block which is considered hot. The parameter is used only in GIMPLE FE. |
graphite-allow-codegen-errors | <0,1> | Whether codegen errors should be ICEs when -fchecking. |
graphite-max-arrays-per-scop | | Maximum number of arrays per SCoP. |
graphite-max-nb-scop-params | | Maximum number of parameters in a SCoP. |
hash-table-verification-limit | | The number of elements for which hash table verification is done for each searched element. |
hot-bb-count-fraction | | The denominator n of fraction 1/n of the maximal execution count of a basic block in the entire program that a basic block needs to at least have in order to be considered hot (used in non-LTO mode). |
hot-bb-count-ws-permille | <0,1000> | The number of most executed permilles of the profiled execution of the entire program to which the execution count of a basic block must be part of in order to be considered hot (used in LTO mode). |
hot-bb-frequency-fraction | | The denominator n of fraction 1/n of the execution frequency of the entry block of a function that a basic block of this function needs to at least have in order to be considered hot. |
hsa-gen-debug-stores | <0,1> | Level of hsa debug stores verbosity. |
inline-heuristics-hint-percent | <100,1000000> | The scale (in percents) applied to inline-insns-single and auto limits when heuristics hints that inlining is very profitable. |
inline-min-speedup | <0,100> | The minimal estimated speedup allowing inliner to ignore inline-insns-single and inline-insns-auto. |
inline-unit-growth | | How much can given compilation unit grow because of the inlining (in percent). |
integer-share-limit | <2,65536> | The upper bound for sharing integer constants. |
ipa-cp-eval-threshold | | Threshold ipa-cp opportunity evaluation that is still considered beneficial to clone. |
ipa-cp-loop-hint-bonus | | Compile-time bonus IPA-CP assigns to candidates which make loop bounds or strides known. |
ipa-cp-max-recursive-depth | | Maximum depth of recursive cloning for self-recursive function. |
ipa-cp-min-recursive-probability | | Recursive cloning only when the probability of call being executed exceeds the parameter. |
ipa-cp-recursion-penalty | <0,100> | Percentage penalty the recursive functions will receive when they are evaluated for cloning. |
ipa-cp-single-call-penalty | <0,100> | Percentage penalty functions containing a single call to another function will receive when they are evaluated for cloning. |
ipa-cp-unit-growth | | How much can given compilation unit grow because of the interprocedural constant propagation (in percent). |
ipa-cp-value-list-size | | Maximum size of a list of values associated with each parameter for interprocedural constant propagation. |
ipa-max-aa-steps | | Maximum number of statements that will be visited by IPA formal parameter analysis based on alias analysis in any given function. |
ipa-max-agg-items | | Maximum number of aggregate content items for a parameter in jump functions and lattices. |
ipa-max-param-expr-ops | | Maximum number of operations in a parameter expression that can be handled by IPA analysis. |
ipa-max-switch-predicate-bounds | | Maximal number of boundary endpoints of case ranges of switch statement used during IPA function summary generation. |
ipa-sra-max-replacements | <0,16> | Maximum pieces that IPA-SRA tracks per formal parameter, as a consequence, also the maximum number of replacements of a formal parameter. |
ipa-sra-ptr-growth-factor | | Maximum allowed growth of number and total size of new parameters that ipa-sra replaces a pointer to an aggregate with. |
ira-loop-reserved-regs | | The number of registers in each class kept unused by loop invariant motion. |
ira-max-conflict-table-size | | Max size of conflict table in MB. |
ira-max-loops-num | | Max loops number for regional RA. |
iv-always-prune-cand-set-bound | | If number of candidates in the set is smaller, we always try to remove unused ivs during its optimization. |
iv-consider-all-candidates-bound | | Bound on number of candidates below that all candidates are considered in iv optimizations. |
iv-max-considered-uses | | Bound on number of iv uses in loop optimized in iv optimizations. |
jump-table-max-growth-ratio-for-size | | The maximum code size growth ratio when expanding into a jump table (in percent). The parameter is used when optimizing for size. |
jump-table-max-growth-ratio-for-speed | | The maximum code size growth ratio when expanding into a jump table (in percent). The parameter is used when optimizing for speed. |
l1-cache-line-size | | The size of L1 cache line. |
l1-cache-size | | The size of L1 cache. |
l2-cache-size | | The size of L2 cache. |
large-function-growth | | Maximal growth due to inlining of large function (in percent). |
large-function-insns | | The size of function body to be considered large. |
large-stack-frame-growth | | Maximal stack frame growth due to inlining (in percent). |
large-stack-frame | | The size of stack frame to be considered large. |
large-unit-insns | | The size of translation unit to be considered large. |
lim-expensive | | The minimum cost of an expensive expression in the loop invariant motion. |
logical-op-non-short-circuit | <-1,1> | True if a non-short-circuit operation is optimal. |
loop-block-tile-size | | Size of tiles for loop blocking. |
loop-interchange-max-num-stmts | | The maximum number of stmts in loop nest for loop interchange. |
loop-interchange-stride-ratio | | The minimum stride ratio for loop interchange to be profitable. |
loop-invariant-max-bbs-in-loop | | Max basic blocks number in loop for loop invariant motion. |
loop-max-datarefs-for-datadeps | | Maximum number of datarefs in loop for building loop data dependencies. |
loop-versioning-max-inner-insns | | The maximum number of instructions in an inner loop that is being considered for versioning. |
loop-versioning-max-outer-insns | | The maximum number of instructions in an outer loop that is being considered for versioning, on top of the instructions in inner loops. |
lra-inheritance-ebb-probability-cutoff | <0,100> | Minimal fall-through edge probability in percentage used to add BB to inheritance EBB in LRA. |
lra-max-considered-reload-pseudos | | The max number of reload pseudos which are considered during spilling a non-reload pseudo. |
lto-max-partition | | Maximal size of a partition for LTO (in estimated instructions). |
lto-max-streaming-parallelism | <1,65536> | maximal number of LTO partitions streamed in parallel. |
lto-min-partition | | Minimal size of a partition for LTO (in estimated instructions). |
lto-partitions | <1,65536> | Number of partitions the program should be split to. |
max-average-unrolled-insns | | The maximum number of instructions to consider to unroll in a loop on average. |
max-combine-insns | <2,4> | The maximum number of insns combine tries to combine. |
max-completely-peel-loop-nest-depth | | The maximum depth of a loop nest we completely peel. |
max-completely-peel-times | | The maximum number of peelings of a single loop that is peeled completely. |
max-completely-peeled-insns | | The maximum number of insns of a completely peeled loop. |
max-crossjump-edges | | The maximum number of incoming edges to consider for crossjumping. |
max-cse-insns | | The maximum instructions CSE process before flushing. |
max-cse-path-length | <1,65536> | The maximum length of path considered in cse. |
max-cselib-memory-locations | | The maximum memory locations recorded by cselib. |
max-debug-marker-count | | Max. count of debug markers to expand or inline. |
max-delay-slot-insn-search | | The maximum number of instructions to consider to fill a delay slot. |
max-delay-slot-live-search | | The maximum number of instructions to consider to find accurate live register information. |
max-dse-active-local-stores | | Maximum number of active local stores in RTL dead store elimination. |
max-early-inliner-iterations | | The maximum number of nested indirect inlining performed by early inliner. |
max-fields-for-field-sensitive | | Maximum number of fields in a structure before pointer analysis treats the structure as a single variable. |
max-find-base-term-values | | Maximum number of VALUEs handled during a single find_base_term call. |
max-fsm-thread-length | <1,999999> | Maximum number of basic blocks on a finite state automaton jump thread path. |
max-fsm-thread-path-insns | <1,999999> | Maximum number of instructions to copy when duplicating blocks on a finite state automaton jump thread path. |
max-fsm-thread-paths | <1,999999> | Maximum number of new jump thread paths to create for a finite state automaton. |
max-gcse-insertion-ratio | | The maximum ratio of insertions to deletions of expressions in GCSE. |
max-gcse-memory | | The maximum amount of memory to be allocated by GCSE. |
max-goto-duplication-insns | | The maximum number of insns to duplicate when unfactoring computed gotos. |
max-grow-copy-bb-insns | | The maximum expansion factor when copying basic blocks. |
max-hoist-depth | | Maximum depth of search in the dominator tree for expressions to hoist. |
max-inline-insns-auto | | The maximum number of instructions when automatically inlining. |
max-inline-insns-recursive-auto | | The maximum number of instructions non-inline function can grow to via recursive inlining. |
max-inline-insns-recursive | | The maximum number of instructions inline function can grow to via recursive inlining. |
max-inline-insns-single | | The maximum number of instructions in a single function eligible for inlining. |
max-inline-insns-size | | The maximum number of instructions when inlining for size. |
max-inline-insns-small | | The maximum number of instructions when automatically inlining small functions. |
max-inline-recursive-depth-auto | | The maximum depth of recursive inlining for non-inline functions. |
max-inline-recursive-depth | | The maximum depth of recursive inlining for inline functions. |
max-isl-operations | | Maximum number of isl operations, 0 means unlimited. |
max-iterations-computation-cost | | Bound on the cost of an expression to compute the number of iterations. |
max-iterations-to-track | | Bound on the number of iterations the brute force # of iterations analysis algorithm evaluates. |
max-jump-thread-duplication-stmts | | Maximum number of statements allowed in a block that needs to be duplicated when threading jumps. |
max-last-value-rtl | | The maximum number of RTL nodes that can be recorded as combiner's last value. |
max-loop-header-insns | | The maximum number of insns in loop header duplicated by the copy loop headers pass. |
max-modulo-backtrack-attempts | | The maximum number of backtrack attempts the scheduler should make when modulo scheduling a loop. |
max-partial-antic-length | | Maximum length of partial antic set when performing tree pre optimization. |
max-peel-branches | | The maximum number of branches on the path through the peeled sequence. |
max-peel-times | | The maximum number of peelings of a single loop. |
max-peeled-insns | | The maximum number of insns of a peeled loop. |
max-pending-list-length | | The maximum length of scheduling's pending operations list. |
max-pipeline-region-blocks | | The maximum number of blocks in a region to be considered for interblock scheduling. |
max-pipeline-region-insns | | The maximum number of insns in a region to be considered for interblock scheduling. |
max-pow-sqrt-depth | <1,32> | Maximum depth of sqrt chains to use when synthesizing exponentiation by a real constant. |
max-predicted-iterations | <0,65536> | The maximum number of loop iterations we predict statically. |
max-reload-search-insns | | The maximum number of instructions to search backward when looking for equivalent reload. |
max-rtl-if-conversion-insns | <0,99> | Maximum number of insns in a basic block to consider for RTL if-conversion. |
max-rtl-if-conversion-predictable-cost | <0,200> | Maximum permissible cost for the sequence that would be generated by the RTL if-conversion pass for a branch that is considered predictable. |
max-rtl-if-conversion-unpredictable-cost | <0,200> | Maximum permissible cost for the sequence that would be generated by the RTL if-conversion pass for a branch that is considered unpredictable. |
max-sched-extend-regions-iters | | The maximum number of iterations through CFG to extend regions. |
max-sched-insn-conflict-delay | <1,10> | The maximum conflict delay for an insn to be considered for speculative motion. |
max-sched-ready-insns | <1,65536> | The maximum number of instructions ready to be issued to be considered by the scheduler during the first scheduling pass. |
max-sched-region-blocks | | The maximum number of blocks in a region to be considered for interblock scheduling. |
max-sched-region-insns | | The maximum number of insns in a region to be considered for interblock scheduling. |
max-slsr-cand-scan | <1,999999> | Maximum length of candidate scans for straight-line strength reduction. |
max-speculative-devirt-maydefs | | Maximum number of may-defs visited when devirtualizing speculatively. |
max-ssa-name-query-depth | <1,10> | Maximum recursion depth allowed when querying a property of an SSA name. |
max-stores-to-merge | <2,65536> | Maximum number of constant stores to merge in the store merging pass. |
max-stores-to-sink | | Maximum number of conditional store pairs that can be sunk. |
max-tail-merge-comparisons | | Maximum amount of similar bbs to compare a bb with. |
max-tail-merge-iterations | | Maximum amount of iterations of the pass over a function. |
max-tracked-strlens | | Maximum number of strings for which strlen optimization pass will track string lengths. |
max-tree-if-conversion-phi-args | <2,65536> | Maximum number of arguments in a PHI supported by TREE if-conversion unless the loop is marked with simd pragma. |
max-unroll-times | | The maximum number of unrollings of a single loop. |
max-unrolled-insns | | The maximum number of instructions to consider to unroll in a loop. |
max-unswitch-insns | | The maximum number of insns of an unswitched loop. |
max-unswitch-level | | The maximum number of unswitchings in a single loop. |
max-variable-expansions-in-unroller | | If -fvariable-expansion-in-unroller is used, the maximum number of times that an individual variable will be expanded during loop unrolling. |
max-vartrack-expr-depth | | Max. recursion depth for expanding var tracking expressions. |
max-vartrack-reverse-op-size | | Max. size of loc list for which reverse ops should be added. |
max-vartrack-size | | Max. size of var tracking hash tables. |
max-vrp-switch-assertions | | Maximum number of assertions to add along the default edge of a switch statement during VRP. |
min-crossjump-insns | <1,65536> | The minimum number of matching instructions to consider for crossjumping. |
min-inline-recursive-probability | | Inline recursively only when the probability of call being executed exceeds the parameter. |
min-insn-to-prefetch-ratio | | Min. ratio of insns to prefetches to enable prefetching for a loop with an unknown trip count. |
min-loop-cond-split-prob | <0,100> | The minimum threshold for probability of semi-invariant condition statement to trigger loop split. |
min-nondebug-insn-uid | | The minimum UID to be used for a nondebug insn. |
min-size-for-stack-sharing | | The minimum size of variables taking part in stack slot sharing when not optimizing. |
min-spec-prob | | The minimum probability of reaching a source block for interblock speculative scheduling. |
min-vect-loop-bound | | If -ftree-vectorize is used, the minimal loop bound of a loop to be considered for vectorization. |
parloops-chunk-size | | Chunk size of omp schedule for loops parallelized by parloops. |
parloops-min-per-thread | <2,65536> | Minimum number of iterations per thread of an innermost parallelized loop. |
parloops-schedule | [static|dynamic|guided|auto|runtime] | Schedule type of omp schedule for loops parallelized by parloops. |
partial-inlining-entry-probability | <0,100> | Maximum probability of the entry BB of split region (in percent relative to entry BB of the function) to make partial inlining happen. |
predictable-branch-outcome | <0,50> | Maximal estimated outcome of branch considered predictable. |
prefetch-dynamic-strides | <0,1> | Whether software prefetch hints should be issued for non-constant strides. |
prefetch-latency | | The number of insns executed before prefetch is completed. |
prefetch-min-insn-to-mem-ratio | | Min. ratio of insns to mem ops to enable prefetching in a loop. |
prefetch-minimum-stride | | The minimum constant stride beyond which we should use prefetch hints for. |
profile-func-internal-id | <0,1> | Use internal function id in profile lookup. |
rpo-vn-max-loop-depth | <2,65536> | Maximum depth of a loop nest to fully value-number optimistically. |
sccvn-max-alias-queries-per-access | | Maximum number of disambiguations to perform per memory access. |
scev-max-expr-complexity | | Bound on the complexity of the expressions in the scalar evolutions analyzer. |
scev-max-expr-size | | Bound on size of expressions used in the scalar evolutions analyzer. |
sched-autopref-queue-depth | | Hardware autoprefetcher scheduler model control flag. Number of lookahead cycles the model looks into, at '0' only enable instruction sorting heuristic. Disabled by default. |
sched-mem-true-dep-cost | | Minimal distance between possibly conflicting store and load. |
sched-pressure-algorithm | <1,2> | Which -fsched-pressure algorithm to apply. |
sched-spec-prob-cutoff | <0,100> | The minimal probability of speculation success (in percents), so that speculative insn will be scheduled. |
sched-state-edge-prob-cutoff | <0,100> | The minimum probability an edge must have for the scheduler to save its state across it. |
selsched-insns-to-rename | | Maximum number of instructions in the ready list that are considered eligible for renaming. |
selsched-max-lookahead | | The maximum size of the lookahead window of selective scheduling. |
selsched-max-sched-times | <1,65536> | Maximum number of times that an insn could be scheduled. |
simultaneous-prefetches | | The number of prefetches that can run at the same time. |
sink-frequency-threshold | <0,100> | Target block's relative execution frequency (as a percentage) required to sink a statement. |
slp-max-insns-in-bb | | Maximum number of instructions in basic block to be considered for SLP vectorization. |
sms-dfa-history | <0,16> | The number of cycles the swing modulo scheduler considers when checking conflicts using DFA. |
sms-loop-average-count-threshold | | A threshold on the average loop count considered by the swing modulo scheduler. |
sms-max-ii-factor | <1,16> | A factor for tuning the upper bound that swing modulo scheduler uses for scheduling a loop. |
sms-min-sc | <1,2> | The minimum value of stage count that swing modulo scheduler will generate. |
sra-max-propagations | | Maximum number of artificial accesses to enable forward propagation that Scalar Replacement of Aggregates will keep for one local variable. |
sra-max-scalarization-size-Osize | | Maximum size, in storage units, of an aggregate which should be considered for scalarization when compiling for size. |
sra-max-scalarization-size-Ospeed | | Maximum size, in storage units, of an aggregate which should be considered for scalarization when compiling for speed. |
ssa-name-def-chain-limit | | The maximum number of SSA_NAME assignments to follow in determining a value. |
ssp-buffer-size | <1,65536> | The lower bound for a buffer to be considered for stack smashing protection. |
stack-clash-protection-guard-size | <12,30> | Size of the stack guard expressed as a power of two in bytes. |
stack-clash-protection-probe-interval | <10,16> | Interval in which to probe the stack expressed as a power of two in bytes. |
store-merging-allow-unaligned | <0,1> | Allow the store merging pass to introduce unaligned stores if it is legal to do so. |
store-merging-max-size | <1,65536> | Maximum size of a single store merging region in bytes. |
switch-conversion-max-branch-ratio | <1,65536> | The maximum ratio between array size and switch branches for a switch conversion to take place. |
tm-max-aggregate-size | | Size in bytes after which thread-local aggregates should be instrumented with the logging functions instead of save/restore pairs. |
tracer-dynamic-coverage-feedback | <0,100> | The percentage of function, weighted by execution frequency, that must be covered by trace formation. Used when profile feedback is available. |
tracer-dynamic-coverage | <0,100> | The percentage of function, weighted by execution frequency, that must be covered by trace formation. Used when profile feedback is not available. |
tracer-max-code-growth | | Maximal code growth caused by tail duplication (in percent). |
tracer-min-branch-probability-feedback | <0,100> | Stop forward growth if the probability of best edge is less than this threshold (in percent). Used when profile feedback is available. |
tracer-min-branch-probability | <0,100> | Stop forward growth if the probability of best edge is less than this threshold (in percent). Used when profile feedback is not available. |
tracer-min-branch-ratio | <0,100> | Stop reverse growth if the reverse probability of best edge is less than this threshold (in percent). |
tree-reassoc-width | | Set the maximum number of instructions executed in parallel in reassociated tree. If 0, use the target dependent heuristic. |
uninit-control-dep-attempts | <1,65536> | Maximum number of nested calls to search for control dependencies during uninitialized variable analysis. |
uninlined-function-insns | <0,1000000> | Instruction accounted for function prologue, epilogue and other overhead. |
uninlined-function-time | <0,1000000> | Time accounted for function prologue, epilogue and other overhead. |
uninlined-thunk-insns | <0,1000000> | Instruction accounted for function thunk overhead. |
uninlined-thunk-time | <0,1000000> | Time accounted for function thunk overhead. |
unlikely-bb-count-fraction | | The denominator n of fraction 1/n of the number of profiled runs of the entire program below which the execution count of a basic block must be in order for the basic block to be considered unlikely. |
unroll-jam-max-unroll | | Maximum unroll factor for the unroll-and-jam transformation. |
unroll-jam-min-percent | <0,100> | Minimum percentage of memrefs that must go away for unroll-and-jam to be considered profitable. |
use-after-scope-direct-emission-threshold | | Use direct poisoning/unpoisoning instructions for variables smaller or equal to this number. |
use-canonical-types | <0,1> | Whether to use canonical types. |
vect-epilogues-nomask | <0,1> | Enable loop epilogue vectorization using smaller vector size. |
vect-max-peeling-for-alignment | <-1,64> | Maximum number of loop peels to enhance alignment of data references in a loop. |
vect-max-version-for-alias-checks | | Bound on number of runtime checks inserted by the vectorizer's loop versioning for alias check. |
vect-max-version-for-alignment-checks | | Bound on number of runtime checks inserted by the vectorizer's loop versioning for alignment check. |