Annotation of previous_trunk/src/softfloat/fpu_constant.h, revision 1.1

1.1     ! root        1: /*============================================================================
        !             2: This source file is an extension to the SoftFloat IEC/IEEE Floating-point
        !             3: Arithmetic Package, Release 2b, written for Bochs (x86 achitecture simulator)
        !             4: floating point emulation.
        !             5: 
        !             6: THIS SOFTWARE IS DISTRIBUTED AS IS, FOR FREE.  Although reasonable effort has
        !             7: been made to avoid it, THIS SOFTWARE MAY CONTAIN FAULTS THAT WILL AT TIMES
        !             8: RESULT IN INCORRECT BEHAVIOR.  USE OF THIS SOFTWARE IS RESTRICTED TO PERSONS
        !             9: AND ORGANIZATIONS WHO CAN AND WILL TAKE FULL RESPONSIBILITY FOR ALL LOSSES,
        !            10: COSTS, OR OTHER PROBLEMS THEY INCUR DUE TO THE SOFTWARE, AND WHO FURTHERMORE
        !            11: EFFECTIVELY INDEMNIFY JOHN HAUSER AND THE INTERNATIONAL COMPUTER SCIENCE
        !            12: INSTITUTE (possibly via similar legal warning) AGAINST ALL LOSSES, COSTS, OR
        !            13: OTHER PROBLEMS INCURRED BY THEIR CUSTOMERS AND CLIENTS DUE TO THE SOFTWARE.
        !            14: 
        !            15: Derivative works are acceptable, even for commercial purposes, so long as
        !            16: (1) the source code for the derivative work includes prominent notice that
        !            17: the work is derivative, and (2) the source code includes prominent notice with
        !            18: these four paragraphs for those parts of this code that are retained.
        !            19: =============================================================================*/
        !            20: 
        !            21: #ifndef _FPU_CONSTANTS_H_
        !            22: #define _FPU_CONSTANTS_H_
        !            23: 
        !            24: // Pentium CPU uses only 68-bit precision M_PI approximation
        !            25: #define BETTER_THAN_PENTIUM
        !            26: 
        !            27: /*============================================================================
        !            28:  * Written for Bochs (x86 achitecture simulator) by
        !            29:  *            Stanislav Shwartsman [sshwarts at sourceforge net]
        !            30:  * ==========================================================================*/
        !            31: 
        !            32: //////////////////////////////
        !            33: // PI, PI/2, PI/4 constants
        !            34: //////////////////////////////
        !            35: 
        !            36: #define FLOATX80_PI_EXP  (0x4000)
        !            37: 
        !            38: // 128-bit PI fraction
        !            39: #ifdef BETTER_THAN_PENTIUM
        !            40: #define FLOAT_PI_HI (0xc90fdaa22168c234U)
        !            41: #define FLOAT_PI_LO (0xc4c6628b80dc1cd1U)
        !            42: #else
        !            43: #define FLOAT_PI_HI (0xc90fdaa22168c234U)
        !            44: #define FLOAT_PI_LO (0xC000000000000000U)
        !            45: #endif
        !            46: 
        !            47: #define FLOATX80_PI2_EXP  (0x3FFF)
        !            48: #define FLOATX80_PI4_EXP  (0x3FFE)
        !            49: 
        !            50: //////////////////////////////
        !            51: // 3PI/4 constant
        !            52: //////////////////////////////
        !            53: 
        !            54: #define FLOATX80_3PI4_EXP (0x4000)
        !            55: 
        !            56: // 128-bit 3PI/4 fraction
        !            57: #ifdef BETTER_THAN_PENTIUM
        !            58: #define FLOAT_3PI4_HI (0x96cbe3f9990e91a7U)
        !            59: #define FLOAT_3PI4_LO (0x9394c9e8a0a5159cU)
        !            60: #else
        !            61: #define FLOAT_3PI4_HI (0x96cbe3f9990e91a7U)
        !            62: #define FLOAT_3PI4_LO (0x9000000000000000U)
        !            63: #endif
        !            64: 
        !            65: //////////////////////////////
        !            66: // 1/LN2 constant
        !            67: //////////////////////////////
        !            68: 
        !            69: #define FLOAT_LN2INV_EXP  (0x3FFF)
        !            70: 
        !            71: // 128-bit 1/LN2 fraction
        !            72: #ifdef BETTER_THAN_PENTIUM
        !            73: #define FLOAT_LN2INV_HI (0xb8aa3b295c17f0bbU)
        !            74: #define FLOAT_LN2INV_LO (0xbe87fed0691d3e89U)
        !            75: #else
        !            76: #define FLOAT_LN2INV_HI (0xb8aa3b295c17f0bbU)
        !            77: #define FLOAT_LN2INV_LO (0xC000000000000000U)
        !            78: #endif
        !            79: 
        !            80: #endif

unix.superglobalmegacorp.com

This archive runs on limited infrastructure. Preserving old code on modern bandwidth. Automated agents are requested to crawl responsibly.