os/kernelhwsrv/kerneltest/e32test/math/t_vals.h
author sl
Tue, 10 Jun 2014 14:32:02 +0200
changeset 1 260cb5ec6c19
permissions -rw-r--r--
Update contrib.
     1 // Copyright (c) 1997-2009 Nokia Corporation and/or its subsidiary(-ies).
     2 // All rights reserved.
     3 // This component and the accompanying materials are made available
     4 // under the terms of the License "Eclipse Public License v1.0"
     5 // which accompanies this distribution, and is available
     6 // at the URL "http://www.eclipse.org/legal/epl-v10.html".
     7 //
     8 // Initial Contributors:
     9 // Nokia Corporation - initial contribution.
    10 //
    11 // Contributors:
    12 //
    13 // Description:
    14 // e32test\math\t_vals.h
    15 // 
    16 //
    17 
    18 #include <e32std.h>
    19 
    20 class TInt32x
    21 	{
    22 public:
    23 	TInt32x(TInt32 aInt) {iInt=aInt;}
    24 public:
    25 	TInt32 iInt;
    26 	};
    27 
    28 #if defined  (__DOUBLE_WORDS_SWAPPED__)
    29 #define TINT64(a,b) MAKE_TINT64(b,a)
    30 #else	// for WINS and X86 (little-endian doubles) 
    31 #define TINT64(a,b) MAKE_TINT64(a,b)
    32 #endif
    33 
    34 const TInt64 minTReal32in64 = TINT64(0x38100000,0x0);
    35 const TInt64 maxTReal32in64 = TINT64(0x47efffff,0xe0000000);
    36 const TInt64 sqrtMaxTReal64 = TINT64(0x5fefffff,0xffd9c605);
    37 const TInt64 sqrtMinTReal64 = TINT64(0x20000000,0x0);
    38 const TInt64 negZeroTReal64 = TINT64(0x80000000,0x0);
    39 const TInt64 posInfTReal64 = TINT64(0x7ff00000,0x0);
    40 const TInt64 negInfTReal64 = TINT64(0xfff00000,0x0);
    41 const TInt64 NaNTReal64 = TINT64(0x7fffffff,0xffffffff);
    42 const TInt64 K1EMinus322 = TINT64(0x00000000, 0x00000014);
    43 const TInt64 K1EMinus313 = TINT64(0x00000004, 0xB6695433);
    44 const TInt64 K5EMinus324 = TINT64(0x00000000, 0x00000001);
    45 const TInt64 K4EMinus320 = TINT64(0x00000000, 0x00001FA0);
    46 const TInt64 K1EMinus310 = TINT64(0x00001268, 0x8B70E62B);
    47 const TInt64 K1EMinus323 = TINT64(0x00000000, 0x00000002);
    48 const TInt64 K1Point2EMinus320 = TINT64(0x00000000, 0x0000097D);
    49 const TInt64 K5EMinus321 = TINT64(0x00000000, 0x000003F4);
    50 const TInt64 K2EMinus321 = TINT64(0x00000000, 0x00000195);
    51 const TInt64 K1Point234EMinus316 = TINT64(0x000000000, 0x017D1C36);
    52 const TInt64 K1EMinus324 = TINT64(0x000000000, 0x00000000);
    53 
    54 const TInt32x sqrtMaxTReal32 = TInt32x(0x5f7ffffd);
    55 const TInt32x sqrtMinTReal32 = TInt32x(0x20000000);
    56 const TInt32x negZeroTReal32 = TInt32x(0x80000000);
    57 const TReal64 KMinTReal32in64 = *(TReal64*)&minTReal32in64;
    58 const TReal64 KMaxTReal32in64 = *(TReal64*)&maxTReal32in64;
    59 const TReal64 KSqrtMaxTReal64 = *(TReal64*)&sqrtMaxTReal64;
    60 const TReal64 KSqrtMinTReal64 = *(TReal64*)&sqrtMinTReal64;
    61 const TReal64 KNegZeroTReal64 = *(TReal64*)&negZeroTReal64;
    62 const TReal64 KPosInfTReal64 = *(TReal64*)&posInfTReal64;
    63 const TReal64 KNegInfTReal64 = *(TReal64*)&negInfTReal64;
    64 const TReal64 KNaNTReal64 = *(TReal64*)&NaNTReal64;
    65 const TReal32 KSqrtMaxTReal32 = *(TReal32*)&sqrtMaxTReal32;
    66 const TReal32 KSqrtMinTReal32 = *(TReal32*)&sqrtMinTReal32;
    67 const TReal32 KNegZeroTReal32 = *(TReal32*)&negZeroTReal32;
    68 const TReal KMinTReal32inTReal = TReal(KMinTReal32in64);
    69 const TReal KMaxTReal32inTReal = TReal(KMaxTReal32in64);
    70 const TReal KNegZeroTReal = TReal(KNegZeroTReal64);
    71 const TReal64 K1EMinus322Real64 = *(TReal64*)&K1EMinus322;
    72 const TReal64 K1EMinus313Real64 = *(TReal64*)&K1EMinus313;
    73 const TReal64 K5EMinus324Real64 = *(TReal64*)&K5EMinus324;
    74 const TReal64 K4EMinus320Real64 = *(TReal64*)&K4EMinus320;
    75 const TReal64 K1EMinus310Real64 = *(TReal64*)&K1EMinus310;
    76 const TReal64 K1EMinus323Real64 = *(TReal64*)&K1EMinus323;
    77 const TReal64 K1Point2EMinus320Real64 = *(TReal64*)&K1Point2EMinus320;
    78 const TReal64 K5EMinus321Real64 = *(TReal64*)&K5EMinus321;
    79 const TReal64 K2EMinus321Real64 = *(TReal64*)&K2EMinus321;
    80 const TReal64 K1Point234EMinus316Real64 = *(TReal64*)&K1Point234EMinus316;
    81 const TReal64 K1EMinus324Real64 = *(TReal64*)&K1EMinus324;
    82 
    83