aboutsummaryrefslogtreecommitdiff
path: root/gcc/doc/invoke.texi
diff options
context:
space:
mode:
Diffstat (limited to 'gcc/doc/invoke.texi')
-rw-r--r--gcc/doc/invoke.texi84
1 files changed, 51 insertions, 33 deletions
diff --git a/gcc/doc/invoke.texi b/gcc/doc/invoke.texi
index 4787a90..38233b7 100644
--- a/gcc/doc/invoke.texi
+++ b/gcc/doc/invoke.texi
@@ -164,7 +164,7 @@ in the following sections.
@gccoptlist{-c -S -E -o @var{file} -no-canonical-prefixes @gol
-pipe -pass-exit-codes @gol
-x @var{language} -v -### --help@r{[}=@var{class}@r{[},@dots{}@r{]]} --target-help @gol
---version -wrapper@@@var{file} -fplugin=@var{file} -fplugin-arg-@var{name}=@var{arg} @gol
+--version -wrapper @@@var{file} -fplugin=@var{file} -fplugin-arg-@var{name}=@var{arg} @gol
-fdump-ada-spec@r{[}-slim@r{]}}
@item C Language Options
@@ -263,9 +263,9 @@ Objective-C and Objective-C++ Dialects}.
-Wsystem-headers -Wtrampolines -Wtrigraphs -Wtype-limits -Wundef @gol
-Wuninitialized -Wunknown-pragmas -Wno-pragmas @gol
-Wunsuffixed-float-constants -Wunused -Wunused-function @gol
--Wunused-label -Wunused-parameter -Wno-unused-result -Wunused-value -Wunused-variable @gol
--Wunused-but-set-parameter -Wunused-but-set-variable -Wvariadic-macros -Wvla @gol
--Wvolatile-register-var -Wwrite-strings}
+-Wunused-label -Wunused-parameter -Wno-unused-result -Wunused-value @gol
+-Wunused-variable -Wunused-but-set-parameter -Wunused-but-set-variable @gol
+-Wvariadic-macros -Wvla -Wvolatile-register-var -Wwrite-strings}
@item C and Objective-C-only Warning Options
@gccoptlist{-Wbad-function-cast -Wmissing-declarations @gol
@@ -330,13 +330,13 @@ Objective-C and Objective-C++ Dialects}.
@item Optimization Options
@xref{Optimize Options,,Options that Control Optimization}.
-@gccoptlist{
--falign-functions[=@var{n}] -falign-jumps[=@var{n}] @gol
+@gccoptlist{-falign-functions[=@var{n}] -falign-jumps[=@var{n}] @gol
-falign-labels[=@var{n}] -falign-loops[=@var{n}] -fassociative-math @gol
-fauto-inc-dec -fbranch-probabilities -fbranch-target-load-optimize @gol
-fbranch-target-load-optimize2 -fbtr-bb-exclusive -fcaller-saves @gol
-fcheck-data-deps -fconserve-stack -fcprop-registers -fcrossjumping @gol
--fcse-follow-jumps -fcse-skip-blocks -fcx-fortran-rules -fcx-limited-range @gol
+-fcse-follow-jumps -fcse-skip-blocks -fcx-fortran-rules @gol
+-fcx-limited-range @gol
-fdata-sections -fdce -fdce @gol
-fdelayed-branch -fdelete-null-pointer-checks -fdse -fdse @gol
-fearly-inlining -fipa-sra -fexpensive-optimizations -ffast-math @gol
@@ -345,24 +345,26 @@ Objective-C and Objective-C++ Dialects}.
-fgcse -fgcse-after-reload -fgcse-las -fgcse-lm -fgraphite-identity @gol
-fgcse-sm -fif-conversion -fif-conversion2 -findirect-inlining @gol
-finline-functions -finline-functions-called-once -finline-limit=@var{n} @gol
--finline-small-functions -fipa-cp -fipa-cp-clone -fipa-matrix-reorg -fipa-pta @gol
--fipa-profile -fipa-pure-const -fipa-reference -fipa-struct-reorg @gol
--fira-algorithm=@var{algorithm} @gol
+-finline-small-functions -fipa-cp -fipa-cp-clone -fipa-matrix-reorg @gol
+-fipa-pta -fipa-profile -fipa-pure-const -fipa-reference @gol
+-fipa-struct-reorg -fira-algorithm=@var{algorithm} @gol
-fira-region=@var{region} -fira-coalesce @gol
-fira-loop-pressure -fno-ira-share-save-slots @gol
-fno-ira-share-spill-slots -fira-verbose=@var{n} @gol
-fivopts -fkeep-inline-functions -fkeep-static-consts @gol
-floop-block -floop-interchange -floop-strip-mine @gol
--floop-parallelize-all -flto -flto-compression-level -flto-report -fltrans @gol
--fltrans-output-list -fmerge-all-constants -fmerge-constants -fmodulo-sched @gol
--fmodulo-sched-allow-regmoves -fmove-loop-invariants -fmudflap @gol
--fmudflapir -fmudflapth -fno-branch-count-reg -fno-default-inline @gol
+-floop-parallelize-all -flto -flto-compression-level -flto-report @gol
+-fltrans -fltrans-output-list -fmerge-all-constants -fmerge-constants @gol
+-fmodulo-sched -fmodulo-sched-allow-regmoves -fmove-loop-invariants @gol
+-fmudflap -fmudflapir -fmudflapth -fno-branch-count-reg @gol
+-fno-default-inline @gol
-fno-defer-pop -fno-function-cse -fno-guess-branch-probability @gol
-fno-inline -fno-math-errno -fno-peephole -fno-peephole2 @gol
-fno-sched-interblock -fno-sched-spec -fno-signed-zeros @gol
-fno-toplevel-reorder -fno-trapping-math -fno-zero-initialized-in-bss @gol
-fomit-frame-pointer -foptimize-register-move -foptimize-sibling-calls @gol
--fpartial-inlining -fpeel-loops -fpredictive-commoning -fprefetch-loop-arrays @gol
+-fpartial-inlining -fpeel-loops -fpredictive-commoning @gol
+-fprefetch-loop-arrays @gol
-fprofile-correction -fprofile-dir=@var{path} -fprofile-generate @gol
-fprofile-generate=@var{path} @gol
-fprofile-use -fprofile-use=@var{path} -fprofile-values @gol
@@ -380,7 +382,8 @@ Objective-C and Objective-C++ Dialects}.
-fsel-sched-pipelining -fsel-sched-pipelining-outer-loops @gol
-fsignaling-nans -fsingle-precision-constant -fsplit-ivs-in-unroller @gol
-fsplit-wide-types -fstack-protector -fstack-protector-all @gol
--fstrict-aliasing -fstrict-overflow -fthread-jumps -ftracer -ftree-bit-ccp @gol
+-fstrict-aliasing -fstrict-overflow -fthread-jumps -ftracer @gol
+-ftree-bit-ccp @gol
-ftree-builtin-call-dce -ftree-ccp -ftree-ch -ftree-copy-prop @gol
-ftree-copyrename -ftree-dce -ftree-dominator-opts -ftree-dse @gol
-ftree-forwprop -ftree-fre -ftree-loop-if-convert @gol
@@ -589,7 +592,7 @@ Objective-C and Objective-C++ Dialects}.
-mno-fp-ret-in-387 -msoft-float @gol
-mno-wide-multiply -mrtd -malign-double @gol
-mpreferred-stack-boundary=@var{num}
--mincoming-stack-boundary=@var{num}
+-mincoming-stack-boundary=@var{num} @gol
-mcld -mcx16 -msahf -mmovbe -mcrc32 -mrecip @gol
-mmmx -msse -msse2 -msse3 -mssse3 -msse4.1 -msse4.2 -msse4 -mavx @gol
-maes -mpclmul -mfsgsbase -mrdrnd -mf16c -mfused-madd @gol
@@ -736,7 +739,7 @@ Objective-C and Objective-C++ Dialects}.
-msplit -mno-split -munix-asm -mdec-asm}
@emph{picoChip Options}
-@gccoptlist{-mae=@var{ae_type} -mvliw-lookahead=@var{N}
+@gccoptlist{-mae=@var{ae_type} -mvliw-lookahead=@var{N} @gol
-msymbol-as-address -mno-inefficient-warnings}
@emph{PowerPC Options}
@@ -889,8 +892,8 @@ See i386 and x86-64 Options.
@emph{i386 and x86-64 Windows Options}
@gccoptlist{-mconsole -mcygwin -mno-cygwin -mdll
--mnop-fun-dllimport -mthread -municode -mwin32 -mwindows
--fno-set-stack-executable}
+-mnop-fun-dllimport -mthread @gol
+-municode -mwin32 -mwindows -fno-set-stack-executable}
@emph{Xstormy16 Options}
@gccoptlist{-msim}
@@ -1659,7 +1662,7 @@ freestanding and hosted environments.
@item -fopenmp
@opindex fopenmp
-@cindex openmp parallel
+@cindex OpenMP parallel
Enable handling of OpenMP directives @code{#pragma omp} in C/C++ and
@code{!$omp} in Fortran. When @option{-fopenmp} is specified, the
compiler generates parallel code according to the OpenMP Application
@@ -2400,8 +2403,8 @@ less vulnerable to unintended effects and much easier to search for.
@item -Woverloaded-virtual @r{(C++ and Objective-C++ only)}
@opindex Woverloaded-virtual
@opindex Wno-overloaded-virtual
-@cindex overloaded virtual fn, warning
-@cindex warning for overloaded virtual fn
+@cindex overloaded virtual function, warning
+@cindex warning for overloaded virtual function
Warn when a function declaration hides virtual functions from a
base class. For example, in:
@@ -3348,7 +3351,7 @@ The standard is worded confusingly, therefore there is some debate
over the precise meaning of the sequence point rules in subtle cases.
Links to discussions of the problem, including proposed formal
definitions, may be found on the GCC readings page, at
-@w{@uref{http://gcc.gnu.org/readings.html}}.
+@uref{http://gcc.gnu.org/@/readings.html}.
This warning is enabled by @option{-Wall} for C and C++.
@@ -4759,7 +4762,7 @@ This option is a detailed version of
@option{-femit-struct-debug-reduced} and @option{-femit-struct-debug-baseonly},
which will serve for most needs.
-A specification has the syntax
+A specification has the syntax@*
[@samp{dir:}|@samp{ind:}][@samp{ord:}|@samp{gen:}](@samp{any}|@samp{sys}|@samp{base}|@samp{none})
The optional first word limits the specification to
@@ -9316,17 +9319,17 @@ appear here are:
@table @code
@item %include <@var{file}>
-@cindex %include
+@cindex @code{%include}
Search for @var{file} and insert its text at the current point in the
specs file.
@item %include_noerr <@var{file}>
-@cindex %include_noerr
+@cindex @code{%include_noerr}
Just like @samp{%include}, but do not generate an error message if the include
file cannot be found.
@item %rename @var{old_name} @var{new_name}
-@cindex %rename
+@cindex @code{%rename}
Rename the spec string @var{old_name} to @var{new_name}.
@end table
@@ -10892,6 +10895,7 @@ one controlled by the @option{-mcpu} or @option{-march} option.
@itemx -dynamic
@itemx -exported_symbols_list
@itemx -filelist
+@need 800
@itemx -flat_namespace
@itemx -force_flat_namespace
@itemx -headerpad_max_install_names
@@ -10902,6 +10906,7 @@ one controlled by the @option{-mcpu} or @option{-march} option.
@itemx -multi_module
@itemx -multiply_defined
@itemx -multiply_defined_unused
+@need 800
@itemx -noall_load
@itemx -no_dead_strip_inits_and_terms
@itemx -nofixprebinding
@@ -10912,6 +10917,7 @@ one controlled by the @option{-mcpu} or @option{-march} option.
@itemx -prebind
@itemx -prebind_all_twolevel_modules
@itemx -private_bundle
+@need 800
@itemx -read_only_relocs
@itemx -sectalign
@itemx -sectobjectsymbols
@@ -10922,6 +10928,7 @@ one controlled by the @option{-mcpu} or @option{-march} option.
@itemx -sectorder
@itemx -segaddr
@itemx -segs_read_only_addr
+@need 800
@itemx -segs_read_write_addr
@itemx -seg_addr_table
@itemx -seg_addr_table_filename
@@ -10932,6 +10939,7 @@ one controlled by the @option{-mcpu} or @option{-march} option.
@itemx -single_module
@itemx -static
@itemx -sub_library
+@need 800
@itemx -sub_umbrella
@itemx -twolevel_namespace
@itemx -umbrella
@@ -12012,7 +12020,7 @@ for the ABI and the set of available instructions. The choices for
@var{cpu-type} are:
@table @emph
@item generic
-Produce code optimized for the most common IA32/AMD64/EM64T processors.
+Produce code optimized for the most common IA32/@/AMD64/@/EM64T processors.
If you know the CPU on which your code will run, then you should use
the corresponding @option{-mtune} option instead of
@option{-mtune=generic}. But, if you do not know exactly what CPU users
@@ -12390,6 +12398,7 @@ preferred alignment to @option{-mpreferred-stack-boundary=2}.
@itemx -mssse3
@itemx -mno-ssse3
@itemx -msse4.1
+@need 800
@itemx -mno-sse4.1
@itemx -msse4.2
@itemx -mno-sse4.2
@@ -12400,6 +12409,7 @@ preferred alignment to @option{-mpreferred-stack-boundary=2}.
@itemx -maes
@itemx -mno-aes
@itemx -mpclmul
+@need 800
@itemx -mno-pclmul
@itemx -mfsgsbase
@itemx -mno-fsgsbase
@@ -12410,6 +12420,7 @@ preferred alignment to @option{-mpreferred-stack-boundary=2}.
@itemx -msse4a
@itemx -mno-sse4a
@itemx -mfma4
+@need 800
@itemx -mno-fma4
@itemx -mxop
@itemx -mno-xop
@@ -14042,7 +14053,7 @@ generates 64-bit code when you select a 64-bit architecture, but you
can use @option{-mgp32} to get 32-bit code instead.
For information about the O64 ABI, see
-@w{@uref{http://gcc.gnu.org/projects/mipso64-abi.html}}.
+@uref{http://gcc.gnu.org/@/projects/@/mipso64-abi.html}.
GCC supports a variant of the o32 ABI in which floating-point registers
are 64 rather than 32 bits wide. You can select this combination with
@@ -15010,6 +15021,7 @@ These @samp{-m} options are defined for the IBM RS/6000 and PowerPC:
@itemx -mno-powerpc-gpopt
@itemx -mpowerpc-gfxopt
@itemx -mno-powerpc-gfxopt
+@need 800
@itemx -mpowerpc64
@itemx -mno-powerpc64
@itemx -mmfcrf
@@ -15020,6 +15032,7 @@ These @samp{-m} options are defined for the IBM RS/6000 and PowerPC:
@itemx -mno-popcntd
@itemx -mfprnd
@itemx -mno-fprnd
+@need 800
@itemx -mcmpb
@itemx -mno-cmpb
@itemx -mmfpgpr
@@ -17837,8 +17850,13 @@ that function is not instrumented. The match is done on substrings:
if the @var{file} parameter is a substring of the file name, it is
considered to be a match.
-For example,
-@code{-finstrument-functions-exclude-file-list=/bits/stl,include/sys}
+For example:
+
+@smallexample
+-finstrument-functions-exclude-file-list=/bits/stl,include/sys
+@end smallexample
+
+@noindent
will exclude any inline function defined in files whose pathnames
contain @code{/bits/stl} or @code{include/sys}.
@@ -18002,7 +18020,7 @@ visibility so that the @samp{type_info} nodes will be unified between
the DSOs.
An overview of these techniques, their benefits and how to use them
-is at @w{@uref{http://gcc.gnu.org/wiki/Visibility}}.
+is at @uref{http://gcc.gnu.org/@/wiki/@/Visibility}.
@item -fstrict-volatile-bitfields
This option should be used if accesses to volatile bitfields (or other