]>
Commit | Line | Data |
---|---|---|
dc7a12bd MCC |
1 | Introduction |
2 | ============ | |
3 | ||
4 | This directory contains the version 0.92 test release of the NetWinder | |
1da177e4 LT |
5 | Floating Point Emulator. |
6 | ||
7 | The majority of the code was written by me, Scott Bambrough It is | |
8 | written in C, with a small number of routines in inline assembler | |
9 | where required. It was written quickly, with a goal of implementing a | |
10 | working version of all the floating point instructions the compiler | |
11 | emits as the first target. I have attempted to be as optimal as | |
12 | possible, but there remains much room for improvement. | |
13 | ||
14 | I have attempted to make the emulator as portable as possible. One of | |
15 | the problems is with leading underscores on kernel symbols. Elf | |
16 | kernels have no leading underscores, a.out compiled kernels do. I | |
17 | have attempted to use the C_SYMBOL_NAME macro wherever this may be | |
18 | important. | |
19 | ||
20 | Another choice I made was in the file structure. I have attempted to | |
21 | contain all operating system specific code in one module (fpmodule.*). | |
22 | All the other files contain emulator specific code. This should allow | |
23 | others to port the emulator to NetBSD for instance relatively easily. | |
24 | ||
25 | The floating point operations are based on SoftFloat Release 2, by | |
26 | John Hauser. SoftFloat is a software implementation of floating-point | |
27 | that conforms to the IEC/IEEE Standard for Binary Floating-point | |
28 | Arithmetic. As many as four formats are supported: single precision, | |
29 | double precision, extended double precision, and quadruple precision. | |
30 | All operations required by the standard are implemented, except for | |
31 | conversions to and from decimal. We use only the single precision, | |
32 | double precision and extended double precision formats. The port of | |
33 | SoftFloat to the ARM was done by Phil Blundell, based on an earlier | |
34 | port of SoftFloat version 1 by Neil Carson for NetBSD/arm32. | |
35 | ||
36 | The file README.FPE contains a description of what has been implemented | |
dc7a12bd | 37 | so far in the emulator. The file TODO contains a information on what |
1da177e4 LT |
38 | remains to be done, and other ideas for the emulator. |
39 | ||
40 | Bug reports, comments, suggestions should be directed to me at | |
41 | <scottb@netwinder.org>. General reports of "this program doesn't | |
42 | work correctly when your emulator is installed" are useful for | |
43 | determining that bugs still exist; but are virtually useless when | |
44 | attempting to isolate the problem. Please report them, but don't | |
45 | expect quick action. Bugs still exist. The problem remains in isolating | |
46 | which instruction contains the bug. Small programs illustrating a specific | |
47 | problem are a godsend. | |
48 | ||
49 | Legal Notices | |
50 | ------------- | |
51 | ||
52 | The NetWinder Floating Point Emulator is free software. Everything Rebel.com | |
53 | has written is provided under the GNU GPL. See the file COPYING for copying | |
dc7a12bd | 54 | conditions. Excluded from the above is the SoftFloat code. John Hauser's |
1da177e4 LT |
55 | legal notice for SoftFloat is included below. |
56 | ||
57 | ------------------------------------------------------------------------------- | |
dc7a12bd | 58 | |
1da177e4 LT |
59 | SoftFloat Legal Notice |
60 | ||
61 | SoftFloat was written by John R. Hauser. This work was made possible in | |
62 | part by the International Computer Science Institute, located at Suite 600, | |
63 | 1947 Center Street, Berkeley, California 94704. Funding was partially | |
64 | provided by the National Science Foundation under grant MIP-9311980. The | |
65 | original version of this code was written as part of a project to build | |
66 | a fixed-point vector processor in collaboration with the University of | |
67 | California at Berkeley, overseen by Profs. Nelson Morgan and John Wawrzynek. | |
68 | ||
69 | THIS SOFTWARE IS DISTRIBUTED AS IS, FOR FREE. Although reasonable effort | |
70 | has been made to avoid it, THIS SOFTWARE MAY CONTAIN FAULTS THAT WILL AT | |
71 | TIMES RESULT IN INCORRECT BEHAVIOR. USE OF THIS SOFTWARE IS RESTRICTED TO | |
72 | PERSONS AND ORGANIZATIONS WHO CAN AND WILL TAKE FULL RESPONSIBILITY FOR ANY | |
73 | AND ALL LOSSES, COSTS, OR OTHER PROBLEMS ARISING FROM ITS USE. | |
74 | ------------------------------------------------------------------------------- |