]> git.ipfire.org Git - thirdparty/glibc.git/blame - sysdeps/ieee754/dbl-64/branred.h
Prefer https to http for gnu.org and fsf.org URLs
[thirdparty/glibc.git] / sysdeps / ieee754 / dbl-64 / branred.h
CommitLineData
e4d82761
UD
1/*
2 * IBM Accurate Mathematical Library
c6c6dd48 3 * Written by International Business Machines Corp.
04277e02 4 * Copyright (C) 2001-2019 Free Software Foundation, Inc.
e4d82761
UD
5 *
6 * This program is free software; you can redistribute it and/or modify
7 * it under the terms of the GNU Lesser General Public License as published by
cc7375ce 8 * the Free Software Foundation; either version 2.1 of the License, or
e4d82761 9 * (at your option) any later version.
50944bca 10 *
e4d82761
UD
11 * This program is distributed in the hope that it will be useful,
12 * but WITHOUT ANY WARRANTY; without even the implied warranty of
13 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
c6c6dd48 14 * GNU Lesser General Public License for more details.
e4d82761
UD
15 *
16 * You should have received a copy of the GNU Lesser General Public License
5a82c748 17 * along with this program; if not, see <https://www.gnu.org/licenses/>.
e4d82761
UD
18 */
19/************************************************************************/
20/* MODULE_NAME: branred.h */
21/* */
22/* */
23/* common data and variables definition for BIG or LITTLE ENDIAN */
24/************************************************************************/
25
26#ifndef BRANRED_H
27#define BRANRED_H
28
085ec079 29#include <dla.h>
e4d82761
UD
30
31#ifdef BIG_ENDI
32static const mynumber
33
50944bca
UD
34/**/ t576 = {{0x63f00000, 0x00000000}}, /* 2 ^ 576 */
35/**/ tm600 = {{0x1a700000, 0x00000000}}, /* 2 ^- 600 */
36/**/ tm24 = {{0x3e700000, 0x00000000}}, /* 2 ^- 24 */
37/**/ big = {{0x43380000, 0x00000000}}, /* 6755399441055744 */
38/**/ big1 = {{0x43580000, 0x00000000}}, /* 27021597764222976 */
39/**/ hp0 = {{0x3FF921FB, 0x54442D18}} ,/* 1.5707963267948966 */
40/**/ hp1 = {{0x3C91A626, 0x33145C07}} ,/* 6.123233995736766e-17 */
41/**/ mp1 = {{0x3FF921FB, 0x58000000}}, /* 1.5707963407039642 */
42/**/ mp2 = {{0xBE4DDE97, 0x40000000}}; /*-1.3909067675399456e-08 */
e4d82761
UD
43
44#else
45#ifdef LITTLE_ENDI
46static const mynumber
47
50944bca
UD
48/**/ t576 = {{0x00000000, 0x63f00000}}, /* 2 ^ 576 */
49/**/ tm600 = {{0x00000000, 0x1a700000}}, /* 2 ^- 600 */
50/**/ tm24 = {{0x00000000, 0x3e700000}}, /* 2 ^- 24 */
51/**/ big = {{0x00000000, 0x43380000}}, /* 6755399441055744 */
52/**/ big1 = {{0x00000000, 0x43580000}}, /* 27021597764222976 */
53/**/ hp0 = {{0x54442D18, 0x3FF921FB}}, /* 1.5707963267948966 */
54/**/ hp1 = {{0x33145C07, 0x3C91A626}}, /* 6.123233995736766e-17 */
55/**/ mp1 = {{0x58000000, 0x3FF921FB}}, /* 1.5707963407039642 */
56/**/ mp2 = {{0x40000000, 0xBE4DDE97}}; /*-1.3909067675399456e-08 */
e4d82761
UD
57
58#endif
59#endif
60
61static const double toverp[75] = { /* 2/ PI base 24*/
50944bca
UD
62 10680707.0, 7228996.0, 1387004.0, 2578385.0, 16069853.0,
63 12639074.0, 9804092.0, 4427841.0, 16666979.0, 11263675.0,
64 12935607.0, 2387514.0, 4345298.0, 14681673.0, 3074569.0,
65 13734428.0, 16653803.0, 1880361.0, 10960616.0, 8533493.0,
66 3062596.0, 8710556.0, 7349940.0, 6258241.0, 3772886.0,
67 3769171.0, 3798172.0, 8675211.0, 12450088.0, 3874808.0,
68 9961438.0, 366607.0, 15675153.0, 9132554.0, 7151469.0,
69 3571407.0, 2607881.0, 12013382.0, 4155038.0, 6285869.0,
70 7677882.0, 13102053.0, 15825725.0, 473591.0, 9065106.0,
71 15363067.0, 6271263.0, 9264392.0, 5636912.0, 4652155.0,
72 7056368.0, 13614112.0, 10155062.0, 1944035.0, 9527646.0,
73 15080200.0, 6658437.0, 6231200.0, 6832269.0, 16767104.0,
74 5075751.0, 3212806.0, 1398474.0, 7579849.0, 6349435.0,
75 12618859.0, 4703257.0, 12806093.0, 14477321.0, 2786137.0,
76 12875403.0, 9837734.0, 14528324.0, 13719321.0, 343717.0 };
e4d82761 77
085ec079 78static const double split = CN; /* 2^27 + 1 */
e4d82761
UD
79
80#endif