about summary refs log tree commit diff
path: root/sysdeps/ieee754/dbl-64/mpa2.h
blob: cfe22b883a54ec135d498cf25019c82f7a9a0c53 (plain) (blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94

/*
 * IBM Accurate Mathematical Library
 * Written by International Business Machines Corp.
 * Copyright (C) 2001 Free Software Foundation, Inc.
 *
 * This program is free software; you can redistribute it and/or modify
 * it under the terms of the GNU Lesser General Public License as published by
 * the Free Software Foundation; either version 2.1 of the License, or
 * (at your option) any later version.
 *
 * This program is distributed in the hope that it will be useful,
 * but WITHOUT ANY WARRANTY; without even the implied warranty of
 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
 * GNU Lesser General Public License for more details.
 *
 * You should have received a copy of the GNU Lesser General Public License
 * along with this program; if not, see <http://www.gnu.org/licenses/>.
 */

/**************************************************************************/
/*                                                                        */
/* MODULE_NAME:mpa2.h                                                     */
/*                                                                        */
/*                                                                        */
/*   variables prototype and definition   according to type of processor  */
/*   types definition                                                     */
/**************************************************************************/

#ifndef MPA2_H
#define MPA2_H


#ifdef BIG_ENDI
static const number
/**/ radix          = {{0x41700000, 0x00000000} }, /* 2**24  */
/**/ radixi         = {{0x3e700000, 0x00000000} }, /* 2**-24 */
/**/ cutter         = {{0x44b00000, 0x00000000} }, /* 2**76  */
/**/ zero           = {{0x00000000, 0x00000000} }, /*  0     */
/**/ one            = {{0x3ff00000, 0x00000000} }, /*  1     */
/**/ mone           = {{0xbff00000, 0x00000000} }, /* -1     */
/**/ two            = {{0x40000000, 0x00000000} }, /*  2     */
/**/ two5           = {{0x40400000, 0x00000000} }, /* 2**5   */
/**/ two10          = {{0x40900000, 0x00000000} }, /* 2**10  */
/**/ two18          = {{0x41100000, 0x00000000} }, /* 2**18  */
/**/ two19          = {{0x41200000, 0x00000000} }, /* 2**19  */
/**/ two23          = {{0x41600000, 0x00000000} }, /* 2**23  */
/**/ two52          = {{0x43300000, 0x00000000} }, /* 2**52  */
/**/ two57          = {{0x43800000, 0x00000000} }, /* 2**57  */
/**/ two71          = {{0x44600000, 0x00000000} }, /* 2**71  */
/**/ twom1032       = {{0x00000400, 0x00000000} }; /* 2**-1032 */

#else
#ifdef LITTLE_ENDI
static const number
/**/ radix          = {{0x00000000, 0x41700000} }, /* 2**24  */
/**/ radixi         = {{0x00000000, 0x3e700000} }, /* 2**-24 */
/**/ cutter         = {{0x00000000, 0x44b00000} }, /* 2**76  */
/**/ zero           = {{0x00000000, 0x00000000} }, /*  0     */
/**/ one            = {{0x00000000, 0x3ff00000} }, /*  1     */
/**/ mone           = {{0x00000000, 0xbff00000} }, /* -1     */
/**/ two            = {{0x00000000, 0x40000000} }, /*  2     */
/**/ two5           = {{0x00000000, 0x40400000} }, /* 2**5   */
/**/ two10          = {{0x00000000, 0x40900000} }, /* 2**10  */
/**/ two18          = {{0x00000000, 0x41100000} }, /* 2**18  */
/**/ two19          = {{0x00000000, 0x41200000} }, /* 2**19  */
/**/ two23          = {{0x00000000, 0x41600000} }, /* 2**23  */
/**/ two52          = {{0x00000000, 0x43300000} }, /* 2**52  */
/**/ two57          = {{0x00000000, 0x43800000} }, /* 2**57  */
/**/ two71          = {{0x00000000, 0x44600000} }, /* 2**71  */
/**/ twom1032       = {{0x00000000, 0x00000400} }; /* 2**-1032 */

#endif
#endif

#define  RADIX     radix.d
#define  RADIXI    radixi.d
#define  CUTTER    cutter.d
#define  ZERO      zero.d
#define  ONE       one.d
#define  MONE      mone.d
#define  TWO       two.d
#define  TWO5      two5.d
#define  TWO10     two10.d
#define  TWO18     two18.d
#define  TWO19     two19.d
#define  TWO23     two23.d
#define  TWO52     two52.d
#define  TWO57     two57.d
#define  TWO71     two71.d
#define  TWOM1032  twom1032.d


#endif