/* 
 * Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions.
 * See https://llvm.org/LICENSE.txt for license information.
 * SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception
 *
 */


#define INF_D                     0x7FF0000000000000
#define ZERO_D                    0.0e+0
/* #define HI_ABS_MASK_D             0x7FFFFFFF00000000 */
#define HI_ABS_MASK_D             0x7FFFFFFFFFFFFFFF
#define UPPERBOUND_1_D            0x4086232b00000000
#define UPPERBOUND_2_D            0x4087480000000000
#define MULT_CONST_D              0x3FF0000000000000

#define SCALE_D                   52

#define L2E_D                     1.4426950408889634e+0
#define NEG_LN2_HI_D              -6.9314718055994529e-1
#define NEG_LN2_LO_D              -2.3190468138462996e-17

#define EXP_POLY_11_D             2.5022322536502990E-008
#define EXP_POLY_10_D             2.7630903488173108E-007
#define EXP_POLY_9_D              2.7557514545882439E-006
#define EXP_POLY_8_D              2.4801491039099165E-005
#define EXP_POLY_7_D              1.9841269589115497E-004
#define EXP_POLY_6_D              1.3888888945916380E-003
#define EXP_POLY_5_D              8.3333333334550432E-003
#define EXP_POLY_4_D              4.1666666666519754E-002
#define EXP_POLY_3_D              1.6666666666666477E-001
#define EXP_POLY_2_D              5.0000000000000122E-001
#define EXP_POLY_1_D              1.0000000000000000E+000
#define EXP_POLY_0_D              1.0000000000000000E+000

#define DBL2INT_CVT_D             6755399441055744.0

