diff options
Diffstat (limited to 'gcc/doc')
-rw-r--r-- | gcc/doc/invoke.texi | 48 |
1 files changed, 29 insertions, 19 deletions
diff --git a/gcc/doc/invoke.texi b/gcc/doc/invoke.texi index cff2431..a18da59 100644 --- a/gcc/doc/invoke.texi +++ b/gcc/doc/invoke.texi @@ -6235,46 +6235,56 @@ This only makes sense when scheduling after register allocation, i.e.@: with @item -fsched-group-heuristic @opindex fsched-group-heuristic -Enable the group heuristic in the scheduler. This is enabled by default -when scheduling is enabled, i.e.@: with @option{-fschedule-insns} +Enable the group heuristic in the scheduler. This heuristic favors +the instruction that belongs to a schedule group. This is enabled +by default when scheduling is enabled, i.e.@: with @option{-fschedule-insns} or @option{-fschedule-insns2} or at @option{-O2} or higher. @item -fsched-critical-path-heuristic @opindex fsched-critical-path-heuristic -Enable the critical-path heuristic in the scheduler. This is enabled -by default when scheduling is enabled, i.e.@: with @option{-fschedule-insns} +Enable the critical-path heuristic in the scheduler. This heuristic favors +instructions on the critical path. This is enabled by default when +scheduling is enabled, i.e.@: with @option{-fschedule-insns} or @option{-fschedule-insns2} or at @option{-O2} or higher. @item -fsched-spec-insn-heuristic @opindex fsched-spec-insn-heuristic -Enable the speculative instruction heuristic in the scheduler. This is -enabled by default when scheduling is enabled, i.e.@: with -@option{-fschedule-insns} or @option{-fschedule-insns2} or -at @option{-O2} or higher. +Enable the speculative instruction heuristic in the scheduler. This +heuristic favors speculative instructions with greater dependency weakness. +This is enabled by default when scheduling is enabled, i.e.@: +with @option{-fschedule-insns} or @option{-fschedule-insns2} +or at @option{-O2} or higher. @item -fsched-reg-pressure-heuristic @opindex fsched-reg-pressure-heuristic -Enable the register pressure heuristic in the scheduler. This only makes -sense when scheduling before register allocation, i.e.@: +Enable the register pressure heuristic in the scheduler. This heuristic +favors the instruction with smaller contribution to register pressure. +This only makes sense when scheduling before register allocation, i.e.@: with @option{-fschedule-insns} or at @option{-O2} or higher. @item -fsched-rank-heuristic @opindex fsched-rank-heuristic -Enable the rank heuristic in the scheduler. This is enabled by default -when scheduling is enabled, i.e.@: with @option{-fschedule-insns} -or @option{-fschedule-insns2} or at @option{-O2} or higher. +Enable the rank heuristic in the scheduler. This heuristic favors +the instruction belonging to a basic block with greater size or frequency. +This is enabled by default when scheduling is enabled, i.e.@: +with @option{-fschedule-insns} or @option{-fschedule-insns2} or +at @option{-O2} or higher. @item -fsched-last-insn-heuristic @opindex fsched-last-insn-heuristic -Enable the last-instruction heuristic in the scheduler. This is enabled -by default when scheduling is enabled, i.e.@: with @option{-fschedule-insns} -or @option{-fschedule-insns2} or at @option{-O2} or higher. +Enable the last-instruction heuristic in the scheduler. This heuristic +favors the instruction that is less dependent on the last instruction +scheduled. This is enabled by default when scheduling is enabled, +i.e.@: with @option{-fschedule-insns} or @option{-fschedule-insns2} or +at @option{-O2} or higher. @item -fsched-dep-count-heuristic @opindex fsched-dep-count-heuristic -Enable the dependent-count heuristic in the scheduler. This is enabled -by default when scheduling is enabled, i.e.@: with @option{-fschedule-insns} -or @option{-fschedule-insns2} or at @option{-O2} or higher. +Enable the dependent-count heuristic in the scheduler. This heuristic +favors the instruction that has more instructions depending on it. +This is enabled by default when scheduling is enabled, i.e.@: +with @option{-fschedule-insns} or @option{-fschedule-insns2} or +at @option{-O2} or higher. @item -fsched2-use-traces @opindex fsched2-use-traces |