
<HTML>

<HEAD>
<TITLE>Berkeley TestFloat Package Overview</TITLE>
</HEAD>

<BODY>

<H1>Package Overview for Berkeley TestFloat Release 3</H1>

<P>
John R. Hauser<BR>
2015 February 16<BR>
</P>

<P>
Berkeley TestFloat is a small collection of programs for testing that an
implementation of binary floating-point conforms to the IEEE Standard for
Floating-Point Arithmetic.
TestFloat is distributed in the form of C source code.
</P>

<P>
The TestFloat package is documented in the following files in the
<CODE>doc</CODE> subdirectory:
<BLOCKQUOTE>
<TABLE>
<TR>
<TD><A HREF="doc/TestFloat-general.html"><CODE>TestFloat-general.html</CODE></A></TD>
<TD>
General documentation for understanding and using the TestFloat programs.
</TD>
</TR>
<TD><A HREF="doc/testfloat_gen.html"><CODE>testfloat_gen.html</CODE></A></TD>
<TD>
Specific documentation for the <CODE>testfloat_gen</CODE> program.
</TD>
</TR>
<TR>
<TD><A HREF="doc/testfloat_ver.html"><CODE>testfloat_ver.html</CODE></A></TD>
<TD>
Specific documentation for the <CODE>testfloat_ver</CODE> program.
</TD>
</TR>
<TR>
<TD><A HREF="doc/testfloat.html"><CODE>testfloat.html</CODE></A></TD>
<TD>
Specific documentation for the all-in-one <CODE>testfloat</CODE> program.
</TD>
</TR>
<TR>
<TD><A HREF="doc/testsoftfloat.html"><CODE>testsoftfloat.html</CODE></A></TD>
<TD>
Specific documentation for the <CODE>testsoftfloat</CODE> program.
</TD>
</TR>
<TR>
<TD><A HREF="doc/timesoftfloat.html"><CODE>timesoftfloat.html</CODE></A></TD>
<TD>
Specific documentation for the <CODE>timesoftfloat</CODE> program.
</TD>
</TR>
<TR>
<TD><A HREF="doc/TestFloat-source.html"><CODE>TestFloat-source.html</CODE></A></TD>
<TD>
Documentation for building TestFloat.
</TD>
</TR>
<TR>
<TD><A HREF="doc/TestFloat-history.html"><CODE>TestFloat-history.html</CODE></A><CODE>&nbsp;&nbsp;&nbsp;</CODE></TD>
<TD>
History of the major changes to TestFloat.
</TD>
</TR>
</TABLE>
</BLOCKQUOTE>
Other files in the package comprise the source code for TestFloat.
</P>

</BODY>

