merge from gcc
[deliverable/binutils-gdb.git] / libdecnumber / decQuad.c
... / ...
CommitLineData
1/* decQuad module for the decNumber C Library.
2 Copyright (C) 2007-2013 Free Software Foundation, Inc.
3 Contributed by IBM Corporation. Author Mike Cowlishaw.
4
5 This file is part of GCC.
6
7 GCC is free software; you can redistribute it and/or modify it under
8 the terms of the GNU General Public License as published by the Free
9 Software Foundation; either version 3, or (at your option) any later
10 version.
11
12 GCC is distributed in the hope that it will be useful, but WITHOUT ANY
13 WARRANTY; without even the implied warranty of MERCHANTABILITY or
14 FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License
15 for more details.
16
17Under Section 7 of GPL version 3, you are granted additional
18permissions described in the GCC Runtime Library Exception, version
193.1, as published by the Free Software Foundation.
20
21You should have received a copy of the GNU General Public License and
22a copy of the GCC Runtime Library Exception along with this program;
23see the files COPYING3 and COPYING.RUNTIME respectively. If not, see
24<http://www.gnu.org/licenses/>. */
25
26/* ------------------------------------------------------------------ */
27/* decQuad.c -- decQuad operations module */
28/* ------------------------------------------------------------------ */
29/* This module comprises decQuad operations (including conversions) */
30/* ------------------------------------------------------------------ */
31
32#include "decContext.h" /* public includes */
33#include "decQuad.h" /* .. */
34
35/* Constant mappings for shared code */
36#define DECPMAX DECQUAD_Pmax
37#define DECEMIN DECQUAD_Emin
38#define DECEMAX DECQUAD_Emax
39#define DECEMAXD DECQUAD_EmaxD
40#define DECBYTES DECQUAD_Bytes
41#define DECSTRING DECQUAD_String
42#define DECECONL DECQUAD_EconL
43#define DECBIAS DECQUAD_Bias
44#define DECLETS DECQUAD_Declets
45#define DECQTINY (-DECQUAD_Bias)
46
47/* Type and function mappings for shared code */
48#define decFloat decQuad /* Type name */
49
50/* Utilities and conversions (binary results, extractors, etc.) */
51#define decFloatFromBCD decQuadFromBCD
52#define decFloatFromInt32 decQuadFromInt32
53#define decFloatFromPacked decQuadFromPacked
54#define decFloatFromPackedChecked decQuadFromPackedChecked
55#define decFloatFromString decQuadFromString
56#define decFloatFromUInt32 decQuadFromUInt32
57#define decFloatFromWider decQuadFromWider
58#define decFloatGetCoefficient decQuadGetCoefficient
59#define decFloatGetExponent decQuadGetExponent
60#define decFloatSetCoefficient decQuadSetCoefficient
61#define decFloatSetExponent decQuadSetExponent
62#define decFloatShow decQuadShow
63#define decFloatToBCD decQuadToBCD
64#define decFloatToEngString decQuadToEngString
65#define decFloatToInt32 decQuadToInt32
66#define decFloatToInt32Exact decQuadToInt32Exact
67#define decFloatToPacked decQuadToPacked
68#define decFloatToString decQuadToString
69#define decFloatToUInt32 decQuadToUInt32
70#define decFloatToUInt32Exact decQuadToUInt32Exact
71#define decFloatToWider decQuadToWider
72#define decFloatZero decQuadZero
73
74/* Computational (result is a decFloat) */
75#define decFloatAbs decQuadAbs
76#define decFloatAdd decQuadAdd
77#define decFloatAnd decQuadAnd
78#define decFloatDivide decQuadDivide
79#define decFloatDivideInteger decQuadDivideInteger
80#define decFloatFMA decQuadFMA
81#define decFloatInvert decQuadInvert
82#define decFloatLogB decQuadLogB
83#define decFloatMax decQuadMax
84#define decFloatMaxMag decQuadMaxMag
85#define decFloatMin decQuadMin
86#define decFloatMinMag decQuadMinMag
87#define decFloatMinus decQuadMinus
88#define decFloatMultiply decQuadMultiply
89#define decFloatNextMinus decQuadNextMinus
90#define decFloatNextPlus decQuadNextPlus
91#define decFloatNextToward decQuadNextToward
92#define decFloatOr decQuadOr
93#define decFloatPlus decQuadPlus
94#define decFloatQuantize decQuadQuantize
95#define decFloatReduce decQuadReduce
96#define decFloatRemainder decQuadRemainder
97#define decFloatRemainderNear decQuadRemainderNear
98#define decFloatRotate decQuadRotate
99#define decFloatScaleB decQuadScaleB
100#define decFloatShift decQuadShift
101#define decFloatSubtract decQuadSubtract
102#define decFloatToIntegralValue decQuadToIntegralValue
103#define decFloatToIntegralExact decQuadToIntegralExact
104#define decFloatXor decQuadXor
105
106/* Comparisons */
107#define decFloatCompare decQuadCompare
108#define decFloatCompareSignal decQuadCompareSignal
109#define decFloatCompareTotal decQuadCompareTotal
110#define decFloatCompareTotalMag decQuadCompareTotalMag
111
112/* Copies */
113#define decFloatCanonical decQuadCanonical
114#define decFloatCopy decQuadCopy
115#define decFloatCopyAbs decQuadCopyAbs
116#define decFloatCopyNegate decQuadCopyNegate
117#define decFloatCopySign decQuadCopySign
118
119/* Non-computational */
120#define decFloatClass decQuadClass
121#define decFloatClassString decQuadClassString
122#define decFloatDigits decQuadDigits
123#define decFloatIsCanonical decQuadIsCanonical
124#define decFloatIsFinite decQuadIsFinite
125#define decFloatIsInfinite decQuadIsInfinite
126#define decFloatIsInteger decQuadIsInteger
127#define decFloatIsNaN decQuadIsNaN
128#define decFloatIsNormal decQuadIsNormal
129#define decFloatIsSignaling decQuadIsSignaling
130#define decFloatIsSignalling decQuadIsSignalling
131#define decFloatIsSigned decQuadIsSigned
132#define decFloatIsSubnormal decQuadIsSubnormal
133#define decFloatIsZero decQuadIsZero
134#define decFloatRadix decQuadRadix
135#define decFloatSameQuantum decQuadSameQuantum
136#define decFloatVersion decQuadVersion
137
138#include "decNumberLocal.h" /* local includes (need DECPMAX) */
139#include "decCommon.c" /* non-arithmetic decFloat routines */
140#include "decBasic.c" /* basic formats routines */
141
This page took 0.023415 seconds and 4 git commands to generate.