When I was working on cleanups to invoke.texi I noticed this bit in the
SH Options section:
@item -madjust-unroll
@opindex madjust-unroll
Throttle unrolling to avoid thrashing target registers.
This option only has an effect if the GCC code base supports the
TARGET_ADJUST_UNROLL_MAX target hook.
Well, the current manual is supposed to document what the current GCC
code base does, so I looked up this target hook and found it was deleted
in 2007 with a ChangeLog note that it has been dead since gcc 4.0.0.
However the command-line option is still present. :-S
Any reason why we should not delete this entirely, per the attached patch?
I haven't built/tested this (except for the manual) but can do that if the
patch isn't sufficiently obvious.
-Sandra
2012-03-09 Sandra Loosemore san...@codesourcery.com
gcc/
* config/sh/sh.opt (madjust-unroll): Delete.
* config/sh/sh.h (TARGET_OPT_DEFAULT): Don't use MASK_ADJUST_UNROLL.
* doc/invoke.texi (Option Summary): Remove -madjust-unroll.
(SH Options): Likewise.
Index: gcc/config/sh/sh.opt
===
--- gcc/config/sh/sh.opt (revision 185167)
+++ gcc/config/sh/sh.opt (working copy)
@@ -205,10 +205,6 @@ maccumulate-outgoing-args
Target Report Mask(ACCUMULATE_OUTGOING_ARGS)
Reserve space for outgoing arguments in the function prologue
-madjust-unroll
-Target Report Mask(ADJUST_UNROLL) Condition(SUPPORT_ANY_SH5)
-Throttle unrolling to avoid thrashing target registers unless the unroll benefit outweighs this
-
mb
Target Report RejectNegative InverseMask(LITTLE_ENDIAN)
Generate code in big endian mode
Index: gcc/config/sh/sh.h
===
--- gcc/config/sh/sh.h (revision 185167)
+++ gcc/config/sh/sh.h (working copy)
@@ -290,7 +290,7 @@ do { \
#endif
#ifndef TARGET_OPT_DEFAULT
-#define TARGET_OPT_DEFAULT MASK_ADJUST_UNROLL
+#define TARGET_OPT_DEFAULT 0
#endif
#define TARGET_DEFAULT \
Index: gcc/doc/invoke.texi
===
--- gcc/doc/invoke.texi (revision 185168)
+++ gcc/doc/invoke.texi (working copy)
@@ -885,7 +885,7 @@ See RS/6000 and PowerPC Options.
-mieee -mbitops -misize -minline-ic_invalidate -mpadstruct -mspace @gol
-mprefergot -musermode -multcost=@var{number} -mdiv=@var{strategy} @gol
-mdivsi3_libfunc=@var{name} -mfixed-range=@var{register-range} @gol
--madjust-unroll -mindexed-addressing -mgettrcost=@var{number} -mpt-fixed @gol
+-mindexed-addressing -mgettrcost=@var{number} -mpt-fixed @gol
-maccumulate-outgoing-args -minvalid-symbols -msoft-atomic @gol
-mbranch-cost=@var{num} -mcbranchdi -mcmpeqdi -mfused-madd -mpretend-cmove @gol
-menable-tas}
@@ -18129,12 +18129,6 @@ useful when compiling kernel code. A re
two registers separated by a dash. Multiple register ranges can be
specified separated by a comma.
-@item -madjust-unroll
-@opindex madjust-unroll
-Throttle unrolling to avoid thrashing target registers.
-This option only has an effect if the GCC code base supports the
-TARGET_ADJUST_UNROLL_MAX target hook.
-
@item -mindexed-addressing
@opindex mindexed-addressing
Enable the use of the indexed addressing mode for SHmedia32/SHcompact.