diff options
Diffstat (limited to 'gcc/doc/invoke.texi')
-rw-r--r-- | gcc/doc/invoke.texi | 38 |
1 files changed, 34 insertions, 4 deletions
diff --git a/gcc/doc/invoke.texi b/gcc/doc/invoke.texi index 8c1db6d7ed3..4aa4f52f0d6 100644 --- a/gcc/doc/invoke.texi +++ b/gcc/doc/invoke.texi @@ -311,6 +311,7 @@ Objective-C and Objective-C++ Dialects}. -frandom-seed=@var{string} -fsched-verbose=@var{n} @gol -fsel-sched-verbose -fsel-sched-dump-cfg -fsel-sched-pipelining-verbose @gol -ftest-coverage -ftime-report -fvar-tracking @gol +-fvar-tracking-assigments -fvar-tracking-assignments-toggle @gol -g -g@var{level} -gtoggle -gcoff -gdwarf-@var{version} @gol -ggdb -gstabs -gstabs+ -gvms -gxcoff -gxcoff+ @gol -fno-merge-debug-strings -fno-dwarf2-cfi-asm @gol @@ -4397,11 +4398,14 @@ assembler (GAS) to fail with an error. @opindex gdwarf-@var{version} Produce debugging information in DWARF format (if that is supported). This is the format used by DBX on IRIX 6. The value -of @var{version} may be either 2 or 3; the default version is 2. +of @var{version} may be either 2, 3 or 4; the default version is 2. Note that with DWARF version 2 some ports require, and will always use, some non-conflicting DWARF 3 extensions in the unwind tables. +Version 4 may require GDB 7.0 and @option{-fvar-tracking-assignments} +for maximum benefit. + @item -gvms @opindex gvms Produce debugging information in VMS debug format (if that is @@ -4445,9 +4449,12 @@ other options are processed, and it does so only once, no matter how many times it is given. This is mainly intended to be used with @option{-fcompare-debug}. -@item -fdump-final-insns=@var{file} -@opindex fdump-final-insns= -Dump the final internal representation (RTL) to @var{file}. +@item -fdump-final-insns@r{[}=@var{file}@r{]} +@opindex fdump-final-insns +Dump the final internal representation (RTL) to @var{file}. If the +optional argument is omitted (or if @var{file} is @code{.}), the name +of the dump file will be determined by appending @code{.gkd} to the +compilation output file name. @item -fcompare-debug@r{[}=@var{opts}@r{]} @opindex fcompare-debug @@ -5446,6 +5453,23 @@ It is enabled by default when compiling with optimization (@option{-Os}, @option{-O}, @option{-O2}, @dots{}), debugging information (@option{-g}) and the debug info format supports it. +@item -fvar-tracking-assignments +@opindex fvar-tracking-assignments +@opindex fno-var-tracking-assignments +Annotate assignments to user variables early in the compilation and +attempt to carry the annotations over throughout the compilation all the +way to the end, in an attempt to improve debug information while +optimizing. Use of @option{-gdwarf-4} is recommended along with it. + +It can be enabled even if var-tracking is disabled, in which case +annotations will be created and maintained, but discarded at the end. + +@item -fvar-tracking-assignments-toggle +@opindex fvar-tracking-assignments-toggle +@opindex fno-var-tracking-assignments-toggle +Toggle @option{-fvar-tracking-assignments}, in the same way that +@option{-gtoggle} toggles @option{-g}. + @item -print-file-name=@var{library} @opindex print-file-name Print the full absolute name of the library file @var{library} that @@ -8094,6 +8118,12 @@ with more basic blocks than this parameter won't have loop invariant motion optimization performed on them. The default value of the parameter is 1000 for -O1 and 10000 for -O2 and above. +@item min-nondebug-insn-uid +Use uids starting at this parameter for nondebug insns. The range below +the parameter is reserved exclusively for debug insns created by +@option{-fvar-tracking-assignments}, but debug insns may get +(non-overlapping) uids above it if the reserved range is exhausted. + @end table @end table |