]> git.ipfire.org Git - thirdparty/gcc.git/commitdiff
Add missing docs for feature added by Richard Henderson.
authorJames E Wilson <wilson@specifixinc.com>
Sat, 13 Aug 2005 20:52:01 +0000 (13:52 -0700)
committerJim Wilson <wilson@gcc.gnu.org>
Sat, 13 Aug 2005 20:52:01 +0000 (13:52 -0700)
* doc/cpp.texi (__SSP__, __SSP_ALL__): Document.
* doc/invoke.texi (-Wstack-protector, -fstack-protector,
-fstack-protector-all, --param ssp-buffer-size): Document.
(-Wvariadic-macros): Alphabetize.
(-fsched-stalled-insns-dep): Add missing 'f'.

From-SVN: r103057

gcc/ChangeLog
gcc/doc/cpp.texi
gcc/doc/invoke.texi

index 1058d983437e047768825397f67a905124297668..f6243ce294cc1e99b86a117ddad9c6d1571bc96b 100644 (file)
@@ -1,3 +1,11 @@
+2005-08-13  James E Wilson  <wilson@specifix.com>
+
+       * doc/cpp.texi (__SSP__, __SSP_ALL__): Document.
+       * doc/invoke.texi (-Wstack-protector, -fstack-protector,
+       -fstack-protector-all, --param ssp-buffer-size): Document.
+       (-Wvariadic-macros): Alphabetize.
+       (-fsched-stalled-insns-dep): Add missing 'f'.
+
 2005-08-13  David Edelsohn  <edelsohn@gnu.org>
 
        * config/rs6000/rs6000.h (EXTRA_CONSTRAINT): Add 'a' for indexed
index e9c64078e1ad1b030937abfaa882dfd4e18c1ea9..f5f29a6397b26a09581ec2af0c8eb01a7198cd87 100644 (file)
@@ -2117,6 +2117,15 @@ macro to determine which runtime (NeXT or GNU) is being used.
 These macros are defined, with value 1, if (and only if) the compilation
 is for a target where @code{long int} and pointer both use 64-bits and
 @code{int} uses 32-bit.
+
+@item __SSP__
+This macro is defined, with value 1, when @option{-fstack-protector} is in
+use.
+
+@item __SSP_ALL__
+This macro is defined, with value 2, when @option{-fstack-protector-all} is
+in use.
+
 @end table
 
 @node System-specific Predefined Macros
index a5491b0679ef2430b26066dade94590797389e47..643805c136e380c7117a8ae4adec2cd6334c7878 100644 (file)
@@ -238,13 +238,14 @@ Objective-C and Objective-C++ Dialects}.
 -Wparentheses  -Wpointer-arith  -Wno-pointer-to-int-cast @gol
 -Wredundant-decls @gol
 -Wreturn-type  -Wsequence-point  -Wshadow @gol
--Wsign-compare  -Wstrict-aliasing -Wstrict-aliasing=2 @gol
+-Wsign-compare  -Wstack-protector @gol
+-Wstrict-aliasing -Wstrict-aliasing=2 @gol
 -Wswitch  -Wswitch-default  -Wswitch-enum @gol
 -Wsystem-headers  -Wtrigraphs  -Wundef  -Wuninitialized @gol
 -Wunknown-pragmas  -Wno-pragmas -Wunreachable-code @gol
 -Wunused  -Wunused-function  -Wunused-label  -Wunused-parameter @gol
--Wunused-value  -Wunused-variable  -Wwrite-strings @gol
--Wvariadic-macros}
+-Wunused-value  -Wunused-variable  -Wvariadic-macros @gol
+-Wwrite-strings}
 
 @item C-only Warning Options
 @gccoptlist{-Wbad-function-cast  -Wmissing-declarations @gol
@@ -322,10 +323,11 @@ Objective-C and Objective-C++ Dialects}.
 -frounding-math -fschedule-insns  -fschedule-insns2 @gol
 -fno-sched-interblock  -fno-sched-spec  -fsched-spec-load @gol
 -fsched-spec-load-dangerous  @gol
--fsched-stalled-insns=@var{n} -sched-stalled-insns-dep=@var{n} @gol
+-fsched-stalled-insns=@var{n} -fsched-stalled-insns-dep=@var{n} @gol
 -fsched2-use-superblocks @gol
 -fsched2-use-traces -freschedule-modulo-scheduled-loops @gol
 -fsignaling-nans -fsingle-precision-constant  @gol
+-fstack-protector  -fstack-protector-all @gol
 -fstrength-reduce  -fstrict-aliasing  -ftracer  -fthread-jumps @gol
 -funroll-all-loops  -funroll-loops  -fpeel-loops @gol
 -fsplit-ivs-in-unroller -funswitch-loops @gol
@@ -3362,6 +3364,11 @@ This option is only supported for C and Objective-C@.
 @item -Werror
 @opindex Werror
 Make all warnings into errors.
+
+@item -Wstack-protector
+This option is only active when @option{-fstack-protector} is active.  It
+warns about functions that will not be protected against stack smashing.
+
 @end table
 
 @node Debugging Options
@@ -5628,6 +5635,17 @@ threading.
 When performing branch target register load optimization, don't reuse
 branch target registers in within any basic block.
 
+@item -fstack-protector
+Emit extra code to check for buffer overflows, such as stack smashing
+attacks.  This is done by adding a guard variable to functions with
+vulnerable objects.  This includes functions that call alloca, and
+functions with buffers larger than 8 bytes.  The guards are initialized
+when a function is entered and then checked when the function exits.
+If a guard check fails, an error message is printed and the program exits.
+
+@item -fstack-protector-all
+Like @option{-fstack-protector} except that all functions are protected.
+
 @item --param @var{name}=@var{value}
 @opindex param
 In some places, GCC uses various constants to control the amount of
@@ -6003,6 +6021,10 @@ than the number of virtual symbols to be updated, then the incremental
 SSA updater switches to a full update for those symbols.  The default
 ratio is 3.
 
+@item ssp-buffer-size
+The minimum size of buffers (i.e. arrays) that will receive stack smashing
+protection when @option{-fstack-protection} is used.
+
 @end table
 @end table