Rietveld Code Review Tool
Help | Bug tracker | Discussion group | Source code | Sign in
(12)

Delta Between Two Patch Sets: doc/invoke.texi

Issue 5272048: [google] AddressSanitizer for gcc, first attempt. Base URL: svn://gcc.gnu.org/svn/gcc/branches/google/main/gcc/
Left Patch Set: don't touch bitfields Created 13 years, 5 months ago
Right Patch Set: better ChangeLog Created 13 years, 5 months ago
Left:
Right:
Use n/p to move between diff chunks; N/P to move between comments. Please Sign in to add in-line comments.
Jump to:
Right: Side by side diff | Download
« no previous file with change/comment | « common.opt ('k') | passes.c » ('j') | no next file with change/comment »
Toggle Intra-line Diffs ('i') | Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
LEFTRIGHT
(no file at all)
1 @c Copyright (C) 1988, 1989, 1992, 1993, 1994, 1995, 1996, 1997, 1998, 1999, 1 @c Copyright (C) 1988, 1989, 1992, 1993, 1994, 1995, 1996, 1997, 1998, 1999,
2 @c 2000, 2001, 2002, 2003, 2004, 2005, 2006, 2007, 2008, 2009, 2010, 2011 2 @c 2000, 2001, 2002, 2003, 2004, 2005, 2006, 2007, 2008, 2009, 2010, 2011
3 @c Free Software Foundation, Inc. 3 @c Free Software Foundation, Inc.
4 @c This is part of the GCC manual. 4 @c This is part of the GCC manual.
5 @c For copying conditions, see the file gcc.texi. 5 @c For copying conditions, see the file gcc.texi.
6 6
7 @ignore 7 @ignore
8 @c man begin INCLUDE 8 @c man begin INCLUDE
9 @include gcc-vers.texi 9 @include gcc-vers.texi
10 @c man end 10 @c man end
(...skipping 336 matching lines...) Expand 10 before | Expand all | Expand 10 after
347 -femit-struct-debug-detailed@r{[}=@var{spec-list}@r{]} @gol 347 -femit-struct-debug-detailed@r{[}=@var{spec-list}@r{]} @gol
348 -p -pg -print-file-name=@var{library} -print-libgcc-file-name @gol 348 -p -pg -print-file-name=@var{library} -print-libgcc-file-name @gol
349 -print-multi-directory -print-multi-lib -print-multi-os-directory @gol 349 -print-multi-directory -print-multi-lib -print-multi-os-directory @gol
350 -print-prog-name=@var{program} -print-search-dirs -Q @gol 350 -print-prog-name=@var{program} -print-search-dirs -Q @gol
351 -print-sysroot -print-sysroot-headers-suffix @gol 351 -print-sysroot -print-sysroot-headers-suffix @gol
352 -save-temps -save-temps=cwd -save-temps=obj -time@r{[}=@var{file}@r{]}} 352 -save-temps -save-temps=cwd -save-temps=obj -time@r{[}=@var{file}@r{]}}
353 353
354 @item Optimization Options 354 @item Optimization Options
355 @xref{Optimize Options,,Options that Control Optimization}. 355 @xref{Optimize Options,,Options that Control Optimization}.
356 @gccoptlist{-falign-functions[=@var{n}] -falign-jumps[=@var{n}] @gol 356 @gccoptlist{-falign-functions[=@var{n}] -falign-jumps[=@var{n}] @gol
357 -falign-labels[=@var{n}] -falign-loops[=@var{n}] -fassociative-math @gol 357 -falign-labels[=@var{n}] -falign-loops[=@var{n}] -fasan -fassociative-math @gol
358 -fauto-inc-dec -fbranch-probabilities -fbranch-target-load-optimize @gol 358 -fauto-inc-dec -fbranch-probabilities -fbranch-target-load-optimize @gol
359 -fbranch-target-load-optimize2 -fbtr-bb-exclusive -fcaller-saves @gol 359 -fbranch-target-load-optimize2 -fbtr-bb-exclusive -fcaller-saves @gol
360 -fcallgraph-profiles-sections -fcheck-data-deps -fclone-hot-version-paths @gol 360 -fcallgraph-profiles-sections -fcheck-data-deps -fclone-hot-version-paths @gol
361 -fcombine-stack-adjustments -fconserve-stack @gol 361 -fcombine-stack-adjustments -fconserve-stack @gol
362 -fcompare-elim -fcprop-registers -fcrossjumping @gol 362 -fcompare-elim -fcprop-registers -fcrossjumping @gol
363 -fcse-follow-jumps -fcse-skip-blocks -fcx-fortran-rules @gol 363 -fcse-follow-jumps -fcse-skip-blocks -fcx-fortran-rules @gol
364 -fcx-limited-range @gol 364 -fcx-limited-range @gol
365 -fdata-sections -fdce -fdce -fdelayed-branch @gol 365 -fdata-sections -fdce -fdce -fdelayed-branch @gol
366 -fdelete-null-pointer-checks -fdse -fdevirtualize -fdse @gol 366 -fdelete-null-pointer-checks -fdse -fdevirtualize -fdse @gol
367 -fearly-inlining -fipa-sra -fexpensive-optimizations -ffat-lto-objects @gol 367 -fearly-inlining -fipa-sra -fexpensive-optimizations -ffat-lto-objects @gol
(...skipping 6272 matching lines...) Expand 10 before | Expand all | Expand 10 after
6640 If the target supports a BSS section, GCC by default puts variables that 6640 If the target supports a BSS section, GCC by default puts variables that
6641 are initialized to zero into BSS@. This can save space in the resulting 6641 are initialized to zero into BSS@. This can save space in the resulting
6642 code. 6642 code.
6643 6643
6644 This option turns off this behavior because some programs explicitly 6644 This option turns off this behavior because some programs explicitly
6645 rely on variables going to the data section. E.g., so that the 6645 rely on variables going to the data section. E.g., so that the
6646 resulting executable can find the beginning of that section and/or make 6646 resulting executable can find the beginning of that section and/or make
6647 assumptions based on that. 6647 assumptions based on that.
6648 6648
6649 The default is @option{-fzero-initialized-in-bss}. 6649 The default is @option{-fzero-initialized-in-bss}.
6650
6651 @item -fasan
6652 Enable AddressSanitizer, a fast memory error detector.
6653 Memory access instructions will be instrumented to detect
6654 out-of-bounds and use-after-free bugs. So far only heap bugs will be detected.
6655 See @uref{http://code.google.com/p/address-sanitizer/} for more details.
6650 6656
6651 @item -fmudflap -fmudflapth -fmudflapir 6657 @item -fmudflap -fmudflapth -fmudflapir
6652 @opindex fmudflap 6658 @opindex fmudflap
6653 @opindex fmudflapth 6659 @opindex fmudflapth
6654 @opindex fmudflapir 6660 @opindex fmudflapir
6655 @cindex bounds checking 6661 @cindex bounds checking
6656 @cindex mudflap 6662 @cindex mudflap
6657 For front-ends that support it (C and C++), instrument all risky 6663 For front-ends that support it (C and C++), instrument all risky
6658 pointer/array dereferencing operations, some standard library 6664 pointer/array dereferencing operations, some standard library
6659 string/heap functions, and some other associated constructs with 6665 string/heap functions, and some other associated constructs with
(...skipping 12537 matching lines...) Expand 10 before | Expand all | Expand 10 after
19197 ignore the precompiled header if the conditions aren't met. If you 19203 ignore the precompiled header if the conditions aren't met. If you
19198 find an option combination that doesn't work and doesn't cause the 19204 find an option combination that doesn't work and doesn't cause the
19199 precompiled header to be ignored, please consider filing a bug report, 19205 precompiled header to be ignored, please consider filing a bug report,
19200 see @ref{Bugs}. 19206 see @ref{Bugs}.
19201 19207
19202 If you do use differing options when generating and using the 19208 If you do use differing options when generating and using the
19203 precompiled header, the actual behavior will be a mixture of the 19209 precompiled header, the actual behavior will be a mixture of the
19204 behavior for the options. For instance, if you use @option{-g} to 19210 behavior for the options. For instance, if you use @option{-g} to
19205 generate the precompiled header but not when using it, you may or may 19211 generate the precompiled header but not when using it, you may or may
19206 not get debugging information for routines in the precompiled header. 19212 not get debugging information for routines in the precompiled header.
LEFTRIGHT

Powered by Google App Engine
RSS Feeds Recent Issues | This issue
This is Rietveld f62528b