From: Ghassan Shobaki Date: Tue, 14 Jul 2009 23:47:54 +0000 (+0000) Subject: invoke.texi: Added descriptions of the scheduling heuristics that are enabled/disable... X-Git-Url: https://git.libre-soc.org/?a=commitdiff_plain;h=96809b41e7efeab1f670007fb8d08e25de43f7a1;p=gcc.git invoke.texi: Added descriptions of the scheduling heuristics that are enabled/disabled by... 2009-07-14 Ghassan Shobaki * doc/invoke.texi: Added descriptions of the scheduling heuristics that are enabled/disabled by the flags introduced by a previous patch. From-SVN: r149650 --- diff --git a/gcc/ChangeLog b/gcc/ChangeLog index 8c197f1467b..76241613284 100644 --- a/gcc/ChangeLog +++ b/gcc/ChangeLog @@ -1,3 +1,9 @@ +2009-07-14 Ghassan Shobaki + + * doc/invoke.texi: Added descriptions of the + scheduling heuristics that are enabled/disabled + by the flags introduced by a previous patch. + 2009-07-14 DJ Delorie * config/mep/mep.md (sibcall_internal): Include non-toggling diff --git a/gcc/doc/invoke.texi b/gcc/doc/invoke.texi index cff2431db97..a18da59cbf6 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