File tree Expand file tree Collapse file tree 2 files changed +9
-5
lines changed
compiler/rustc_codegen_llvm/src
src/doc/rustc/src/codegen-options Expand file tree Collapse file tree 2 files changed +9
-5
lines changed Original file line number Diff line number Diff line change @@ -288,8 +288,10 @@ impl CodegenBackend for LlvmCodegenBackend {
288288
289289 The exact rules are unstable and subject to change, but
290290 currently, it generates stack protectors for functions that,
291- *post-optimization*, contain either arrays (of any size
292- or type) or address-taken locals.
291+ *post-optimization*, contain LLVM allocas (which
292+ include all stack allocations - including fixed-size
293+ allocations - that are used in a way that is not completely
294+ determined by static control flow).
293295
294296 none
295297 Do not generate stack canaries.
Original file line number Diff line number Diff line change @@ -714,9 +714,11 @@ Supported values for this option are:
714714
715715 The exact rules are unstable and subject to change, but
716716 currently, it generates stack protectors for functions that,
717- * post-optimization* , contain either arrays (of any size
718- or type) or address-taken locals.
719- - ` all ` : Generate stack canaries in all functions
717+ * post-optimization* , contain LLVM allocas (which
718+ include all stack allocations - including fixed-size
719+ allocations - that are used in a way that is not completely
720+ determined by static control flow).
721+ - ` all ` : Generate stack canaries in all functions
720722
721723Stack protectors are not supported on many GPU targets, use of stack
722724protectors on these targets is an error.
You can’t perform that action at this time.
0 commit comments