summaryrefslogtreecommitdiff
path: root/gas
diff options
context:
space:
mode:
authorBob Wilson <bob.wilson@acm.org>2008-10-09 18:08:10 +0000
committerBob Wilson <bob.wilson@acm.org>2008-10-09 18:08:10 +0000
commit14082c76243bc7ec79c20faa7b01a320f30caa97 (patch)
treebd6b53221718f979cdcc352e908b9ac7537413d7 /gas
parentad5fec3b3a1e529a7056e15f271851bd0dfb10fa (diff)
downloadbinutils-gdb-14082c76243bc7ec79c20faa7b01a320f30caa97.tar.gz
* doc/as.texinfo (Pseudo Ops): Remove no-file-dir conditional around
menu entry for File; remove version-specific .file operands from menu description. Replace "LNS directives" menu entry with new entries for "Loc" and "Loc_mark_labels". (LNS directives): Split into separate nodes for each directive. (Loc): New node for .loc directive. Mention that this directive is for DWARF2 and add a missing article. (Loc_mark_labels): Likewise for .loc_mark_labels. (File): Change this node to describe both the default version and the DWARF2 version of .file. Move the no-file-dir conditional to include only the default version.
Diffstat (limited to 'gas')
-rw-r--r--gas/ChangeLog14
-rw-r--r--gas/doc/as.texinfo70
2 files changed, 58 insertions, 26 deletions
diff --git a/gas/ChangeLog b/gas/ChangeLog
index a3b056bee21..a2e5cb0ef3e 100644
--- a/gas/ChangeLog
+++ b/gas/ChangeLog
@@ -1,3 +1,17 @@
+2008-10-09 Bob Wilson <bob.wilson@acm.org>
+
+ * doc/as.texinfo (Pseudo Ops): Remove no-file-dir conditional around
+ menu entry for File; remove version-specific .file operands from menu
+ description. Replace "LNS directives" menu entry with new entries
+ for "Loc" and "Loc_mark_labels".
+ (LNS directives): Split into separate nodes for each directive.
+ (Loc): New node for .loc directive. Mention that this directive
+ is for DWARF2 and add a missing article.
+ (Loc_mark_labels): Likewise for .loc_mark_labels.
+ (File): Change this node to describe both the default version and
+ the DWARF2 version of .file. Move the no-file-dir conditional to
+ include only the default version.
+
2008-10-09 Eric Botcazou <ebotcazou@adacore.com>
* dw2gencfi.c (cfi_finish): Deal with md_fix_up_eh_frame.
diff --git a/gas/doc/as.texinfo b/gas/doc/as.texinfo
index 445445b2021..2503ed4a93b 100644
--- a/gas/doc/as.texinfo
+++ b/gas/doc/as.texinfo
@@ -3841,10 +3841,7 @@ Some machine configurations provide additional directives.
* Exitm:: @code{.exitm}
* Extern:: @code{.extern}
* Fail:: @code{.fail}
-@ifclear no-file-dir
-* File:: @code{.file @var{string}}
-@end ifclear
-
+* File:: @code{.file}
* Fill:: @code{.fill @var{repeat} , @var{size} , @var{value}}
* Float:: @code{.float @var{flonums}}
* Func:: @code{.func}
@@ -3875,8 +3872,8 @@ Some machine configurations provide additional directives.
* Linkonce:: @code{.linkonce [@var{type}]}
* List:: @code{.list}
* Ln:: @code{.ln @var{line-number}}
-
-* LNS directives:: @code{.file}, @code{.loc}, etc.
+* Loc:: @code{.loc @var{fileno} @var{lineno}}
+* Loc_mark_labels:: @code{.loc_mark_labels @var{enable}}
@ifset ELF
* Local:: @code{.local @var{names}}
@end ifset
@@ -4244,22 +4241,11 @@ mark a code segment that has only one return address which is reached
by a direct branch and no copy of the return address exists in memory
or another register.
-@node LNS directives
-@section @code{.file @var{fileno} @var{filename}}
-@cindex @code{file} directive
-When emitting dwarf2 line number information @code{.file} assigns filenames
-to the @code{.debug_line} file name table. The @var{fileno} operand should
-be a unique positive integer to use as the index of the entry in the table.
-The @var{filename} operand is a C string literal.
-
-The detail of filename indices is exposed to the user because the filename
-table is shared with the @code{.debug_info} section of the dwarf2 debugging
-information, and thus the user must know the exact indices that table
-entries will have.
-
+@node Loc
@section @code{.loc @var{fileno} @var{lineno} [@var{column}] [@var{options}]}
@cindex @code{loc} directive
-The @code{.loc} directive will add row to the @code{.debug_line} line
+When emitting DWARF2 line number information,
+the @code{.loc} directive will add a row to the @code{.debug_line} line
number matrix corresponding to the immediately following assembly
instruction. The @var{fileno}, @var{lineno}, and optional @var{column}
arguments will be applied to the @code{.debug_line} state machine before
@@ -4291,9 +4277,11 @@ state machine to @var{value}, which must be an unsigned integer.
@end table
+@node Loc_mark_labels
@section @code{.loc_mark_labels @var{enable}}
@cindex @code{loc_mark_labels} directive
-The @code{.loc_mark_labels} directive makes the assembler emit an entry
+When emitting DWARF2 line number information,
+the @code{.loc_mark_labels} directive makes the assembler emit an entry
to the @code{.debug_line} line number matrix with the @code{basic_block}
register in the state machine set whenever a code label is seen.
The @var{enable} argument should be either 1 or 0, to enable or disable
@@ -4529,21 +4517,51 @@ than 500, @command{@value{AS}} will print an error message. The message will
include the value of @var{expression}. This can occasionally be useful inside
complex nested macros or conditional assembly.
-@ifclear no-file-dir
@node File
-@section @code{.file @var{string}}
-
+@section @code{.file}
@cindex @code{file} directive
+
+@ifclear no-file-dir
+There are two different versions of the @code{.file} directive. Targets
+that support DWARF2 line number information use the DWARF2 version of
+@code{.file}. Other targets use the default version.
+
+@subheading Default Version
+
@cindex logical file name
@cindex file name, logical
-@code{.file} tells @command{@value{AS}} that we are about to start a new logical
-file. @var{string} is the new file name. In general, the filename is
+This version of the @code{.file} directive tells @command{@value{AS}} that we
+are about to start a new logical file. The syntax is:
+
+@smallexample
+.file @var{string}
+@end smallexample
+
+@var{string} is the new file name. In general, the filename is
recognized whether or not it is surrounded by quotes @samp{"}; but if you wish
to specify an empty file name, you must give the quotes--@code{""}. This
statement may go away in future: it is only recognized to be compatible with
old @command{@value{AS}} programs.
+
+@subheading DWARF2 Version
@end ifclear
+When emitting DWARF2 line number information, @code{.file} assigns filenames
+to the @code{.debug_line} file name table. The syntax is:
+
+@smallexample
+.file @var{fileno} @var{filename}
+@end smallexample
+
+The @var{fileno} operand should be a unique positive integer to use as the
+index of the entry in the table. The @var{filename} operand is a C string
+literal.
+
+The detail of filename indices is exposed to the user because the filename
+table is shared with the @code{.debug_info} section of the DWARF2 debugging
+information, and thus the user must know the exact indices that table
+entries will have.
+
@node Fill
@section @code{.fill @var{repeat} , @var{size} , @var{value}}