-
Notifications
You must be signed in to change notification settings - Fork 112
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
Add SoftFloat streflop from abma repo
- Loading branch information
Showing
12 changed files
with
8,545 additions
and
0 deletions.
There are no files selected for viewing
Large diffs are not rendered by default.
Oops, something went wrong.
Large diffs are not rendered by default.
Oops, something went wrong.
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,12 @@ | ||
This directory contains (in addition to this file): | ||
|
||
- SoftFloat-README.txt, SoftFloat.txt, SoftFloat-source.txt, SoftFloat-history.txt: Original documentation files | ||
|
||
- softfloat.h, milieu.h, softfloat.cpp, softfloat-macros, softfloat-specialize: These file were taken from the SoftFloat 2b distribution and specialized for this project. The list of modification is specified as a prominent notice at the beginning of each file. | ||
|
||
|
||
The softfloat.cpp file is compiled from the main streflop Makefile. | ||
|
||
|
||
This version is released under the GNU LGPL. See the original SoftFloat documentation for the original SoftFloat license and disclaimer. | ||
|
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,72 @@ | ||
|
||
Package Overview for SoftFloat Release 2b | ||
|
||
John R. Hauser | ||
2002 May 27 | ||
|
||
|
||
---------------------------------------------------------------------------- | ||
Overview | ||
|
||
SoftFloat is a software implementation of floating-point that conforms to | ||
the IEC/IEEE Standard for Binary Floating-Point Arithmetic. SoftFloat is | ||
distributed in the form of C source code. Compiling the SoftFloat sources | ||
generates two things: | ||
|
||
-- A SoftFloat object file (typically `softfloat.o') containing the complete | ||
set of IEC/IEEE floating-point routines. | ||
|
||
-- A `timesoftfloat' program for evaluating the speed of the SoftFloat | ||
routines. (The SoftFloat module is linked into this program.) | ||
|
||
The SoftFloat package is documented in four text files: | ||
|
||
SoftFloat.txt Documentation for using the SoftFloat functions. | ||
SoftFloat-source.txt Documentation for compiling SoftFloat. | ||
SoftFloat-history.txt History of major changes to SoftFloat. | ||
timesoftfloat.txt Documentation for using `timesoftfloat'. | ||
|
||
Other files in the package comprise the source code for SoftFloat. | ||
|
||
Please be aware that some work is involved in porting this software to other | ||
targets. It is not just a matter of getting `make' to complete without | ||
error messages. I would have written the code that way if I could, but | ||
there are fundamental differences between systems that can't be hidden. | ||
You should not attempt to compile SoftFloat without first reading both | ||
`SoftFloat.txt' and `SoftFloat-source.txt'. | ||
|
||
|
||
---------------------------------------------------------------------------- | ||
Legal Notice | ||
|
||
SoftFloat was written by me, John R. Hauser. This work was made possible in | ||
part by the International Computer Science Institute, located at Suite 600, | ||
1947 Center Street, Berkeley, California 94704. Funding was partially | ||
provided by the National Science Foundation under grant MIP-9311980. The | ||
original version of this code was written as part of a project to build | ||
a fixed-point vector processor in collaboration with the University of | ||
California at Berkeley, overseen by Profs. Nelson Morgan and John Wawrzynek. | ||
|
||
THIS SOFTWARE IS DISTRIBUTED AS IS, FOR FREE. Although reasonable effort | ||
has been made to avoid it, THIS SOFTWARE MAY CONTAIN FAULTS THAT WILL AT | ||
TIMES RESULT IN INCORRECT BEHAVIOR. USE OF THIS SOFTWARE IS RESTRICTED TO | ||
PERSONS AND ORGANIZATIONS WHO CAN AND WILL TAKE FULL RESPONSIBILITY FOR ALL | ||
LOSSES, COSTS, OR OTHER PROBLEMS THEY INCUR DUE TO THE SOFTWARE, AND WHO | ||
FURTHERMORE EFFECTIVELY INDEMNIFY JOHN HAUSER AND THE INTERNATIONAL COMPUTER | ||
SCIENCE INSTITUTE (possibly via similar legal warning) AGAINST ALL LOSSES, | ||
COSTS, OR OTHER PROBLEMS INCURRED BY THEIR CUSTOMERS AND CLIENTS DUE TO THE | ||
SOFTWARE. | ||
|
||
Derivative works are acceptable, even for commercial purposes, provided | ||
that the minimal documentation requirements stated in the source code are | ||
satisfied. | ||
|
||
|
||
---------------------------------------------------------------------------- | ||
Contact Information | ||
|
||
At the time of this writing, the most up-to-date information about | ||
SoftFloat and the latest release can be found at the Web page `http:// | ||
www.cs.berkeley.edu/~jhauser/arithmetic/SoftFloat.html'. | ||
|
||
|
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,57 @@ | ||
|
||
History of Major Changes to SoftFloat, up to Release 2b | ||
|
||
John R. Hauser | ||
2002 May 27 | ||
|
||
|
||
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - | ||
Release 2b (2002 May) | ||
|
||
-- Made minor updates to the documentation, including improved wording of | ||
the legal restrictions on using SoftFloat. | ||
|
||
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - | ||
Release 2a (1998 December) | ||
|
||
-- Added functions to convert between 64-bit integers (int64) and all | ||
supported floating-point formats. | ||
|
||
-- Fixed a bug in all 64-bit-version square root functions except | ||
`float32_sqrt' that caused the result sometimes to be off by 1 unit in | ||
the last place (1 ulp) from what it should be. (Bug discovered by Paul | ||
Donahue.) | ||
|
||
-- Improved the makefiles. | ||
|
||
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - | ||
Release 2 (1997 June) | ||
|
||
-- Created the 64-bit (bits64) version, adding the floatx80 and float128 | ||
formats. | ||
|
||
-- Changed the source directory structure, splitting the sources into a | ||
`bits32' and a `bits64' version. Renamed `environment.h' to `milieu.h' | ||
to avoid confusion with environment variables. | ||
|
||
-- Fixed a small error that caused `float64_round_to_int' often to round the | ||
wrong way in nearest/even mode when the operand was between 2^20 and 2^21 | ||
and halfway between two integers. | ||
|
||
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - | ||
Release 1a (1996 July) | ||
|
||
-- Corrected a mistake that caused borderline underflow cases not to raise | ||
the underflow flag when they should have. (Problem reported by Doug | ||
Priest.) | ||
|
||
-- Added the `float_detect_tininess' variable to control whether tininess is | ||
detected before or after rounding. | ||
|
||
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - | ||
Release 1 (1996 July) | ||
|
||
-- Original release. | ||
|
||
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - | ||
|
Oops, something went wrong.