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.

Reply via email to