UrlSuffix(gcc/x86-Options.html#index-mpku)
mstack-protector-guard=
-UrlSuffix(gcc/x86-Options.html#index-mstack-protector-guard-4)
+UrlSuffix(gcc/x86-Options.html#index-mstack-protector-guard-5)
mstack-protector-guard-reg=
UrlSuffix(gcc/x86-Options.html#index-mstack-protector-guard-reg-3)
mstack-guard=
UrlSuffix(gcc/S_002f390-and-zSeries-Options.html#index-mstack-guard)
+mstack-protector-guard=
+UrlSuffix(gcc/S_002f390-and-zSeries-Options.html#index-mstack-protector-guard-4)
+
+mstack-protector-guard-record
+UrlSuffix(gcc/S_002f390-and-zSeries-Options.html#index-mstack-protector-guard-record)
+
mstack-size=
UrlSuffix(gcc/S_002f390-and-zSeries-Options.html#index-mstack-size-2)
This option can be overridden for individual functions with the
@code{hotpatch} attribute.
+
+@opindex mstack-protector-guard
+@opindex mstack-protector-guard-record
+@item -mstack-protector-guard=@var{guard}
+@itemx -mstack-protector-guard-record
+Generate stack protection code using canary at @var{guard}. Supported
+locations are @var{global} for a global canary or @var{tls} for a per-thread
+canary in the TLS block (the default).
+
+Option @option{-mstack-protector-guard-record} results in the generation of
+section @code{__stack_protector_loc} containing pointers to all instructions
+which load the address of the global guard. Thus, this option has only an
+effect in conjunction with @option{-mstack-protector-guard=global}. The
+intended use is for the Linux kernel.
@end table
@node SH Options