The ARC front end presently has a large number of options that are
explicitly deprecated, either by the "Warn" option or by being
documented as such in the GCC manual. The manual text has documented
a long list of obsolete options with a warning that they will be removed
completely in a future release since at least GCC 5, 10+ years ago.
Some of documented options have, in fact, already been deleted.
This patch does *not* delete the remaining obsolete options, but only
marks them as "Undocumented" in the .opt file and removes the
documentation to reduce clutter in the manual.
gcc/ChangeLog
PR other/122243
* config/arc/arc.opt: Mark -mbig-endian, -mlittle-endian,
-mmixed-code, -mno-mpy, -margonaut, -munalign-prob-threshold=,
-mannotate-align, -malign-call, -mRcq, -mRcw, -mbbit-peephole,
-mcompact-casesi, -mq-class, -mexpand-adddi, -mcrc, -mdsp-packa,
-mdvbf, -mtelephony, -mrtsc, -EB, -EL, -mrla, -mEA, and
-multcost= as "Undocumented".
* doc/invoke.texi: Remove documentation for the above options.
plus -mmac-d16 and -mmac-24 (which were already marked as
"Undocumented"). Likewise remove documentation for
-mbarrel_shifter, -mdpfp_compact, -mdpfp_fast, -mdsp_packa,
-mmac_24, -mmac_d16, -mspfp_compact, and -mspfp_fast, which
had already been deleted from arc.opt at some point.
---
gcc/config/arc/arc.opt | 55 +++++++------
gcc/doc/invoke.texi | 179 ++---------------------------------------
2 files changed, 38 insertions(+), 196 deletions(-)
diff --git a/gcc/config/arc/arc.opt b/gcc/config/arc/arc.opt
index 6da08383b76..381a8b036e2 100644
--- a/gcc/config/arc/arc.opt
+++ b/gcc/config/arc/arc.opt
@@ -21,12 +21,14 @@
HeaderInclude
config/arc/arc-opts.h
+@c Formerly documented as deprecated; use configure options instead.
mbig-endian
-Target RejectNegative Mask(BIG_ENDIAN)
+Target RejectNegative Mask(BIG_ENDIAN) Undocumented
Compile code for big endian mode.
+@c Formerly documented as deprecated; use configure options instead.
mlittle-endian
-Target RejectNegative InverseMask(BIG_ENDIAN)
+Target RejectNegative InverseMask(BIG_ENDIAN) Undocumented
Compile code for little endian mode. This is the default.
mno-cond-exec
@@ -136,7 +138,7 @@ Target Mask(CODE_DENSITY)
Enable code density instructions for ARCv2.
mmixed-code
-Target Ignore
+Target Ignore Undocumented
Does nothing. Preserved for backward compatibility.
; We use an explict definition for the negative form because that is the
@@ -166,7 +168,7 @@ Target Mask(MUL64_SET)
Generate mul64 and mulu64 instructions.
mno-mpy
-Target Mask(NOMPY_SET) Warn(%qs is deprecated)
+Target Mask(NOMPY_SET) Undocumented Warn(%qs is deprecated)
Do not generate mpy instructions for ARC700.
mea
@@ -205,8 +207,9 @@ mspfp-fast
Target Mask(SPFP_FAST_SET)
FPX: Generate Single Precision FPX (fast) instructions.
+; Formerly documented as deprecated, "obsolete FPX"
margonaut
-Target Mask(ARGONAUT_SET)
+Target Mask(ARGONAUT_SET) Undocumented
FPX: Enable Argonaut ARC CPU Double Precision Floating Point extensions.
mdpfp
@@ -292,7 +295,7 @@ Target Mask(MULMAC_32BY16_SET)
Generate 32x16 multiply and mac instructions.
munalign-prob-threshold=
-Target Ignore
+Target Ignore Undocumented
Does nothing. Preserved for backward compatibility.
mmedium-calls
@@ -300,20 +303,20 @@ Target Var(TARGET_MEDIUM_CALLS)
Init(TARGET_MMEDIUM_CALLS_DEFAULT)
Don't use less than 25 bit addressing range for calls.
mannotate-align
-Target Ignore
+Target Ignore Undocumented
Does nothing. Preserved for backward compatibility.
malign-call
-Target Ignore
+Target Ignore Undocumented
Does nothing. Preserved for backward compatibility.
mRcq
-Target Ignore
+Target Ignore Undocumented
Does nothing. Preserved for backward compatibility.
mRcw
-Target Ignore
+Target Ignore Undocumented
Does nothing. Preserved for backward compatibility.
@@ -322,7 +325,7 @@ Target Var(TARGET_EARLY_CBRANCHSI)
Enable pre-reload use of cbranchsi pattern.
mbbit-peephole
-Target Ignore
+Target Ignore Undocumented
Does nothing. Preserved for backward compatibility.
mcase-vector-pcrel
@@ -330,30 +333,30 @@ Target Var(TARGET_CASE_VECTOR_PC_RELATIVE)
Use pc-relative switch case tables - this enables case table shortening.
mcompact-casesi
-Target Warn(%qs is deprecated)
+Target Undocumented Warn(%qs is deprecated)
Enable compact casesi pattern.
mq-class
-Target Warn(%qs is deprecated)
+Target Undocumented Warn(%qs is deprecated)
Enable 'q' instruction alternatives.
mexpand-adddi
-Target Warn(%qs is deprecated)
+Target Undocumented Warn(%qs is deprecated)
Expand adddi3 and subdi3 at rtl generation time into add.f / adc etc.
; Flags used by the assembler, but for which we define preprocessor
; macro symbols as well.
mcrc
-Target Warn(%qs is deprecated)
+Target Undocumented Warn(%qs is deprecated)
Enable variable polynomial CRC extension.
mdsp-packa
-Target Warn(%qs is deprecated)
+Target Undocumented Warn(%qs is deprecated)
Enable DSP 3.1 Pack A extensions.
mdvbf
-Target Warn(%qs is deprecated)
+Target Undocumented Warn(%qs is deprecated)
Enable dual viterbi butterfly extension.
mmac-d16
@@ -363,7 +366,7 @@ mmac-24
Target Undocumented Warn(%qs is deprecated)
mtelephony
-Target RejectNegative Warn(%qs is deprecated)
+Target RejectNegative Undocumented Warn(%qs is deprecated)
Enable Dual and Single Operand Instructions for Telephony.
mxy
@@ -380,15 +383,17 @@ Target
Enable swap byte ordering extension instruction.
mrtsc
-Target Warn(%qs is deprecated)
+Target Undocumented Warn(%qs is deprecated)
Enable 64-bit Time-Stamp Counter extension instruction.
+; Formerly documented as deprecated.
EB
-Target
+Target Undocumented
Pass -EB option through to linker.
+; Formerly documented as deprecated.
EL
-Target
+Target Undocumented
Pass -EL option through to linker.
marclinux
@@ -399,9 +404,8 @@ marclinux_prof
Target
Pass -marclinux_prof option through to linker.
-;; lra is still unproven for ARC, so allow to fall back to reload with
-mno-lra.
mlra
-Target Ignore
+Target Ignore Undocumented
Does nothing. Preserved for backward compatibility.
mlra-priority-none
@@ -419,10 +423,11 @@ Reduce priority for r0..r3 / r12..r15 with
TARGET_REGISTER_PRIORITY.
; backward-compatibility aliases, translated by DRIVER_SELF_SPECS
mEA
-Target
+Target Undocumented
multcost=
-Target RejectNegative Joined
+Target RejectNegative Joined Undocumented
+
matomic
Target Mask(ATOMIC)
diff --git a/gcc/doc/invoke.texi b/gcc/doc/invoke.texi
index 0d223c4d78f..aa1282f9551 100644
--- a/gcc/doc/invoke.texi
+++ b/gcc/doc/invoke.texi
@@ -925,20 +925,20 @@ Objective-C and Objective-C++ Dialects}.
@gccoptlist{-mbarrel-shifter -mjli-always
-mcpu=@var{cpu} -mA6 -mARC600 -mA7 -mARC700
-mdpfp -mdpfp-compact -mdpfp-fast -mno-dpfp-lrsr
--mea -mno-mpy -mmul32x16 -mmul64 -matomic
+-mea -mmul32x16 -mmul64 -matomic
-mnorm -mspfp -mspfp-compact -mspfp-fast -msimd -msoft-float -mswap
--mcrc -mdsp-packa -mdvbf -mlock -mmac-d16 -mmac-24 -mrtsc -mswape
--mtelephony -mxy -misize -mannotate-align -marclinux -marclinux_prof
+-mlock -mswape
+-mxy -misize -marclinux -marclinux_prof
-mlong-calls -mmedium-calls -msdata -mirq-ctrl-saved
-mrgf-banked-regs -mlpc-width=@var{width} -G @var{num}
-mvolatile-cache -mtp-regno=@var{regno}
--malign-call -mauto-modify-reg -mbbit-peephole -mno-brcc
--mcase-vector-pcrel -mcompact-casesi -mno-cond-exec -mearly-cbranchsi
--mexpand-adddi -mindexed-loads -mlra -mlra-priority-none
+-mauto-modify-reg -mno-brcc
+-mcase-vector-pcrel -mno-cond-exec -mearly-cbranchsi
+-mindexed-loads -mlra-priority-none
-mlra-priority-compact -mlra-priority-noncompact -mmillicode
--mmixed-code -mq-class -mRcq -mRcw -msize-level=@var{level}
+-msize-level=@var{level}
-mtune=@var{cpu} -mmultcost=@var{num} -mcode-density-frame
--munalign-prob-threshold=@var{probability} -mmpy-option=@var{multo}
+-mmpy-option=@var{multo}
-mdiv-rem -mcode-density -mll64 -mfpu=@var{fpu} -mrf16 -mbranch-index}
@emph{ARM Options} (@ref{ARM Options})
@@ -23587,12 +23587,6 @@ Generate extended arithmetic instructions. Currently
only
@code{divaw}, @code{adds}, @code{subs}, and @code{sat16} are
supported. Only valid for @option{-mcpu=ARC700}.
-@opindex mno-mpy
-@opindex mmpy
-@item -mno-mpy
-Do not generate @code{mpy}-family instructions for ARC700. This option is
-deprecated.
-
@opindex mmul32x16
@item -mmul32x16
Generate 32x16-bit multiply and multiply-accumulate instructions.
@@ -23840,17 +23834,6 @@ define preprocessor macro symbols.
@c Flags used by the assembler, but for which we define preprocessor
@c macro symbols as well.
@table @gcctabopt
-@opindex mdsp-packa
-@item -mdsp-packa
-Passed down to the assembler to enable the DSP Pack A extensions.
-Also sets the preprocessor symbol @code{__Xdsp_packa}. This option is
-deprecated.
-
-@opindex mdvbf
-@item -mdvbf
-Passed down to the assembler to enable the dual Viterbi butterfly
-extension. Also sets the preprocessor symbol @code{__Xdvbf}. This
-option is deprecated.
@c ARC700 4.10 extension instruction
@opindex mlock
@@ -23859,23 +23842,6 @@ Passed down to the assembler to enable the locked
load/store
conditional extension. Also sets the preprocessor symbol
@code{__Xlock}.
-@opindex mmac-d16
-@item -mmac-d16
-Passed down to the assembler. Also sets the preprocessor symbol
-@code{__Xxmac_d16}. This option is deprecated.
-
-@opindex mmac-24
-@item -mmac-24
-Passed down to the assembler. Also sets the preprocessor symbol
-@code{__Xxmac_24}. This option is deprecated.
-
-@c ARC700 4.10 extension instruction
-@opindex mrtsc
-@item -mrtsc
-Passed down to the assembler to enable the 64-bit time-stamp counter
-extension instruction. Also sets the preprocessor symbol
-@code{__Xrtsc}. This option is deprecated.
-
@c ARC700 4.10 extension instruction
@opindex mswape
@item -mswape
@@ -23883,12 +23849,6 @@ Passed down to the assembler to enable the swap byte
ordering
extension instruction. Also sets the preprocessor symbol
@code{__Xswape}.
-@opindex mtelephony
-@item -mtelephony
-Passed down to the assembler to enable dual- and single-operand
-instructions for telephony. Also sets the preprocessor symbol
-@code{__Xtelephony}. This option is deprecated.
-
@opindex mxy
@item -mxy
Passed down to the assembler to enable the XY memory extension. Also
@@ -23904,10 +23864,6 @@ The following options control how the assembly code is
annotated:
@item -misize
Annotate assembler instructions with estimated addresses.
-@opindex mannotate-align
-@item -mannotate-align
-Does nothing. Preserved for backward compatibility.
-
@end table
The following options are passed through to the linker:
@@ -23977,18 +23933,10 @@ Enable cache bypass for volatile references.
The following options fine tune code generation:
@c code generation tuning options
@table @gcctabopt
-@opindex malign-call
-@item -malign-call
-Does nothing. Preserved for backward compatibility.
-
@opindex mauto-modify-reg
@item -mauto-modify-reg
Enable the use of pre/post modify with register displacement.
-@opindex mbbit-peephole
-@item -mbbit-peephole
-Does nothing. Preserved for backward compatibility.
-
@opindex mno-brcc
@item -mno-brcc
This option disables a target-specific pass in @file{arc_reorg} to
@@ -24001,11 +23949,6 @@ generation of these instructions driven by the
combiner pass.
Use PC-relative switch case tables to enable case table shortening.
This is the default for @option{-Os}.
-@opindex mcompact-casesi
-@item -mcompact-casesi
-Enable compact @code{casesi} pattern. This is the default for @option{-Os},
-and only available for ARCv1 cores. This option is deprecated.
-
@opindex mno-cond-exec
@item -mno-cond-exec
Disable the ARCompact-specific pass to generate conditional
@@ -24027,21 +23970,12 @@ offset range because they are conditionalized, you
should consider using
@item -mearly-cbranchsi
Enable pre-reload use of the @code{cbranchsi} pattern.
-@opindex mexpand-adddi
-@item -mexpand-adddi
-Expand @code{adddi3} and @code{subdi3} at RTL generation time into
-@code{add.f}, @code{adc} etc. This option is deprecated.
-
@opindex mindexed-loads
@item -mindexed-loads
Enable the use of indexed loads. This can be problematic because some
optimizers then assume that indexed stores exist, which is not
the case.
-@opindex mlra
-@item -mlra
-Does nothing. Preserved for backward compatibility.
-
@opindex mlra-priority-none
@item -mlra-priority-none
Don't indicate any priority for target registers.
@@ -24070,23 +24004,6 @@ This option enable the compiler to emit @code{enter}
and @code{leave}
instructions. These instructions are only valid for CPUs with
code-density feature.
-@opindex mmixed-code
-@item -mmixed-code
-Does nothing. Preserved for backward compatibility.
-
-@opindex mq-class
-@item -mq-class
-Ths option is deprecated. Enable @samp{q} instruction alternatives.
-This is the default for @option{-Os}.
-
-@opindex mRcq
-@item -mRcq
-Does nothing. Preserved for backward compatibility.
-
-@opindex mRcw
-@item -mRcw
-Does nothing. Preserved for backward compatibility.
-
@opindex msize-level
@item -msize-level=@var{level}
Fine-tune size optimization with regards to instruction lengths and alignment.
@@ -24149,86 +24066,6 @@ Tune for ARC4x release 3.10a.
Cost to assume for a multiply instruction, with @samp{4} being equal to a
normal instruction.
-@opindex munalign-prob-threshold
-@item -munalign-prob-threshold=@var{probability}
-Does nothing. Preserved for backward compatibility.
-
-@end table
-
-The following options are maintained for backward compatibility, but
-are now deprecated and will be removed in a future release:
-
-@c Deprecated options
-@table @gcctabopt
-
-@opindex margonaut
-@item -margonaut
-Obsolete FPX.
-
-@opindex mbig-endian
-@opindex EB
-@item -mbig-endian
-@itemx -EB
-Compile code for big-endian targets. Use of these options is now
-deprecated. Big-endian code is supported by configuring GCC to build
-@w{@code{arceb-elf32}} and @w{@code{arceb-linux-uclibc}} targets,
-for which big endian is the default.
-
-@opindex mlittle-endian
-@opindex EL
-@item -mlittle-endian
-@itemx -EL
-Compile code for little-endian targets. Use of these options is now
-deprecated. Little-endian code is supported by configuring GCC to build
-@w{@code{arc-elf32}} and @w{@code{arc-linux-uclibc}} targets,
-for which little endian is the default.
-
-@opindex mbarrel_shifter
-@item -mbarrel_shifter
-Replaced by @option{-mbarrel-shifter}.
-
-@opindex mdpfp_compact
-@item -mdpfp_compact
-Replaced by @option{-mdpfp-compact}.
-
-@opindex mdpfp_fast
-@item -mdpfp_fast
-Replaced by @option{-mdpfp-fast}.
-
-@opindex mdsp_packa
-@item -mdsp_packa
-Replaced by @option{-mdsp-packa}.
-
-@opindex mEA
-@item -mEA
-Replaced by @option{-mea}.
-
-@opindex mmac_24
-@item -mmac_24
-Replaced by @option{-mmac-24}.
-
-@opindex mmac_d16
-@item -mmac_d16
-Replaced by @option{-mmac-d16}.
-
-@opindex mspfp_compact
-@item -mspfp_compact
-Replaced by @option{-mspfp-compact}.
-
-@opindex mspfp_fast
-@item -mspfp_fast
-Replaced by @option{-mspfp-fast}.
-
-@opindex mtune
-@item -mtune=@var{cpu}
-Values @samp{arc600}, @samp{arc601}, @samp{arc700} and
-@samp{arc700-xmac} for @var{cpu} are replaced by @samp{ARC600},
-@samp{ARC601}, @samp{ARC700} and @samp{ARC700-xmac} respectively.
-
-@opindex multcost
-@item -multcost=@var{num}
-Replaced by @option{-mmultcost}.
-
@end table
@node ARM Options
--
2.39.5