aboutsummaryrefslogtreecommitdiff
path: root/doc/testfloat_gen.html
diff options
context:
space:
mode:
authorJohn Hauser <jhauser@eecs.berkeley.edu>2014-12-17 19:09:39 -0800
committerJohn Hauser <jhauser@eecs.berkeley.edu>2014-12-17 19:09:39 -0800
commitcec54960bbbfa351cab7dab75eb1418585e4fe64 (patch)
tree8c606f0c513bc0ef9582795bd159be8dcffaf565 /doc/testfloat_gen.html
parent86cdc156a7c1bb471c11b14d65b9d2b48b714935 (diff)
downloadberkeley-testfloat-3-cec54960bbbfa351cab7dab75eb1418585e4fe64.zip
berkeley-testfloat-3-cec54960bbbfa351cab7dab75eb1418585e4fe64.tar.gz
berkeley-testfloat-3-cec54960bbbfa351cab7dab75eb1418585e4fe64.tar.bz2
Finalized documentation for TestFloat Release 3.
Diffstat (limited to 'doc/testfloat_gen.html')
-rw-r--r--doc/testfloat_gen.html79
1 files changed, 42 insertions, 37 deletions
diff --git a/doc/testfloat_gen.html b/doc/testfloat_gen.html
index 43e6d20..3cbdf9a 100644
--- a/doc/testfloat_gen.html
+++ b/doc/testfloat_gen.html
@@ -11,19 +11,7 @@
<P>
John R. Hauser<BR>
-2014 ______<BR>
-</P>
-
-<P>
-*** CONTENT DONE.
-</P>
-
-<P>
-*** REPLACE QUOTATION MARKS.
-<BR>
-*** REPLACE APOSTROPHES.
-<BR>
-*** REPLACE EM DASH.
+2014 Dec 17<BR>
</P>
@@ -55,8 +43,8 @@ cases as they are supplied.
Depending on use, the total output from <CODE>testfloat_gen</CODE> can be
large, so piping to another program may be the best choice to avoid consuming
inordinate file space.
-The format of <CODE>testfloat_gen</CODE>'s output is raw hexadecimal text,
-described in the section below titled <I>Output Format</I>.
+The format of <CODE>testfloat_gen</CODE>&rsquo;s output is raw hexadecimal
+text, described in the section below titled <I>Output Format</I>.
</P>
@@ -65,10 +53,12 @@ described in the section below titled <I>Output Format</I>.
<P>
The <CODE>testfloat_gen</CODE> program is executed as a command in one of these
forms:
+<BLOCKQUOTE>
<PRE>
- testfloat_gen [&lt;option&gt;...] &lt;type&gt;
- testfloat_gen [&lt;option&gt;...] &lt;function&gt;
+testfloat_gen [&lt;option&gt;...] &lt;type&gt;
+testfloat_gen [&lt;option&gt;...] &lt;function&gt;
</PRE>
+</BLOCKQUOTE>
Square brackets (<CODE>[ ]</CODE>) denote optional arguments, and
<CODE>&lt;option&gt;</CODE> is a supported option, documented below.
A <CODE>testfloat_gen</CODE> command expects either a <CODE>&lt;type&gt;</CODE>
@@ -81,7 +71,7 @@ usage is written.
<P>
A <CODE>&lt;type&gt;</CODE> can be one of the following:
<BLOCKQUOTE>
-<TABLE>
+<TABLE CELLSPACING=0 CELLPADDING=0>
<TR>
<TD><CODE>ui32</CODE></TD>
<TD>unsigned <NOBR>32-bit</NOBR> integers</TD>
@@ -139,7 +129,8 @@ If a <CODE>&lt;function&gt;</CODE> operation name is given, then each line of
output from <CODE>testfloat_gen</CODE> contains not only the operands for that
operation (as would be generated by an appropriate <CODE>&lt;type&gt;</CODE>
argument) but also the expected results as determined by
-<CODE>testfloat_gen</CODE>'s internal floating-point emulation (SoftFloat).
+<CODE>testfloat_gen</CODE>&rsquo;s internal floating-point emulation
+(SoftFloat).
The available operation names are listed in
<A HREF="TestFloat-general.html"><NOBR><CODE>TestFloat-general.html</CODE></NOBR></A>.
In all cases, floating-point operations have two results:
@@ -283,17 +274,21 @@ integer value or one, two, or three floating-point values.
Each value is written to output as a raw hexadecimal number.
When there is more than one value per line, they are separated by spaces.
For example, output from executing
+<BLOCKQUOTE>
<PRE>
- testfloat_gen f64 2
+testfloat_gen f64 2
</PRE>
+</BLOCKQUOTE>
might look like this:
+<BLOCKQUOTE>
<PRE>
- 3F90EB5825D6851E C3E0080080000000
- 41E3C00000000000 C182024F8AE474A8
- 7FD80FFFFFFFFFFF 7FEFFFFFFFFFFF80
- 3FFFED6A25C534BE 3CA1000000020000
- ...
+3F90EB5825D6851E C3E0080080000000
+41E3C00000000000 C182024F8AE474A8
+7FD80FFFFFFFFFFF 7FEFFFFFFFFFFF80
+3FFFED6A25C534BE 3CA1000000020000
+...
</PRE>
+</BLOCKQUOTE>
with each hexadecimal number being one <NOBR>64-bit</NOBR> floating-point
value.
Note that, for floating-point values, the sign and exponent are at the
@@ -310,28 +305,38 @@ operation name, each line of output has not only the operands for the operation
but also the expected output, consisting of a result value and the exception
flags that are raised.
For example, the output from
+<BLOCKQUOTE>
<PRE>
- testfloat_gen f64_add
+testfloat_gen f64_add
</PRE>
+</BLOCKQUOTE>
could include these lines:
+<BLOCKQUOTE>
<PRE>
- 3F90EB5825D6851E C3E0080080000000 C3E0080080000000 01
- 41E3C00000000000 C182024F8AE474A8 41E377F6C1D46E2D 01
- 7FD80FFFFFFFFFFF 7FEFFFFFFFFFFF80 7FF0000000000000 05
- 3FFFED6A25C534BE 3CA1000000020000 3FFFED6A25C534BF 01
- ...
+3F90EB5825D6851E C3E0080080000000 C3E0080080000000 01
+41E3C00000000000 C182024F8AE474A8 41E377F6C1D46E2D 01
+7FD80FFFFFFFFFFF 7FEFFFFFFFFFFF80 7FF0000000000000 05
+3FFFED6A25C534BE 3CA1000000020000 3FFFED6A25C534BF 01
+...
</PRE>
+</BLOCKQUOTE>
On each line, the first two numbers are the operands for the floating-point
addition, and the third and fourth numbers are the expected floating-point
result (the sum) and the exception flags raised.
Exception flags are encoded with one bit per flag as follows:
<BLOCKQUOTE>
-<TABLE>
-<TR><TD>bit 0</TD><TD>&nbsp;&nbsp;&nbsp;</TD><TD><I>inexact</I> exception</TD></TR>
-<TR><TD>bit 1</TD><TD> </TD><TD><I>underflow</I> exception</TD></TR>
-<TR><TD>bit 2</TD><TD> </TD><TD><I>overflow</I> exception</TD></TR>
-<TR><TD>bit 3</TD><TD> </TD><TD><I>infinite</I> exception ("divide by zero")</TD></TR>
-<TR><TD>bit 4</TD><TD> </TD><TD><I>invalid</I> exception</TD></TR>
+<TABLE CELLSPACING=0 CELLPADDING=0>
+<TR>
+ <TD>bit 0<CODE>&nbsp;&nbsp;&nbsp;</CODE></TD>
+ <TD><I>inexact</I> exception</TD>
+</TR>
+<TR><TD>bit 1</TD><TD><I>underflow</I> exception</TD></TR>
+<TR><TD>bit 2</TD><TD><I>overflow</I> exception</TD></TR>
+<TR>
+ <TD>bit 3</TD>
+ <TD><I>infinite</I> exception (&ldquo;divide by zero&rdquo;)</TD>
+</TR>
+<TR><TD>bit 4</TD><TD><I>invalid</I> exception</TD></TR>
</TABLE>
</BLOCKQUOTE>
</P>