This is the mail archive of the
binutils@sources.redhat.com
mailing list for the binutils project.
Texinfo 4 features in MMIX docs, committed.
- From: Hans-Peter Nilsson <hp at bitrange dot com>
- To: <binutils at sources dot redhat dot com>
- Date: Sun, 18 Nov 2001 20:25:03 -0500 (EST)
- Subject: Texinfo 4 features in MMIX docs, committed.
Now that texinfo 4 is enforced by the top-level Makefile.in, I
think it's in order to use the texinfo 4 features that were in
the original submission, as I whined about the other day. :-)
Also a simple typo fix in c-mmix.texi. Committed.
bfd:
* mmo.c: Adjust documentation tags to use texinfo 4 features.
gas:
* doc/c-mmix.texi: Use texinfo 4 features.
(MMIX-mmixal): Fix typo.
Index: mmo.c
===================================================================
RCS file: /cvs/src/src/bfd/mmo.c,v
retrieving revision 1.1
diff -u -p -r1.1 mmo.c
--- mmo.c 2001/10/30 15:20:02 1.1
+++ mmo.c 2001/11/19 00:18:50
@@ -27,15 +27,15 @@ SECTION
The mmo object format is used exclusively together with Professor
Donald E.@: Knuth's educational 64-bit processor MMIX. The simulator
- @emph{mmix} which is available at
- @emph{http://www-cs-faculty.stanford.edu/~knuth/programs/mmix.tar.gz}
+ @command{mmix} which is available at
+ @url{http://www-cs-faculty.stanford.edu/~knuth/programs/mmix.tar.gz}
understands this format. That package also includes a combined
- assembler and linker called @emph{mmixal}. The mmo format has
+ assembler and linker called @command{mmixal}. The mmo format has
no advantages feature-wise compared to e.g. ELF. It is a simple
non-relocatable object format with no support for archives or
debugging information, except for symbol value information and
line numbers (which is not yet implemented in BFD). See
- @emph{http://www-cs-faculty.stanford.edu/~knuth/mmix.html} for more
+ @url{http://www-cs-faculty.stanford.edu/~knuth/mmix.html} for more
information about MMIX. The ELF format is used for intermediate
object files in the BFD implementation.
@@ -68,7 +68,7 @@ SUBSECTION
two remaining bytes, called the @samp{Y} and @samp{Z} fields, or
the @samp{YZ} field (a 16-bit big-endian number), are used for
various purposes different for each lopcode. As documented in
- @emph{http://www-cs-faculty.stanford.edu/~knuth/mmixal-intro.ps.gz},
+ @url{http://www-cs-faculty.stanford.edu/~knuth/mmixal-intro.ps.gz},
the lopcodes are:
There is provision for specifying ``special data'' of 65536
@@ -1210,7 +1210,7 @@ SUBSECTION
Symbol table format
From mmixal.w (or really, the generated mmixal.tex) in
- @emph{http://www-cs-faculty.stanford.edu/~knuth/programs/mmix.tar.gz}):
+ @url{http://www-cs-faculty.stanford.edu/~knuth/programs/mmix.tar.gz}):
``Symbols are stored and retrieved by means of a @samp{ternary
search trie}, following ideas of Bentley and Sedgewick. (See
ACM--SIAM Symp.@: on Discrete Algorithms @samp{8} (1997), 360--369;
Index: c-mmix.texi
===================================================================
RCS file: /cvs/src/src/gas/doc/c-mmix.texi,v
retrieving revision 1.1
diff -u -p -r1.1 c-mmix.texi
--- c-mmix.texi 2001/10/30 15:20:07 1.1
+++ c-mmix.texi 2001/11/19 00:53:40
@@ -62,8 +62,8 @@ or an external symbol (@pxref{MMIX-Expan
at link time if the operand does not fit.
@cindex @samp{--no-merge-gregs} command line option, MMIX
-The @code{mmixal} documentation (@pxref{MMIX-Syntax}) specifies that global
-registers allocated with the @samp{GREG} directive (@pxref{MMIX-Pseudos}) and
+The @code{mmixal} documentation (@pxref{mmixsite}) specifies that global
+registers allocated with the @samp{GREG} directive (@pxref{MMIX-greg}) and
initialized to the same non-zero value, will refer to the same global
register. This isn't strictly enforcable in @code{@value{AS}} since the
final addresses aren't known until link-time, but it will do an effort
@@ -119,7 +119,7 @@ The assembly syntax is supposed to be up
described in Sections 1.3 and 1.4 of @samp{The Art of Computer
Programming, Volume 1}. Draft versions of those chapters as well as other
MMIX information is located at
-@emph{mmixsite} @emph{http://www-cs-faculty.stanford.edu/~knuth/mmix-news.html}.
+@anchor{mmixsite}@url{http://www-cs-faculty.stanford.edu/~knuth/mmix-news.html}.
Most code examples from the mmixal package located there should work
unmodified when assembled and linked as single files, with a few
noteworthy exceptions (@pxref{MMIX-mmixal}).
@@ -164,7 +164,7 @@ The character @samp{:} is permitted in i
exceptions to it being treated as any other symbol character: if a symbol
begins with @samp{:}, it means that the symbol is in the global namespace
and that the current prefix should not be prepended to that symbol
-(@pxref{MMIX-Pseudos}). The @samp{:} is then not considered part of the
+(@pxref{MMIX-prefix}). The @samp{:} is then not considered part of the
symbol. For a symbol in the label position (first on a line), a @samp{:}
at the end of a symbol is silently stripped off. A label is permitted,
but not required, to be followed by a @samp{:}, as with many other
@@ -198,7 +198,7 @@ By defining the symbols @samp{__.MMIX.st
and @samp{.data} segments of the final program can be defined, though when
linking more than one object file, the code or data in the object file
containing the symbol is not guaranteed to be start at that position; just
-the final executable. @xref{MMIX-Pseudos}.
+the final executable. @xref{MMIX-loc}.
@node MMIX-Regs
@subsection Register names
@@ -238,7 +238,7 @@ instructions having a special register o
@cindex MMIX assembler directive LOC
@cindex MMIX pseudo-op LOC
-@emph{MMIX-loc}
+@anchor{MMIX-loc}
The @code{LOC} directive sets the current location to the value of the
operand field, which may include changing sections. If the operand is a
constant, the section is set to either @code{.data} if the value is
@@ -267,7 +267,7 @@ with the LOC definition).
@cindex MMIX assembler directive LOCAL
@cindex MMIX pseudo-op LOCAL
-@emph{MMIX-local}
+@anchor{MMIX-local}
Example:
@smallexample
LOCAL external_symbol
@@ -288,7 +288,7 @@ section with contents, code or data.
@cindex MMIX assembler directive IS
@cindex MMIX pseudo-op IS
-@emph{MMIX-is}
+@anchor{MMIX-is}
The @code{IS} directive:
@smallexample
asymbol IS an_expression
@@ -306,7 +306,7 @@ this directive, for example:
@cindex MMIX assembler directive GREG
@cindex MMIX pseudo-op GREG
-@emph{MMIX-greg}
+@anchor{MMIX-greg}
This directive reserves a global register, gives it an initial value and
optionally gives it a symbolic name. Some examples:
@@ -353,7 +353,7 @@ Any of the instructions
@samp{STUNC},
@samp{SYNCD},
@samp{SYNCID},
-can have a value nearby @emph{GREG-base}an initial value in place of its
+can have a value nearby @anchor{GREG-base}an initial value in place of its
second and third operands. Here, ``nearby'' is defined as within the
range 0@dots{}255 from the initial value of such an allocated register.
@@ -389,7 +389,7 @@ together.
@cindex MMIX assembler directive BYTE
@cindex MMIX pseudo-op BYTE
-@emph{MMIX-byte}
+@anchor{MMIX-byte}
The @samp{BYTE} directive takes a series of operands separated by a comma.
If an operand is a string (@pxref{Strings}), each character of that string
is emitted as a byte. Other operands must be constant expressions without
@@ -413,7 +413,7 @@ operand can be omitted, defaulting to a
@cindex MMIX assembler directive OCTA
@cindex MMIX pseudo-op OCTA
-@emph{MMIX-constants}
+@anchor{MMIX-constants}
The directives @samp{WYDE}, @samp{TETRA} and @samp{OCTA} emit constants of
two, four and eight bytes size respectively. Before anything else happens
for the directive, the current location is aligned to the respective
@@ -430,7 +430,7 @@ indicated by the directive.
@cindex MMIX assembler directive PREFIX
@cindex MMIX pseudo-op PREFIX
-@emph{MMIX-prefix}
+@anchor{MMIX-prefix}
The @samp{PREFIX} directive sets a symbol name prefix to be prepended to
all symbols (except local symbols, @pxref{MMIX-Symbols}), that are not
prefixed with @samp{:}, until the next @samp{PREFIX} directive. Such
@@ -453,7 +453,7 @@ defines a symbol @samp{abc} with the val
@cindex MMIX assembler directive ESPEC
@cindex MMIX pseudo-op ESPEC
-@emph{MMIX-spec}
+@anchor{MMIX-spec}
A pair of @samp{BSPEC} and @samp{ESPEC} directives delimit a section of
special contents (without specified semantics). Example:
@smallexample
@@ -472,10 +472,10 @@ implementation.
@cindex differences, mmixal
The binutils @code{@value{AS}} and @code{@value{LD}} combination has a few
-differences in function compared to @code{mmixal} (@pxref{MMIX-Syntax}).
+differences in function compared to @code{mmixal} (@pxref{mmixsite}).
The replacement of a symbol with a GREG-allocated register
-(@xref{MMIX-Pseudos}) is not handled the exactly same way in
+(@pxref{GREG-base}) is not handled the exactly same way in
@code{@value{AS}} as in @code{mmixal}. This is apparent in the
@code{mmixal} example file @code{inout.mms}, where different registers
with different offsets, eventually yielding the same address, are used in
@@ -516,7 +516,7 @@ Some mapping of constant expressions to
attempted, but that functionality is easily confused and should be avoided
unless compatibility with @code{mmixal} is required. A LOC expression to
@samp{0x2000000000000000} or higher, maps to the @samp{.data} section and
-lower addresses map to the @samp{.text} section (@pxref{MMIX-Pseudos}).
+lower addresses map to the @samp{.text} section (@pxref{MMIX-loc}).
The code and data areas are each contiguous. Sparse programs with
far-away LOC directives will take up the same amount of space as a
@@ -545,9 +545,9 @@ upper-case characters.
There's no unicode support.
The following is a list of programs in
-@emph{http://www-cs-faculty.stanford.edu/~knuth/mmix-news.html} dated
-2001-08-25 (md5sum c393470cfc86fac040487d22d2bf0172) that assembles with
-@code{mmixal} but don't with @code{@value{AS}}:
+@url{http://www-cs-faculty.stanford.edu/~knuth/mmix-news.html} dated
+2001-08-25 (md5sum c393470cfc86fac040487d22d2bf0172) that assemble with
+@code{mmixal} but do not assemble with @code{@value{AS}}:
@table @code
@item silly.mms
brgds, H-P