cachepc-linux

Fork of AMDESE/linux with modifications for CachePC side-channel attack
git clone https://git.sinitax.com/sinitax/cachepc-linux
Log | Files | Refs | README | LICENSE | sfeed.txt

nwfpe.rst (3821B)


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