]> git.ipfire.org Git - thirdparty/gcc.git/blame - libgcc/config/libbid/bid_functions.h
Licensing changes to GPLv3 resp. GPLv3 with GCC Runtime Exception.
[thirdparty/gcc.git] / libgcc / config / libbid / bid_functions.h
CommitLineData
748086b7 1/* Copyright (C) 2007, 2009 Free Software Foundation, Inc.
200359e8
L
2
3This file is part of GCC.
4
5GCC is free software; you can redistribute it and/or modify it under
6the terms of the GNU General Public License as published by the Free
748086b7 7Software Foundation; either version 3, or (at your option) any later
200359e8
L
8version.
9
200359e8
L
10GCC is distributed in the hope that it will be useful, but WITHOUT ANY
11WARRANTY; without even the implied warranty of MERCHANTABILITY or
12FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License
13for more details.
14
748086b7
JJ
15Under Section 7 of GPL version 3, you are granted additional
16permissions described in the GCC Runtime Library Exception, version
173.1, as published by the Free Software Foundation.
18
19You should have received a copy of the GNU General Public License and
20a copy of the GCC Runtime Library Exception along with this program;
21see the files COPYING3 and COPYING.RUNTIME respectively. If not, see
22<http://www.gnu.org/licenses/>. */
200359e8
L
23
24#ifndef _BID_FUNCTIONS_H
25#define _BID_FUNCTIONS_H
26
b2a00c89
L
27#ifdef IN_LIBGCC2
28// When we are built as the part of the gcc runtime library, libgcc,
29// we will use gcc types defined in bid_gcc_intrinsics.h.
30#include "bid_gcc_intrinsics.h"
31
32#define ALIGN(n) __attribute__ ((aligned(n)))
33#else
34typedef char SINT8;
35typedef unsigned char UINT8;
36typedef unsigned UINT32;
37typedef signed SINT32;
38
39#ifdef __GNUC__
40#define __int64 long long
41#endif
42
43#if __GNUC__ || defined LINUX || defined SUNOS
44typedef unsigned long long UINT64;
45typedef signed long long SINT64;
46#else
47typedef unsigned __int64 UINT64;
48typedef signed __int64 SINT64;
49#endif
50
200359e8 51#if defined _MSC_VER
b2a00c89 52#if defined _M_IX86 && !defined __INTEL_COMPILER // Win IA-32, MS compiler
200359e8
L
53#define ALIGN(n)
54#else
55#define ALIGN(n) __declspec(align(n))
56#endif
57#else
58#define ALIGN(n) __attribute__ ((aligned(n)))
59#endif
60
b2a00c89
L
61// bid_gcc_intrinsics.h will also define this.
62typedef
63ALIGN (16)
64 struct {
65 UINT64 w[2];
66 } UINT128;
67#endif
68
200359e8
L
69
70#if !defined _MSC_VER || defined __INTEL_COMPILER
71#define __ENABLE_BINARY80__ 1
72#endif
73
b2a00c89
L
74#ifndef HPUX_OS
75#define BINARY80 long double
76#define BINARY128 UINT128
77#define SQRT80 sqrtl
78#else
79#define BINARY80 __float80
80#define BINARY128 __float128
81#define SQRT80 sqrtw
82#endif
83
84 typedef ALIGN (16)
85 struct {
86 UINT64 w[3];
87 } UINT192;
88 typedef ALIGN (16)
89 struct {
90 UINT64 w[4];
91 } UINT256;
92 typedef unsigned int FPSC; // floating-point status and control
200359e8
L
93
94// TYPE parameters
95#define BID128_MAXDIGITS 34
96#define BID64_MAXDIGITS 16
97#define BID32_MAXDIGITS 7
98
99// rounding modes
100#define ROUNDING_TO_NEAREST 0x00000
101#define ROUNDING_DOWN 0x00001
102#define ROUNDING_UP 0x00002
103#define ROUNDING_TO_ZERO 0x00003
104#define ROUNDING_TIES_AWAY 0x00004
105
b2a00c89
L
106#define RMODE_MASK (ROUNDING_TO_NEAREST | ROUNDING_DOWN | ROUNDING_UP | ROUNDING_TO_ZERO | ROUNDING_TIES_AWAY)
107
200359e8
L
108// status
109#define FLAG_MASK 0x0000003f
b2a00c89 110#define BID_IEEE_FLAGS 0x0000003d
200359e8
L
111#define EXACT_STATUS 0x00000000
112#define INEXACT_EXCEPTION 0x00000020
113#define UNDERFLOW_EXCEPTION 0x00000010
114#define OVERFLOW_EXCEPTION 0x00000008
115#define ZERO_DIVIDE_EXCEPTION 0x00000004
116#define DENORMAL_EXCEPTION 0x00000002
117#define INVALID_EXCEPTION 0x00000001
118
119#define MODE_MASK 0x00001f80
120#define INEXACT_MODE 0x00001000
121#define UNDERFLOW_MODE 0x00000800
122#define OVERFLOW_MODE 0x00000400
123#define ZERO_DIVIDE_MODE 0x00000200
124#define DENORMAL_MODE 0x00000100
125#define INVALID_MODE 0x00000080
126
b2a00c89 127#if defined LINUX || defined SUNOS
200359e8
L
128#define LX16 "%016llx"
129#define LX "%llx"
130#define LD4 "%4llu"
131#define LD16 "%016lld"
132#define LD "%lld"
133#define LUD "%llu"
134#define LUD16 "%016llu"
135#define X8 "%08x"
136#define X4 "%04x"
137
138#define FMT_LLX16 "%016llx"
139#define FMT_LLX "%llx"
140#define FMT_LLU4 "%4llu"
141#define FMT_LLD16 "%016lld"
142#define FMT_LLD "%lld"
143#define FMT_LLU "%llu"
144#define FMT_LLU16 "%016llu"
145#define FMT_X8 "%08x"
146#define FMT_X4 "%04x"
147#else
148#define LX16 "%016I64x"
149#define LX "%I64x"
150#define LD16 "%016I64d"
151#define LD4 "%4I64u"
152#define LD "%I64d"
153#define LUD "%I64u"
154#define LUD16 "%016I64u"
155#define X8 "%08x"
156#define X4 "%04x"
157
158#define FMT_LLX16 "%016I64x"
159#define FMT_LLX "%I64x"
160#define FMT_LLD16 "%016I64d"
161#define FMT_LLU4 "%4I64u"
162#define FMT_LLD "%I64d"
163#define FMT_LLU "%I64u"
164#define FMT_LLU16 "%016I64u"
165#define FMT_X8 "%08x"
166#define FMT_X4 "%04x"
167#endif
168
169#define decNumberIsSNaN(dn) (((dn)->bits&(DECSNAN))!=0)
170 int __signbitf (float);
171 int __signbit (double);
172
173#define __IMFC99MACRO_( __x__, __func__ ) \
174 (( sizeof( __x__ ) > sizeof( float )) \
175 ? __func__( (double)(__x__) ) \
176 : __func__##f( (float)(__x__) ))
177
178#define signbit( __x__ ) __IMFC99MACRO_( __x__, __signbit )
179
180#if !defined(__INTEL_COMPILER)
181
182#define __fence
183
184#define isinf( __x__ ) __IMFC99MACRO_( __x__, __isinf )
185#define isnan( __x__ ) __IMFC99MACRO_( __x__, __isnan )
186
187 int __isnanf (float);
188 int __isnan (double);
189
190 int __isinff (float);
191 int __isinf (double);
192
193#endif
194
200359e8
L
195/* rounding modes */
196// typedef unsigned int _IDEC_round;
197 extern _IDEC_round _IDEC_gblround; // initialized to ROUNDING_TO_NEAREST
198
199/* exception flags */
200// typedef unsigned int _IDEC_flags; // could be a struct with diagnostic info
201 extern _IDEC_flags _IDEC_gblflags; // initialized to EXACT_STATUS
202
203/* exception masks */
204 typedef unsigned int _IDEC_exceptionmasks;
205 extern _IDEC_exceptionmasks _IDEC_gblexceptionmasks; // initialized to MODE_MASK
206
207#if DECIMAL_ALTERNATE_EXCEPTION_HANDLING
208
209/* exception information */
210
211 typedef struct {
212 unsigned int inexact_result:1;
213 unsigned int underflow:1;
214 unsigned int overflow:1;
215 unsigned int zero_divide:1;
216 unsigned int invalid_operation:1;
217 } fpieee_exception_flags_t;
218
219 typedef enum {
220 _fp_round_nearest,
221 _fp_round_minus_infinity,
222 _fp_round_plus_infinity,
223 _fp_round_chopped,
224 _fp_round_away
225 } fpieee_rounding_mode_t;
226
227 typedef enum {
228 _fp_precision24,
229 _fp_precision63,
230 _fp_precision64,
231 _fp_precision7,
232 _fp_precision16,
233 _fp_precision34
234 } _fpieee_precision_t;
235
236 typedef enum {
237 _fp_code_unspecified,
238 _fp_code_add,
239 _fp_code_subtract,
240 _fp_code_multiply,
241 _fp_code_divide,
242 _fp_code_square_root,
243 _fp_code_compare,
244 _fp_code_convert,
245 _fp_code_convert_to_integer_neareven,
246 _fp_code_convert_to_integer_down,
247 _fp_code_convert_to_integer_up,
248 _fp_code_convert_to_integer_truncate,
249 _fp_code_convert_to_integer_nearaway,
250 _fp_code_fma,
251 _fp_code_fmin,
252 _fp_code_fmax,
253 _fp_code_famin,
254 _fp_code_famax,
255 _fp_code_round_to_integral,
256 _fp_code_minnum,
257 _fp_code_maxnum,
258 _fp_code_minnummag,
259 _fp_code_maxnummag,
260 _fp_code_quantize,
261 _fp_code_logb,
262 _fp_code_scaleb,
263 _fp_code_remainder,
264 _fp_code_nextup,
265 _fp_code_nextdown,
266 _fp_code_nextafter,
267 } fp_operation_code_t;
268
269 typedef enum {
270 _fp_compare_equal,
271 _fp_compare_greater,
272 _fp_compare_less,
273 _fp_compare_unordered
274 } fpieee_compare_result_t;
275
276 typedef enum {
277 _fp_format_fp32,
278 _fp_format_fp64,
279 _fp_format_fp80,
280 _fp_format_fp128,
281 _fp_format_dec_fp32,
282 _fp_format_dec_fp64,
283 _fp_format_dec_fp128,
284 _fp_format_i8, /* 8-bit integer */
285 _fp_format_i16, /* 16-bit integer */
286 _fp_format_i32, /* 32-bit integer */
287 _fp_format_i64, /* 64-bit integer */
288 _fp_format_u8, /* 8-bit unsigned integer */
289 _fp_format_u16, /* 16-bit unsigned integer */
290 _fp_format_u32, /* 32-bit unsigned integer */
291 _fp_format_u64, /* 64-bit unsigned integer */
292 _fp_format_compare, /* compare value format */
293 _fp_format_decimal_char, /* decimal character */
294 _fp_format_string /* string */
295 } fpieee_format_t;
296
297 typedef struct {
298 unsigned short W[5];
299 } _float80_t;
300
301 typedef struct {
302 unsigned int W[4];
303 } _float128_t;
304
305 typedef struct {
306 union {
307 float fp32_value;
308 double fp64_value;
309 _float80_t fp80_value;
310 _float128_t fp128_value;
311 UINT32 decfp32_value;
312 UINT64 decfp64_value;
313 UINT128 decfp128_value;
314 char i8_value;
315 short i16_value;
316 int i32_value;
317 SINT64 i64_value;
318 unsigned char u8_value;
319 unsigned short u16_value;
320 unsigned int u32_value;
321 unsigned long u64_value;
322 fpieee_compare_result_t compare_value;
323 unsigned char s[256];
324 } value;
325 unsigned int operand_valid:1;
326 fpieee_format_t format:5;
327 } fpieee_value_t;
328
329 typedef struct {
330 unsigned int rounding_mode:3;
331 unsigned int precision:3;
332 unsigned int operation:26;
333 fpieee_exception_flags_t cause;
334 fpieee_exception_flags_t enable;
335 fpieee_exception_flags_t status;
336 fpieee_value_t operand1;
337 fpieee_value_t operand2;
338 fpieee_value_t operand3;
339 fpieee_value_t result;
340 } _IDEC_excepthandling;
341 extern _IDEC_excepthandling _IDEC_glbexcepthandling;
342
343#endif
344
345#if DECIMAL_CALL_BY_REFERENCE
346
b2a00c89
L
347 extern void bid_to_dpd32 (UINT32 * pres, UINT32 * px);
348 extern void bid_to_dpd64 (UINT64 * pres, UINT64 * px);
349 extern void bid_to_dpd128 (UINT128 * pres, UINT128 * px);
350 extern void dpd_to_bid32 (UINT32 * pres, UINT32 * px);
351 extern void dpd_to_bid64 (UINT64 * pres, UINT64 * px);
352 extern void dpd_to_bid128 (UINT128 * pres, UINT128 * px);
353
354 extern void bid128dd_add (UINT128 * pres, UINT64 * px,
355 UINT64 * py
356 _RND_MODE_PARAM _EXC_FLAGS_PARAM
357 _EXC_MASKS_PARAM _EXC_INFO_PARAM);
358 extern void bid128dq_add (UINT128 * pres, UINT64 * px,
359 UINT128 * py
360 _RND_MODE_PARAM _EXC_FLAGS_PARAM
361 _EXC_MASKS_PARAM _EXC_INFO_PARAM);
362 extern void bid128qd_add (UINT128 * pres, UINT128 * px,
363 UINT64 * py
364 _RND_MODE_PARAM _EXC_FLAGS_PARAM
365 _EXC_MASKS_PARAM _EXC_INFO_PARAM);
366 extern void bid128_add (UINT128 * pres, UINT128 * px,
200359e8
L
367 UINT128 *
368 py _RND_MODE_PARAM _EXC_FLAGS_PARAM
369 _EXC_MASKS_PARAM _EXC_INFO_PARAM);
b2a00c89
L
370 extern void bid128dd_sub (UINT128 * pres, UINT64 * px,
371 UINT64 * py
372 _RND_MODE_PARAM _EXC_FLAGS_PARAM
373 _EXC_MASKS_PARAM _EXC_INFO_PARAM);
374 extern void bid128dq_sub (UINT128 * pres, UINT64 * px,
375 UINT128 * py
376 _RND_MODE_PARAM _EXC_FLAGS_PARAM
377 _EXC_MASKS_PARAM _EXC_INFO_PARAM);
378 extern void bid128qd_sub (UINT128 * pres, UINT128 * px,
379 UINT64 * py
380 _RND_MODE_PARAM _EXC_FLAGS_PARAM
381 _EXC_MASKS_PARAM _EXC_INFO_PARAM);
382 extern void bid128_sub (UINT128 * pres, UINT128 * px,
200359e8
L
383 UINT128 *
384 py _RND_MODE_PARAM _EXC_FLAGS_PARAM
385 _EXC_MASKS_PARAM _EXC_INFO_PARAM);
b2a00c89
L
386 extern void bid128dd_mul (UINT128 * pres, UINT64 * px,
387 UINT64 * py
388 _RND_MODE_PARAM _EXC_FLAGS_PARAM
389 _EXC_MASKS_PARAM _EXC_INFO_PARAM);
390 extern void bid128dq_mul (UINT128 * pres, UINT64 * px,
391 UINT128 * py
392 _RND_MODE_PARAM _EXC_FLAGS_PARAM
393 _EXC_MASKS_PARAM _EXC_INFO_PARAM);
394 extern void bid128qd_mul (UINT128 * pres, UINT128 * px,
395 UINT64 * py
396 _RND_MODE_PARAM _EXC_FLAGS_PARAM
397 _EXC_MASKS_PARAM _EXC_INFO_PARAM);
398 extern void bid128_mul (UINT128 * pres, UINT128 * px,
399 UINT128 * py
400 _RND_MODE_PARAM _EXC_FLAGS_PARAM
200359e8 401 _EXC_MASKS_PARAM _EXC_INFO_PARAM);
b2a00c89 402 extern void bid128_div (UINT128 * pres, UINT128 * px,
200359e8
L
403 UINT128 *
404 py _RND_MODE_PARAM _EXC_FLAGS_PARAM
405 _EXC_MASKS_PARAM _EXC_INFO_PARAM);
b2a00c89
L
406 extern void bid128dd_div (UINT128 * pres, UINT64 * px,
407 UINT64 * py
408 _RND_MODE_PARAM _EXC_FLAGS_PARAM
409 _EXC_MASKS_PARAM _EXC_INFO_PARAM);
410 extern void bid128dq_div (UINT128 * pres, UINT64 * px,
411 UINT128 * py
412 _RND_MODE_PARAM _EXC_FLAGS_PARAM
413 _EXC_MASKS_PARAM _EXC_INFO_PARAM);
414 extern void bid128qd_div (UINT128 * pres, UINT128 * px,
415 UINT64 * py
416 _RND_MODE_PARAM _EXC_FLAGS_PARAM
417 _EXC_MASKS_PARAM _EXC_INFO_PARAM);
418 extern void bid128_fma (UINT128 * pres, UINT128 * px,
419 UINT128 * py, UINT128 * pz
420 _RND_MODE_PARAM _EXC_FLAGS_PARAM
200359e8 421 _EXC_MASKS_PARAM _EXC_INFO_PARAM);
b2a00c89
L
422 extern void bid128ddd_fma (UINT128 * pres, UINT64 * px,
423 UINT64 * py, UINT64 * pz
424 _RND_MODE_PARAM _EXC_FLAGS_PARAM
425 _EXC_MASKS_PARAM _EXC_INFO_PARAM);
426 extern void bid128ddq_fma (UINT128 * pres, UINT64 * px,
427 UINT64 * py, UINT128 * pz
428 _RND_MODE_PARAM _EXC_FLAGS_PARAM
429 _EXC_MASKS_PARAM _EXC_INFO_PARAM);
430 extern void bid128dqd_fma (UINT128 * pres, UINT64 * px,
431 UINT128 * py, UINT64 * pz
432 _RND_MODE_PARAM _EXC_FLAGS_PARAM
433 _EXC_MASKS_PARAM _EXC_INFO_PARAM);
434 extern void bid128dqq_fma (UINT128 * pres, UINT64 * px,
435 UINT128 * py, UINT128 * pz
436 _RND_MODE_PARAM _EXC_FLAGS_PARAM
437 _EXC_MASKS_PARAM _EXC_INFO_PARAM);
438 extern void bid128qdd_fma (UINT128 * pres, UINT128 * px,
439 UINT64 * py, UINT64 * pz
440 _RND_MODE_PARAM _EXC_FLAGS_PARAM
441 _EXC_MASKS_PARAM _EXC_INFO_PARAM);
442 extern void bid128qdq_fma (UINT128 * pres, UINT128 * px,
443 UINT64 * py, UINT128 * pz
444 _RND_MODE_PARAM _EXC_FLAGS_PARAM
445 _EXC_MASKS_PARAM _EXC_INFO_PARAM);
446 extern void bid128qqd_fma (UINT128 * pres, UINT128 * px,
447 UINT128 * py, UINT64 * pz
448 _RND_MODE_PARAM _EXC_FLAGS_PARAM
449 _EXC_MASKS_PARAM _EXC_INFO_PARAM);
450 // Note: bid128qqq_fma is represented by bid128_fma
451 // Note: bid64ddd_fma is represented by bid64_fma
452 extern void bid64ddq_fma (UINT64 * pres, UINT64 * px,
453 UINT64 * py, UINT128 * pz
454 _RND_MODE_PARAM _EXC_FLAGS_PARAM
455 _EXC_MASKS_PARAM _EXC_INFO_PARAM);
456 extern void bid64dqd_fma (UINT64 * pres, UINT64 * px,
457 UINT128 * py, UINT64 * pz
458 _RND_MODE_PARAM _EXC_FLAGS_PARAM
459 _EXC_MASKS_PARAM _EXC_INFO_PARAM);
460 extern void bid64dqq_fma (UINT64 * pres, UINT64 * px,
461 UINT128 * py, UINT128 * pz
462 _RND_MODE_PARAM _EXC_FLAGS_PARAM
463 _EXC_MASKS_PARAM _EXC_INFO_PARAM);
464 extern void bid64qdd_fma (UINT64 * pres, UINT128 * px,
465 UINT64 * py, UINT64 * pz
466 _RND_MODE_PARAM _EXC_FLAGS_PARAM
467 _EXC_MASKS_PARAM _EXC_INFO_PARAM);
468 extern void bid64qdq_fma (UINT64 * pres, UINT128 * px,
469 UINT64 * py, UINT128 * pz
470 _RND_MODE_PARAM _EXC_FLAGS_PARAM
471 _EXC_MASKS_PARAM _EXC_INFO_PARAM);
472 extern void bid64qqd_fma (UINT64 * pres, UINT128 * px,
473 UINT128 * py, UINT64 * pz
474 _RND_MODE_PARAM _EXC_FLAGS_PARAM
475 _EXC_MASKS_PARAM _EXC_INFO_PARAM);
476 extern void bid64qqq_fma (UINT64 * pres, UINT128 * px,
477 UINT128 * py, UINT128 * pz
478 _RND_MODE_PARAM _EXC_FLAGS_PARAM
479 _EXC_MASKS_PARAM _EXC_INFO_PARAM);
480
481 extern void bid128_sqrt (UINT128 * pres,
200359e8
L
482 UINT128 *
483 px _RND_MODE_PARAM _EXC_FLAGS_PARAM
484 _EXC_MASKS_PARAM _EXC_INFO_PARAM);
b2a00c89
L
485 extern void bid128d_sqrt (UINT128 * pres, UINT64 * px
486 _RND_MODE_PARAM _EXC_FLAGS_PARAM
487 _EXC_MASKS_PARAM _EXC_INFO_PARAM);
200359e8 488
b2a00c89 489 extern void bid64_add (UINT64 * pres, UINT64 * px,
200359e8
L
490 UINT64 *
491 py _RND_MODE_PARAM _EXC_FLAGS_PARAM
492 _EXC_MASKS_PARAM _EXC_INFO_PARAM);
b2a00c89
L
493 extern void bid64dq_add (UINT64 * pres, UINT64 * px,
494 UINT128 * py
495 _RND_MODE_PARAM _EXC_FLAGS_PARAM
496 _EXC_MASKS_PARAM _EXC_INFO_PARAM);
497 extern void bid64qd_add (UINT64 * pres, UINT128 * px,
498 UINT64 * py
499 _RND_MODE_PARAM _EXC_FLAGS_PARAM
500 _EXC_MASKS_PARAM _EXC_INFO_PARAM);
501 extern void bid64qq_add (UINT64 * pres, UINT128 * px,
502 UINT128 * py
503 _RND_MODE_PARAM _EXC_FLAGS_PARAM
504 _EXC_MASKS_PARAM _EXC_INFO_PARAM);
505 extern void bid64_sub (UINT64 * pres, UINT64 * px,
200359e8
L
506 UINT64 *
507 py _RND_MODE_PARAM _EXC_FLAGS_PARAM
508 _EXC_MASKS_PARAM _EXC_INFO_PARAM);
b2a00c89
L
509 extern void bid64dq_sub (UINT64 * pres, UINT64 * px,
510 UINT128 * py
511 _RND_MODE_PARAM _EXC_FLAGS_PARAM
512 _EXC_MASKS_PARAM _EXC_INFO_PARAM);
513 extern void bid64qd_sub (UINT64 * pres, UINT128 * px,
514 UINT64 * py
515 _RND_MODE_PARAM _EXC_FLAGS_PARAM
516 _EXC_MASKS_PARAM _EXC_INFO_PARAM);
517 extern void bid64qq_sub (UINT64 * pres, UINT128 * px,
518 UINT128 * py
519 _RND_MODE_PARAM _EXC_FLAGS_PARAM
520 _EXC_MASKS_PARAM _EXC_INFO_PARAM);
521 extern void bid64_mul (UINT64 * pres, UINT64 * px,
522 UINT64 * py
523 _RND_MODE_PARAM _EXC_FLAGS_PARAM
200359e8 524 _EXC_MASKS_PARAM _EXC_INFO_PARAM);
b2a00c89
L
525 extern void bid64dq_mul (UINT64 * pres, UINT64 * px,
526 UINT128 * py
527 _RND_MODE_PARAM _EXC_FLAGS_PARAM
528 _EXC_MASKS_PARAM _EXC_INFO_PARAM);
529 extern void bid64qd_mul (UINT64 * pres, UINT128 * px,
530 UINT64 * py
531 _RND_MODE_PARAM _EXC_FLAGS_PARAM
532 _EXC_MASKS_PARAM _EXC_INFO_PARAM);
533 extern void bid64qq_mul (UINT64 * pres, UINT128 * px,
534 UINT128 * py
535 _RND_MODE_PARAM _EXC_FLAGS_PARAM
536 _EXC_MASKS_PARAM _EXC_INFO_PARAM);
537 extern void bid64_div (UINT64 * pres, UINT64 * px,
200359e8
L
538 UINT64 *
539 py _RND_MODE_PARAM _EXC_FLAGS_PARAM
540 _EXC_MASKS_PARAM _EXC_INFO_PARAM);
b2a00c89
L
541 extern void bid64dq_div (UINT64 * pres, UINT64 * px,
542 UINT128 * py
543 _RND_MODE_PARAM _EXC_FLAGS_PARAM
544 _EXC_MASKS_PARAM _EXC_INFO_PARAM);
545 extern void bid64qd_div (UINT64 * pres, UINT128 * px,
546 UINT64 * py
547 _RND_MODE_PARAM _EXC_FLAGS_PARAM
548 _EXC_MASKS_PARAM _EXC_INFO_PARAM);
549 extern void bid64qq_div (UINT64 * pres, UINT128 * px,
550 UINT128 * py
551 _RND_MODE_PARAM _EXC_FLAGS_PARAM
552 _EXC_MASKS_PARAM _EXC_INFO_PARAM);
553 extern void bid64_fma (UINT64 * pres, UINT64 * px,
200359e8
L
554 UINT64 * py,
555 UINT64 *
556 pz _RND_MODE_PARAM _EXC_FLAGS_PARAM
557 _EXC_MASKS_PARAM _EXC_INFO_PARAM);
b2a00c89 558 extern void bid64_sqrt (UINT64 * pres,
200359e8
L
559 UINT64 *
560 px _RND_MODE_PARAM _EXC_FLAGS_PARAM
561 _EXC_MASKS_PARAM _EXC_INFO_PARAM);
b2a00c89
L
562 extern void bid64q_sqrt (UINT64 * pres, UINT128 * px
563 _RND_MODE_PARAM _EXC_FLAGS_PARAM
564 _EXC_MASKS_PARAM _EXC_INFO_PARAM);
200359e8 565
b2a00c89
L
566 extern void bid128_to_int8_rnint (char *pres,
567 UINT128 *
568 px _EXC_FLAGS_PARAM
569 _EXC_MASKS_PARAM
570 _EXC_INFO_PARAM);
571 extern void bid128_to_int8_xrnint (char *pres,
572 UINT128 *
573 px _EXC_FLAGS_PARAM
574 _EXC_MASKS_PARAM
575 _EXC_INFO_PARAM);
576 extern void bid128_to_int8_rninta (char *pres,
577 UINT128 *
578 px _EXC_FLAGS_PARAM
579 _EXC_MASKS_PARAM
580 _EXC_INFO_PARAM);
581 extern void bid128_to_int8_xrninta (char *pres,
582 UINT128 *
583 px _EXC_FLAGS_PARAM
584 _EXC_MASKS_PARAM
585 _EXC_INFO_PARAM);
586 extern void bid128_to_int8_int (char *pres,
587 UINT128 *
588 px _EXC_FLAGS_PARAM
589 _EXC_MASKS_PARAM _EXC_INFO_PARAM);
590 extern void bid128_to_int8_xint (char *pres,
591 UINT128 *
592 px _EXC_FLAGS_PARAM
593 _EXC_MASKS_PARAM _EXC_INFO_PARAM);
594 extern void bid128_to_int8_floor (char *pres,
595 UINT128 *
596 px _EXC_FLAGS_PARAM
597 _EXC_MASKS_PARAM
598 _EXC_INFO_PARAM);
599 extern void bid128_to_int8_xfloor (char *pres,
600 UINT128 *
601 px _EXC_FLAGS_PARAM
602 _EXC_MASKS_PARAM
603 _EXC_INFO_PARAM);
604 extern void bid128_to_int8_ceil (char *pres,
605 UINT128 *
606 px _EXC_FLAGS_PARAM
607 _EXC_MASKS_PARAM _EXC_INFO_PARAM);
608 extern void bid128_to_int8_xceil (char *pres,
609 UINT128 *
610 px _EXC_FLAGS_PARAM
611 _EXC_MASKS_PARAM
612 _EXC_INFO_PARAM);
613 extern void bid128_to_int16_rnint (short *pres,
614 UINT128 *
615 px _EXC_FLAGS_PARAM
616 _EXC_MASKS_PARAM
617 _EXC_INFO_PARAM);
618 extern void bid128_to_int16_xrnint (short *pres,
619 UINT128 *
620 px _EXC_FLAGS_PARAM
621 _EXC_MASKS_PARAM
622 _EXC_INFO_PARAM);
623 extern void bid128_to_int16_rninta (short *pres,
624 UINT128 *
625 px _EXC_FLAGS_PARAM
626 _EXC_MASKS_PARAM
627 _EXC_INFO_PARAM);
628 extern void bid128_to_int16_xrninta (short *pres,
629 UINT128 *
630 px _EXC_FLAGS_PARAM
631 _EXC_MASKS_PARAM
632 _EXC_INFO_PARAM);
633 extern void bid128_to_int16_int (short *pres,
634 UINT128 *
635 px _EXC_FLAGS_PARAM
636 _EXC_MASKS_PARAM _EXC_INFO_PARAM);
637 extern void bid128_to_int16_xint (short *pres,
638 UINT128 *
639 px _EXC_FLAGS_PARAM
640 _EXC_MASKS_PARAM
641 _EXC_INFO_PARAM);
642 extern void bid128_to_int16_floor (short *pres,
643 UINT128 *
644 px _EXC_FLAGS_PARAM
645 _EXC_MASKS_PARAM
646 _EXC_INFO_PARAM);
647 extern void bid128_to_int16_xfloor (short *pres,
648 UINT128 *
649 px _EXC_FLAGS_PARAM
650 _EXC_MASKS_PARAM
651 _EXC_INFO_PARAM);
652 extern void bid128_to_int16_ceil (short *pres,
653 UINT128 *
654 px _EXC_FLAGS_PARAM
655 _EXC_MASKS_PARAM
656 _EXC_INFO_PARAM);
657 extern void bid128_to_int16_xceil (short *pres,
658 UINT128 *
659 px _EXC_FLAGS_PARAM
660 _EXC_MASKS_PARAM
661 _EXC_INFO_PARAM);
662 extern void bid128_to_uint8_rnint (unsigned char *pres,
200359e8
L
663 UINT128 *
664 px _EXC_FLAGS_PARAM
665 _EXC_MASKS_PARAM
666 _EXC_INFO_PARAM);
b2a00c89 667 extern void bid128_to_uint8_xrnint (unsigned char *pres,
200359e8
L
668 UINT128 *
669 px _EXC_FLAGS_PARAM
670 _EXC_MASKS_PARAM
671 _EXC_INFO_PARAM);
b2a00c89 672 extern void bid128_to_uint8_rninta (unsigned char *pres,
200359e8
L
673 UINT128 *
674 px _EXC_FLAGS_PARAM
675 _EXC_MASKS_PARAM
676 _EXC_INFO_PARAM);
b2a00c89 677 extern void bid128_to_uint8_xrninta (unsigned char *pres,
200359e8
L
678 UINT128 *
679 px _EXC_FLAGS_PARAM
680 _EXC_MASKS_PARAM
681 _EXC_INFO_PARAM);
b2a00c89 682 extern void bid128_to_uint8_int (unsigned char *pres,
200359e8
L
683 UINT128 *
684 px _EXC_FLAGS_PARAM
685 _EXC_MASKS_PARAM _EXC_INFO_PARAM);
b2a00c89 686 extern void bid128_to_uint8_xint (unsigned char *pres,
200359e8
L
687 UINT128 *
688 px _EXC_FLAGS_PARAM
689 _EXC_MASKS_PARAM
690 _EXC_INFO_PARAM);
b2a00c89 691 extern void bid128_to_uint8_floor (unsigned char *pres,
200359e8
L
692 UINT128 *
693 px _EXC_FLAGS_PARAM
694 _EXC_MASKS_PARAM
695 _EXC_INFO_PARAM);
b2a00c89 696 extern void bid128_to_uint8_xfloor (unsigned char *pres,
200359e8
L
697 UINT128 *
698 px _EXC_FLAGS_PARAM
699 _EXC_MASKS_PARAM
700 _EXC_INFO_PARAM);
b2a00c89 701 extern void bid128_to_uint8_ceil (unsigned char *pres,
200359e8
L
702 UINT128 *
703 px _EXC_FLAGS_PARAM
704 _EXC_MASKS_PARAM
705 _EXC_INFO_PARAM);
b2a00c89 706 extern void bid128_to_uint8_xceil (unsigned char *pres,
200359e8
L
707 UINT128 *
708 px _EXC_FLAGS_PARAM
709 _EXC_MASKS_PARAM
710 _EXC_INFO_PARAM);
b2a00c89 711 extern void bid128_to_uint16_rnint (unsigned short *pres,
200359e8
L
712 UINT128 *
713 px _EXC_FLAGS_PARAM
714 _EXC_MASKS_PARAM
715 _EXC_INFO_PARAM);
b2a00c89 716 extern void bid128_to_uint16_xrnint (unsigned short *pres,
200359e8
L
717 UINT128 *
718 px _EXC_FLAGS_PARAM
719 _EXC_MASKS_PARAM
720 _EXC_INFO_PARAM);
b2a00c89 721 extern void bid128_to_uint16_rninta (unsigned short *pres,
200359e8
L
722 UINT128 *
723 px _EXC_FLAGS_PARAM
724 _EXC_MASKS_PARAM
725 _EXC_INFO_PARAM);
b2a00c89 726 extern void bid128_to_uint16_xrninta (unsigned short *pres,
200359e8
L
727 UINT128 *
728 px _EXC_FLAGS_PARAM
729 _EXC_MASKS_PARAM
730 _EXC_INFO_PARAM);
b2a00c89 731 extern void bid128_to_uint16_int (unsigned short *pres,
200359e8
L
732 UINT128 *
733 px _EXC_FLAGS_PARAM
734 _EXC_MASKS_PARAM
735 _EXC_INFO_PARAM);
b2a00c89 736 extern void bid128_to_uint16_xint (unsigned short *pres,
200359e8
L
737 UINT128 *
738 px _EXC_FLAGS_PARAM
739 _EXC_MASKS_PARAM
740 _EXC_INFO_PARAM);
b2a00c89 741 extern void bid128_to_uint16_floor (unsigned short *pres,
200359e8
L
742 UINT128 *
743 px _EXC_FLAGS_PARAM
744 _EXC_MASKS_PARAM
745 _EXC_INFO_PARAM);
b2a00c89 746 extern void bid128_to_uint16_xfloor (unsigned short *pres,
200359e8
L
747 UINT128 *
748 px _EXC_FLAGS_PARAM
749 _EXC_MASKS_PARAM
750 _EXC_INFO_PARAM);
b2a00c89 751 extern void bid128_to_uint16_ceil (unsigned short *pres,
200359e8
L
752 UINT128 *
753 px _EXC_FLAGS_PARAM
754 _EXC_MASKS_PARAM
755 _EXC_INFO_PARAM);
b2a00c89 756 extern void bid128_to_uint16_xceil (unsigned short *pres,
200359e8
L
757 UINT128 *
758 px _EXC_FLAGS_PARAM
759 _EXC_MASKS_PARAM
760 _EXC_INFO_PARAM);
b2a00c89 761 extern void bid128_to_int32_rnint (int *pres,
200359e8
L
762 UINT128 *
763 px _EXC_FLAGS_PARAM
764 _EXC_MASKS_PARAM
765 _EXC_INFO_PARAM);
b2a00c89 766 extern void bid128_to_int32_xrnint (int *pres,
200359e8
L
767 UINT128 *
768 px _EXC_FLAGS_PARAM
769 _EXC_MASKS_PARAM
770 _EXC_INFO_PARAM);
b2a00c89 771 extern void bid128_to_int32_rninta (int *pres,
200359e8
L
772 UINT128 *
773 px _EXC_FLAGS_PARAM
774 _EXC_MASKS_PARAM
775 _EXC_INFO_PARAM);
b2a00c89 776 extern void bid128_to_int32_xrninta (int *pres,
200359e8
L
777 UINT128 *
778 px _EXC_FLAGS_PARAM
779 _EXC_MASKS_PARAM
780 _EXC_INFO_PARAM);
b2a00c89 781 extern void bid128_to_int32_int (int *pres,
200359e8
L
782 UINT128 *
783 px _EXC_FLAGS_PARAM
784 _EXC_MASKS_PARAM _EXC_INFO_PARAM);
b2a00c89 785 extern void bid128_to_int32_xint (int *pres,
200359e8
L
786 UINT128 *
787 px _EXC_FLAGS_PARAM
788 _EXC_MASKS_PARAM
789 _EXC_INFO_PARAM);
b2a00c89 790 extern void bid128_to_int32_floor (int *pres,
200359e8
L
791 UINT128 *
792 px _EXC_FLAGS_PARAM
793 _EXC_MASKS_PARAM
794 _EXC_INFO_PARAM);
b2a00c89 795 extern void bid128_to_int32_xfloor (int *pres,
200359e8
L
796 UINT128 *
797 px _EXC_FLAGS_PARAM
798 _EXC_MASKS_PARAM
799 _EXC_INFO_PARAM);
b2a00c89 800 extern void bid128_to_int32_ceil (int *pres,
200359e8
L
801 UINT128 *
802 px _EXC_FLAGS_PARAM
803 _EXC_MASKS_PARAM
804 _EXC_INFO_PARAM);
b2a00c89 805 extern void bid128_to_int32_xceil (int *pres,
200359e8
L
806 UINT128 *
807 px _EXC_FLAGS_PARAM
808 _EXC_MASKS_PARAM
809 _EXC_INFO_PARAM);
b2a00c89 810 extern void bid128_to_uint32_rnint (unsigned int *pres,
200359e8
L
811 UINT128 *
812 px _EXC_FLAGS_PARAM
813 _EXC_MASKS_PARAM
814 _EXC_INFO_PARAM);
b2a00c89 815 extern void bid128_to_uint32_xrnint (unsigned int *pres,
200359e8
L
816 UINT128 *
817 px _EXC_FLAGS_PARAM
818 _EXC_MASKS_PARAM
819 _EXC_INFO_PARAM);
b2a00c89 820 extern void bid128_to_uint32_rninta (unsigned int *pres,
200359e8
L
821 UINT128 *
822 px _EXC_FLAGS_PARAM
823 _EXC_MASKS_PARAM
824 _EXC_INFO_PARAM);
b2a00c89 825 extern void bid128_to_uint32_xrninta (unsigned int *pres,
200359e8
L
826 UINT128 *
827 px _EXC_FLAGS_PARAM
828 _EXC_MASKS_PARAM
829 _EXC_INFO_PARAM);
b2a00c89 830 extern void bid128_to_uint32_int (unsigned int *pres,
200359e8
L
831 UINT128 *
832 px _EXC_FLAGS_PARAM
833 _EXC_MASKS_PARAM
834 _EXC_INFO_PARAM);
b2a00c89 835 extern void bid128_to_uint32_xint (unsigned int *pres,
200359e8
L
836 UINT128 *
837 px _EXC_FLAGS_PARAM
838 _EXC_MASKS_PARAM
839 _EXC_INFO_PARAM);
b2a00c89 840 extern void bid128_to_uint32_floor (unsigned int *pres,
200359e8
L
841 UINT128 *
842 px _EXC_FLAGS_PARAM
843 _EXC_MASKS_PARAM
844 _EXC_INFO_PARAM);
b2a00c89 845 extern void bid128_to_uint32_xfloor (unsigned int *pres,
200359e8
L
846 UINT128 *
847 px _EXC_FLAGS_PARAM
848 _EXC_MASKS_PARAM
849 _EXC_INFO_PARAM);
b2a00c89 850 extern void bid128_to_uint32_ceil (unsigned int *pres,
200359e8
L
851 UINT128 *
852 px _EXC_FLAGS_PARAM
853 _EXC_MASKS_PARAM
854 _EXC_INFO_PARAM);
b2a00c89 855 extern void bid128_to_uint32_xceil (unsigned int *pres,
200359e8
L
856 UINT128 *
857 px _EXC_FLAGS_PARAM
858 _EXC_MASKS_PARAM
859 _EXC_INFO_PARAM);
b2a00c89
L
860 extern void bid128_to_int64_rnint (SINT64 * pres,
861 UINT128 *
200359e8
L
862 px _EXC_FLAGS_PARAM
863 _EXC_MASKS_PARAM
864 _EXC_INFO_PARAM);
b2a00c89
L
865 extern void bid128_to_int64_xrnint (SINT64 * pres,
866 UINT128 *
200359e8
L
867 px _EXC_FLAGS_PARAM
868 _EXC_MASKS_PARAM
869 _EXC_INFO_PARAM);
b2a00c89
L
870 extern void bid128_to_int64_rninta (SINT64 * pres,
871 UINT128 *
872 px _EXC_FLAGS_PARAM
873 _EXC_MASKS_PARAM
874 _EXC_INFO_PARAM);
875 extern void bid128_to_int64_xrninta (SINT64 * pres,
876 UINT128 *
877 px _EXC_FLAGS_PARAM
878 _EXC_MASKS_PARAM
879 _EXC_INFO_PARAM);
880 extern void bid128_to_int64_int (SINT64 * pres,
881 UINT128 *
200359e8
L
882 px _EXC_FLAGS_PARAM
883 _EXC_MASKS_PARAM _EXC_INFO_PARAM);
b2a00c89
L
884 extern void bid128_to_int64_xint (SINT64 * pres,
885 UINT128 *
200359e8
L
886 px _EXC_FLAGS_PARAM
887 _EXC_MASKS_PARAM
888 _EXC_INFO_PARAM);
b2a00c89
L
889 extern void bid128_to_int64_floor (SINT64 * pres,
890 UINT128 *
200359e8
L
891 px _EXC_FLAGS_PARAM
892 _EXC_MASKS_PARAM
893 _EXC_INFO_PARAM);
b2a00c89
L
894 extern void bid128_to_int64_xfloor (SINT64 * pres,
895 UINT128 *
896 px _EXC_FLAGS_PARAM
897 _EXC_MASKS_PARAM
898 _EXC_INFO_PARAM);
899 extern void bid128_to_int64_ceil (SINT64 * pres,
900 UINT128 *
200359e8
L
901 px _EXC_FLAGS_PARAM
902 _EXC_MASKS_PARAM
903 _EXC_INFO_PARAM);
b2a00c89
L
904 extern void bid128_to_int64_xceil (SINT64 * pres,
905 UINT128 *
200359e8
L
906 px _EXC_FLAGS_PARAM
907 _EXC_MASKS_PARAM
908 _EXC_INFO_PARAM);
b2a00c89
L
909 extern void bid128_to_uint64_rnint (UINT64 * pres,
910 UINT128 *
200359e8
L
911 px _EXC_FLAGS_PARAM
912 _EXC_MASKS_PARAM
913 _EXC_INFO_PARAM);
b2a00c89
L
914 extern void bid128_to_uint64_xrnint (UINT64 * pres,
915 UINT128 *
200359e8
L
916 px _EXC_FLAGS_PARAM
917 _EXC_MASKS_PARAM
918 _EXC_INFO_PARAM);
b2a00c89
L
919 extern void bid128_to_uint64_rninta (UINT64 * pres,
920 UINT128 *
921 px _EXC_FLAGS_PARAM
922 _EXC_MASKS_PARAM
923 _EXC_INFO_PARAM);
924 extern void bid128_to_uint64_xrninta (UINT64 * pres,
925 UINT128 *
926 px _EXC_FLAGS_PARAM
927 _EXC_MASKS_PARAM
928 _EXC_INFO_PARAM);
929 extern void bid128_to_uint64_int (UINT64 * pres,
930 UINT128 *
200359e8
L
931 px _EXC_FLAGS_PARAM
932 _EXC_MASKS_PARAM
933 _EXC_INFO_PARAM);
b2a00c89
L
934 extern void bid128_to_uint64_xint (UINT64 * pres,
935 UINT128 *
200359e8
L
936 px _EXC_FLAGS_PARAM
937 _EXC_MASKS_PARAM
938 _EXC_INFO_PARAM);
b2a00c89
L
939 extern void bid128_to_uint64_floor (UINT64 * pres,
940 UINT128 *
200359e8
L
941 px _EXC_FLAGS_PARAM
942 _EXC_MASKS_PARAM
943 _EXC_INFO_PARAM);
b2a00c89
L
944 extern void bid128_to_uint64_xfloor (UINT64 * pres,
945 UINT128 *
946 px _EXC_FLAGS_PARAM
947 _EXC_MASKS_PARAM
948 _EXC_INFO_PARAM);
949 extern void bid128_to_uint64_ceil (UINT64 * pres,
950 UINT128 *
200359e8
L
951 px _EXC_FLAGS_PARAM
952 _EXC_MASKS_PARAM
953 _EXC_INFO_PARAM);
b2a00c89
L
954 extern void bid128_to_uint64_xceil (UINT64 * pres,
955 UINT128 *
956 px _EXC_FLAGS_PARAM
957 _EXC_MASKS_PARAM
958 _EXC_INFO_PARAM);
959 extern void bid64_to_int32_rnint (int *pres,
200359e8
L
960 UINT64 *
961 px _EXC_FLAGS_PARAM
962 _EXC_MASKS_PARAM
963 _EXC_INFO_PARAM);
b2a00c89 964 extern void bid64_to_int32_xrnint (int *pres,
200359e8
L
965 UINT64 *
966 px _EXC_FLAGS_PARAM
967 _EXC_MASKS_PARAM
968 _EXC_INFO_PARAM);
b2a00c89 969 extern void bid64_to_int32_rninta (int *pres,
200359e8
L
970 UINT64 *
971 px _EXC_FLAGS_PARAM
972 _EXC_MASKS_PARAM
973 _EXC_INFO_PARAM);
b2a00c89 974 extern void bid64_to_int32_xrninta (int *pres,
200359e8
L
975 UINT64 *
976 px _EXC_FLAGS_PARAM
977 _EXC_MASKS_PARAM
978 _EXC_INFO_PARAM);
b2a00c89 979 extern void bid64_to_int32_int (int *pres,
200359e8
L
980 UINT64 *
981 px _EXC_FLAGS_PARAM
982 _EXC_MASKS_PARAM _EXC_INFO_PARAM);
b2a00c89 983 extern void bid64_to_int32_xint (int *pres,
200359e8
L
984 UINT64 *
985 px _EXC_FLAGS_PARAM
986 _EXC_MASKS_PARAM _EXC_INFO_PARAM);
b2a00c89 987 extern void bid64_to_int32_floor (int *pres,
200359e8
L
988 UINT64 *
989 px _EXC_FLAGS_PARAM
990 _EXC_MASKS_PARAM
991 _EXC_INFO_PARAM);
b2a00c89 992 extern void bid64_to_int32_xfloor (int *pres,
200359e8
L
993 UINT64 *
994 px _EXC_FLAGS_PARAM
995 _EXC_MASKS_PARAM
996 _EXC_INFO_PARAM);
b2a00c89
L
997 extern void bid64_to_int32_ceil (int *pres,
998 UINT64 *
999 px _EXC_FLAGS_PARAM
1000 _EXC_MASKS_PARAM _EXC_INFO_PARAM);
1001 extern void bid64_to_int32_xceil (int *pres,
1002 UINT64 *
1003 px _EXC_FLAGS_PARAM
1004 _EXC_MASKS_PARAM
1005 _EXC_INFO_PARAM);
1006 extern void bid64_to_int8_rnint (char *pres,
200359e8
L
1007 UINT64 *
1008 px _EXC_FLAGS_PARAM
1009 _EXC_MASKS_PARAM _EXC_INFO_PARAM);
b2a00c89
L
1010 extern void bid64_to_int8_xrnint (char *pres,
1011 UINT64 *
1012 px _EXC_FLAGS_PARAM
1013 _EXC_MASKS_PARAM
1014 _EXC_INFO_PARAM);
1015 extern void bid64_to_int8_rninta (char *pres,
200359e8
L
1016 UINT64 *
1017 px _EXC_FLAGS_PARAM
1018 _EXC_MASKS_PARAM
1019 _EXC_INFO_PARAM);
b2a00c89 1020 extern void bid64_to_int8_xrninta (char *pres,
200359e8
L
1021 UINT64 *
1022 px _EXC_FLAGS_PARAM
1023 _EXC_MASKS_PARAM
1024 _EXC_INFO_PARAM);
b2a00c89
L
1025 extern void bid64_to_int8_int (char *pres,
1026 UINT64 *
1027 px _EXC_FLAGS_PARAM _EXC_MASKS_PARAM
1028 _EXC_INFO_PARAM);
1029 extern void bid64_to_int8_xint (char *pres,
1030 UINT64 *
1031 px _EXC_FLAGS_PARAM
1032 _EXC_MASKS_PARAM _EXC_INFO_PARAM);
1033 extern void bid64_to_int8_floor (char *pres,
1034 UINT64 *
1035 px _EXC_FLAGS_PARAM
1036 _EXC_MASKS_PARAM _EXC_INFO_PARAM);
1037 extern void bid64_to_int8_xfloor (char *pres,
1038 UINT64 *
1039 px _EXC_FLAGS_PARAM
1040 _EXC_MASKS_PARAM
1041 _EXC_INFO_PARAM);
1042 extern void bid64_to_int8_ceil (char *pres,
1043 UINT64 *
1044 px _EXC_FLAGS_PARAM
1045 _EXC_MASKS_PARAM _EXC_INFO_PARAM);
1046 extern void bid64_to_int8_xceil (char *pres,
1047 UINT64 *
1048 px _EXC_FLAGS_PARAM
1049 _EXC_MASKS_PARAM _EXC_INFO_PARAM);
1050 extern void bid64_to_int16_rnint (short *pres,
1051 UINT64 *
1052 px _EXC_FLAGS_PARAM
1053 _EXC_MASKS_PARAM
1054 _EXC_INFO_PARAM);
1055 extern void bid64_to_int16_xrnint (short *pres,
1056 UINT64 *
1057 px _EXC_FLAGS_PARAM
1058 _EXC_MASKS_PARAM
1059 _EXC_INFO_PARAM);
1060 extern void bid64_to_int16_rninta (short *pres,
1061 UINT64 *
1062 px _EXC_FLAGS_PARAM
1063 _EXC_MASKS_PARAM
1064 _EXC_INFO_PARAM);
1065 extern void bid64_to_int16_xrninta (short *pres,
1066 UINT64 *
1067 px _EXC_FLAGS_PARAM
1068 _EXC_MASKS_PARAM
1069 _EXC_INFO_PARAM);
1070 extern void bid64_to_int16_int (short *pres,
1071 UINT64 *
1072 px _EXC_FLAGS_PARAM
1073 _EXC_MASKS_PARAM _EXC_INFO_PARAM);
1074 extern void bid64_to_int16_xint (short *pres,
1075 UINT64 *
1076 px _EXC_FLAGS_PARAM
1077 _EXC_MASKS_PARAM _EXC_INFO_PARAM);
1078 extern void bid64_to_int16_floor (short *pres,
1079 UINT64 *
1080 px _EXC_FLAGS_PARAM
1081 _EXC_MASKS_PARAM
1082 _EXC_INFO_PARAM);
1083 extern void bid64_to_int16_xfloor (short *pres,
1084 UINT64 *
1085 px _EXC_FLAGS_PARAM
1086 _EXC_MASKS_PARAM
1087 _EXC_INFO_PARAM);
1088 extern void bid64_to_int16_ceil (short *pres,
1089 UINT64 *
1090 px _EXC_FLAGS_PARAM
1091 _EXC_MASKS_PARAM _EXC_INFO_PARAM);
1092 extern void bid64_to_int16_xceil (short *pres,
1093 UINT64 *
1094 px _EXC_FLAGS_PARAM
1095 _EXC_MASKS_PARAM
1096 _EXC_INFO_PARAM);
1097 extern void bid64_to_uint8_rnint (unsigned char *pres,
1098 UINT64 *
1099 px _EXC_FLAGS_PARAM
1100 _EXC_MASKS_PARAM
1101 _EXC_INFO_PARAM);
1102 extern void bid64_to_uint8_xrnint (unsigned char *pres,
1103 UINT64 *
1104 px _EXC_FLAGS_PARAM
1105 _EXC_MASKS_PARAM
1106 _EXC_INFO_PARAM);
1107 extern void bid64_to_uint8_rninta (unsigned char *pres,
1108 UINT64 *
1109 px _EXC_FLAGS_PARAM
1110 _EXC_MASKS_PARAM
1111 _EXC_INFO_PARAM);
1112 extern void bid64_to_uint8_xrninta (unsigned char *pres,
1113 UINT64 *
1114 px _EXC_FLAGS_PARAM
1115 _EXC_MASKS_PARAM
1116 _EXC_INFO_PARAM);
1117 extern void bid64_to_uint8_int (unsigned char *pres,
1118 UINT64 *
1119 px _EXC_FLAGS_PARAM
1120 _EXC_MASKS_PARAM _EXC_INFO_PARAM);
1121 extern void bid64_to_uint8_xint (unsigned char *pres,
1122 UINT64 *
1123 px _EXC_FLAGS_PARAM
1124 _EXC_MASKS_PARAM _EXC_INFO_PARAM);
1125 extern void bid64_to_uint8_floor (unsigned char *pres,
1126 UINT64 *
1127 px _EXC_FLAGS_PARAM
1128 _EXC_MASKS_PARAM
1129 _EXC_INFO_PARAM);
1130 extern void bid64_to_uint8_xfloor (unsigned char *pres,
1131 UINT64 *
1132 px _EXC_FLAGS_PARAM
1133 _EXC_MASKS_PARAM
1134 _EXC_INFO_PARAM);
1135 extern void bid64_to_uint8_ceil (unsigned char *pres,
1136 UINT64 *
1137 px _EXC_FLAGS_PARAM
1138 _EXC_MASKS_PARAM _EXC_INFO_PARAM);
1139 extern void bid64_to_uint8_xceil (unsigned char *pres,
1140 UINT64 *
1141 px _EXC_FLAGS_PARAM
1142 _EXC_MASKS_PARAM
1143 _EXC_INFO_PARAM);
1144 extern void bid64_to_uint16_rnint (unsigned short *pres,
1145 UINT64 *
1146 px _EXC_FLAGS_PARAM
1147 _EXC_MASKS_PARAM
1148 _EXC_INFO_PARAM);
1149 extern void bid64_to_uint16_xrnint (unsigned short *pres,
1150 UINT64 *
1151 px _EXC_FLAGS_PARAM
1152 _EXC_MASKS_PARAM
1153 _EXC_INFO_PARAM);
1154 extern void bid64_to_uint16_rninta (unsigned short *pres,
1155 UINT64 *
1156 px _EXC_FLAGS_PARAM
1157 _EXC_MASKS_PARAM
1158 _EXC_INFO_PARAM);
1159 extern void bid64_to_uint16_xrninta (unsigned short *pres,
1160 UINT64 *
1161 px _EXC_FLAGS_PARAM
1162 _EXC_MASKS_PARAM
1163 _EXC_INFO_PARAM);
1164 extern void bid64_to_uint16_int (unsigned short *pres,
1165 UINT64 *
1166 px _EXC_FLAGS_PARAM
1167 _EXC_MASKS_PARAM _EXC_INFO_PARAM);
1168 extern void bid64_to_uint16_xint (unsigned short *pres,
1169 UINT64 *
1170 px _EXC_FLAGS_PARAM
1171 _EXC_MASKS_PARAM
1172 _EXC_INFO_PARAM);
1173 extern void bid64_to_uint16_floor (unsigned short *pres,
1174 UINT64 *
1175 px _EXC_FLAGS_PARAM
1176 _EXC_MASKS_PARAM
1177 _EXC_INFO_PARAM);
1178 extern void bid64_to_uint16_xfloor (unsigned short *pres,
1179 UINT64 *
1180 px _EXC_FLAGS_PARAM
1181 _EXC_MASKS_PARAM
1182 _EXC_INFO_PARAM);
1183 extern void bid64_to_uint16_ceil (unsigned short *pres,
1184 UINT64 *
1185 px _EXC_FLAGS_PARAM
1186 _EXC_MASKS_PARAM
1187 _EXC_INFO_PARAM);
1188 extern void bid64_to_uint16_xceil (unsigned short *pres,
1189 UINT64 *
1190 px _EXC_FLAGS_PARAM
1191 _EXC_MASKS_PARAM
1192 _EXC_INFO_PARAM);
1193 extern void bid64_to_uint32_rnint (unsigned int *pres,
1194 UINT64 *
1195 px _EXC_FLAGS_PARAM
1196 _EXC_MASKS_PARAM
1197 _EXC_INFO_PARAM);
1198 extern void bid64_to_uint32_xrnint (unsigned int *pres,
1199 UINT64 *
1200 px _EXC_FLAGS_PARAM
1201 _EXC_MASKS_PARAM
1202 _EXC_INFO_PARAM);
1203 extern void bid64_to_uint32_rninta (unsigned int *pres,
1204 UINT64 *
1205 px _EXC_FLAGS_PARAM
1206 _EXC_MASKS_PARAM
1207 _EXC_INFO_PARAM);
1208 extern void bid64_to_uint32_xrninta (unsigned int *pres,
1209 UINT64 *
1210 px _EXC_FLAGS_PARAM
1211 _EXC_MASKS_PARAM
1212 _EXC_INFO_PARAM);
1213 extern void bid64_to_uint32_int (unsigned int *pres,
1214 UINT64 *
1215 px _EXC_FLAGS_PARAM
1216 _EXC_MASKS_PARAM _EXC_INFO_PARAM);
1217 extern void bid64_to_uint32_xint (unsigned int *pres,
1218 UINT64 *
1219 px _EXC_FLAGS_PARAM
1220 _EXC_MASKS_PARAM
1221 _EXC_INFO_PARAM);
1222 extern void bid64_to_uint32_floor (unsigned int *pres,
1223 UINT64 *
1224 px _EXC_FLAGS_PARAM
1225 _EXC_MASKS_PARAM
1226 _EXC_INFO_PARAM);
1227 extern void bid64_to_uint32_xfloor (unsigned int *pres,
1228 UINT64 *
1229 px _EXC_FLAGS_PARAM
1230 _EXC_MASKS_PARAM
1231 _EXC_INFO_PARAM);
1232 extern void bid64_to_uint32_ceil (unsigned int *pres,
1233 UINT64 *
1234 px _EXC_FLAGS_PARAM
1235 _EXC_MASKS_PARAM
1236 _EXC_INFO_PARAM);
1237 extern void bid64_to_uint32_xceil (unsigned int *pres,
1238 UINT64 *
1239 px _EXC_FLAGS_PARAM
1240 _EXC_MASKS_PARAM
1241 _EXC_INFO_PARAM);
1242 extern void bid64_to_int64_rnint (SINT64 * pres,
1243 UINT64 *
1244 px _EXC_FLAGS_PARAM
1245 _EXC_MASKS_PARAM
1246 _EXC_INFO_PARAM);
1247 extern void bid64_to_int64_xrnint (SINT64 * pres,
1248 UINT64 *
1249 px _EXC_FLAGS_PARAM
1250 _EXC_MASKS_PARAM
1251 _EXC_INFO_PARAM);
1252 extern void bid64_to_int64_rninta (SINT64 * pres,
1253 UINT64 *
1254 px _EXC_FLAGS_PARAM
1255 _EXC_MASKS_PARAM
1256 _EXC_INFO_PARAM);
1257 extern void bid64_to_int64_xrninta (SINT64 * pres,
1258 UINT64 *
1259 px _EXC_FLAGS_PARAM
1260 _EXC_MASKS_PARAM
1261 _EXC_INFO_PARAM);
1262 extern void bid64_to_int64_int (SINT64 * pres,
1263 UINT64 *
1264 px _EXC_FLAGS_PARAM
1265 _EXC_MASKS_PARAM _EXC_INFO_PARAM);
1266 extern void bid64_to_int64_xint (SINT64 * pres,
1267 UINT64 *
1268 px _EXC_FLAGS_PARAM
1269 _EXC_MASKS_PARAM _EXC_INFO_PARAM);
1270 extern void bid64_to_int64_floor (SINT64 * pres,
1271 UINT64 *
1272 px _EXC_FLAGS_PARAM
1273 _EXC_MASKS_PARAM
1274 _EXC_INFO_PARAM);
1275 extern void bid64_to_int64_xfloor (SINT64 * pres,
1276 UINT64 *
1277 px _EXC_FLAGS_PARAM
1278 _EXC_MASKS_PARAM
1279 _EXC_INFO_PARAM);
1280 extern void bid64_to_int64_ceil (SINT64 * pres,
1281 UINT64 *
1282 px _EXC_FLAGS_PARAM
1283 _EXC_MASKS_PARAM _EXC_INFO_PARAM);
1284 extern void bid64_to_int64_xceil (SINT64 * pres,
1285 UINT64 *
1286 px _EXC_FLAGS_PARAM
1287 _EXC_MASKS_PARAM
1288 _EXC_INFO_PARAM);
1289 extern void bid64_to_uint64_rnint (UINT64 * pres,
1290 UINT64 *
1291 px _EXC_FLAGS_PARAM
1292 _EXC_MASKS_PARAM
1293 _EXC_INFO_PARAM);
1294 extern void bid64_to_uint64_xrnint (UINT64 * pres,
1295 UINT64 *
200359e8
L
1296 px _EXC_FLAGS_PARAM
1297 _EXC_MASKS_PARAM
1298 _EXC_INFO_PARAM);
b2a00c89 1299 extern void bid64_to_uint64_rninta (UINT64 * pres,
200359e8
L
1300 UINT64 *
1301 px _EXC_FLAGS_PARAM
1302 _EXC_MASKS_PARAM
1303 _EXC_INFO_PARAM);
b2a00c89 1304 extern void bid64_to_uint64_xrninta (UINT64 * pres,
200359e8
L
1305 UINT64 *
1306 px _EXC_FLAGS_PARAM
1307 _EXC_MASKS_PARAM
1308 _EXC_INFO_PARAM);
b2a00c89 1309 extern void bid64_to_uint64_int (UINT64 * pres,
200359e8
L
1310 UINT64 *
1311 px _EXC_FLAGS_PARAM
1312 _EXC_MASKS_PARAM _EXC_INFO_PARAM);
b2a00c89 1313 extern void bid64_to_uint64_xint (UINT64 * pres,
200359e8
L
1314 UINT64 *
1315 px _EXC_FLAGS_PARAM
1316 _EXC_MASKS_PARAM
1317 _EXC_INFO_PARAM);
b2a00c89 1318 extern void bid64_to_uint64_floor (UINT64 * pres,
200359e8
L
1319 UINT64 *
1320 px _EXC_FLAGS_PARAM
1321 _EXC_MASKS_PARAM
1322 _EXC_INFO_PARAM);
b2a00c89 1323 extern void bid64_to_uint64_xfloor (UINT64 * pres,
200359e8
L
1324 UINT64 *
1325 px _EXC_FLAGS_PARAM
1326 _EXC_MASKS_PARAM
1327 _EXC_INFO_PARAM);
b2a00c89 1328 extern void bid64_to_uint64_ceil (UINT64 * pres,
200359e8
L
1329 UINT64 *
1330 px _EXC_FLAGS_PARAM
1331 _EXC_MASKS_PARAM
1332 _EXC_INFO_PARAM);
b2a00c89 1333 extern void bid64_to_uint64_xceil (UINT64 * pres,
200359e8
L
1334 UINT64 *
1335 px _EXC_FLAGS_PARAM
1336 _EXC_MASKS_PARAM
1337 _EXC_INFO_PARAM);
1338
b2a00c89 1339 extern void bid64_quiet_equal (int *pres, UINT64 * px, UINT64 * py
200359e8
L
1340 _EXC_FLAGS_PARAM _EXC_MASKS_PARAM
1341 _EXC_INFO_PARAM);
b2a00c89 1342 extern void bid64_quiet_greater (int *pres, UINT64 * px,
200359e8
L
1343 UINT64 *
1344 py _EXC_FLAGS_PARAM
1345 _EXC_MASKS_PARAM _EXC_INFO_PARAM);
b2a00c89 1346 extern void bid64_quiet_greater_equal (int *pres, UINT64 * px,
200359e8
L
1347 UINT64 *
1348 py _EXC_FLAGS_PARAM
1349 _EXC_MASKS_PARAM
1350 _EXC_INFO_PARAM);
b2a00c89 1351 extern void bid64_quiet_greater_unordered (int *pres, UINT64 * px,
200359e8
L
1352 UINT64 *
1353 py _EXC_FLAGS_PARAM
1354 _EXC_MASKS_PARAM
1355 _EXC_INFO_PARAM);
b2a00c89 1356 extern void bid64_quiet_less (int *pres, UINT64 * px,
200359e8
L
1357 UINT64 *
1358 py _EXC_FLAGS_PARAM _EXC_MASKS_PARAM
1359 _EXC_INFO_PARAM);
b2a00c89 1360 extern void bid64_quiet_less_equal (int *pres, UINT64 * px,
200359e8
L
1361 UINT64 *
1362 py _EXC_FLAGS_PARAM
1363 _EXC_MASKS_PARAM
1364 _EXC_INFO_PARAM);
b2a00c89 1365 extern void bid64_quiet_less_unordered (int *pres, UINT64 * px,
200359e8
L
1366 UINT64 *
1367 py _EXC_FLAGS_PARAM
1368 _EXC_MASKS_PARAM
1369 _EXC_INFO_PARAM);
b2a00c89 1370 extern void bid64_quiet_not_equal (int *pres, UINT64 * px,
200359e8
L
1371 UINT64 *
1372 py _EXC_FLAGS_PARAM
1373 _EXC_MASKS_PARAM
1374 _EXC_INFO_PARAM);
b2a00c89 1375 extern void bid64_quiet_not_greater (int *pres, UINT64 * px,
200359e8
L
1376 UINT64 *
1377 py _EXC_FLAGS_PARAM
1378 _EXC_MASKS_PARAM
1379 _EXC_INFO_PARAM);
b2a00c89 1380 extern void bid64_quiet_not_less (int *pres, UINT64 * px,
200359e8
L
1381 UINT64 *
1382 py _EXC_FLAGS_PARAM
1383 _EXC_MASKS_PARAM
1384 _EXC_INFO_PARAM);
b2a00c89 1385 extern void bid64_quiet_ordered (int *pres, UINT64 * px,
200359e8
L
1386 UINT64 *
1387 py _EXC_FLAGS_PARAM
1388 _EXC_MASKS_PARAM _EXC_INFO_PARAM);
b2a00c89 1389 extern void bid64_quiet_unordered (int *pres, UINT64 * px,
200359e8
L
1390 UINT64 *
1391 py _EXC_FLAGS_PARAM
1392 _EXC_MASKS_PARAM
1393 _EXC_INFO_PARAM);
b2a00c89 1394 extern void bid64_signaling_greater (int *pres, UINT64 * px,
200359e8
L
1395 UINT64 *
1396 py _EXC_FLAGS_PARAM
1397 _EXC_MASKS_PARAM
1398 _EXC_INFO_PARAM);
b2a00c89 1399 extern void bid64_signaling_greater_equal (int *pres, UINT64 * px,
200359e8
L
1400 UINT64 *
1401 py _EXC_FLAGS_PARAM
1402 _EXC_MASKS_PARAM
1403 _EXC_INFO_PARAM);
b2a00c89 1404 extern void bid64_signaling_greater_unordered (int *pres,
200359e8
L
1405 UINT64 * px,
1406 UINT64 *
1407 py _EXC_FLAGS_PARAM
1408 _EXC_MASKS_PARAM
1409 _EXC_INFO_PARAM);
b2a00c89 1410 extern void bid64_signaling_less (int *pres, UINT64 * px,
200359e8
L
1411 UINT64 *
1412 py _EXC_FLAGS_PARAM
1413 _EXC_MASKS_PARAM
1414 _EXC_INFO_PARAM);
b2a00c89 1415 extern void bid64_signaling_less_equal (int *pres, UINT64 * px,
200359e8
L
1416 UINT64 *
1417 py _EXC_FLAGS_PARAM
1418 _EXC_MASKS_PARAM
1419 _EXC_INFO_PARAM);
b2a00c89 1420 extern void bid64_signaling_less_unordered (int *pres, UINT64 * px,
200359e8
L
1421 UINT64 *
1422 py _EXC_FLAGS_PARAM
1423 _EXC_MASKS_PARAM
1424 _EXC_INFO_PARAM);
b2a00c89 1425 extern void bid64_signaling_not_greater (int *pres, UINT64 * px,
200359e8
L
1426 UINT64 *
1427 py _EXC_FLAGS_PARAM
1428 _EXC_MASKS_PARAM
1429 _EXC_INFO_PARAM);
b2a00c89 1430 extern void bid64_signaling_not_less (int *pres, UINT64 * px,
200359e8
L
1431 UINT64 *
1432 py _EXC_FLAGS_PARAM
1433 _EXC_MASKS_PARAM
1434 _EXC_INFO_PARAM);
200359e8 1435
b2a00c89 1436 extern void bid128_quiet_equal (int *pres, UINT128 * px,
200359e8
L
1437 UINT128 *
1438 py _EXC_FLAGS_PARAM
1439 _EXC_MASKS_PARAM _EXC_INFO_PARAM);
b2a00c89 1440 extern void bid128_quiet_greater (int *pres, UINT128 * px,
200359e8
L
1441 UINT128 *
1442 py _EXC_FLAGS_PARAM
1443 _EXC_MASKS_PARAM
1444 _EXC_INFO_PARAM);
b2a00c89 1445 extern void bid128_quiet_greater_equal (int *pres, UINT128 * px,
200359e8
L
1446 UINT128 *
1447 py _EXC_FLAGS_PARAM
1448 _EXC_MASKS_PARAM
1449 _EXC_INFO_PARAM);
b2a00c89 1450 extern void bid128_quiet_greater_unordered (int *pres,
200359e8
L
1451 UINT128 * px,
1452 UINT128 *
1453 py _EXC_FLAGS_PARAM
1454 _EXC_MASKS_PARAM
1455 _EXC_INFO_PARAM);
b2a00c89 1456 extern void bid128_quiet_less (int *pres, UINT128 * px,
200359e8
L
1457 UINT128 *
1458 py _EXC_FLAGS_PARAM _EXC_MASKS_PARAM
1459 _EXC_INFO_PARAM);
b2a00c89 1460 extern void bid128_quiet_less_equal (int *pres, UINT128 * px,
200359e8
L
1461 UINT128 *
1462 py _EXC_FLAGS_PARAM
1463 _EXC_MASKS_PARAM
1464 _EXC_INFO_PARAM);
b2a00c89 1465 extern void bid128_quiet_less_unordered (int *pres, UINT128 * px,
200359e8
L
1466 UINT128 *
1467 py _EXC_FLAGS_PARAM
1468 _EXC_MASKS_PARAM
1469 _EXC_INFO_PARAM);
b2a00c89 1470 extern void bid128_quiet_not_equal (int *pres, UINT128 * px,
200359e8
L
1471 UINT128 *
1472 py _EXC_FLAGS_PARAM
1473 _EXC_MASKS_PARAM
1474 _EXC_INFO_PARAM);
b2a00c89 1475 extern void bid128_quiet_not_greater (int *pres, UINT128 * px,
200359e8
L
1476 UINT128 *
1477 py _EXC_FLAGS_PARAM
1478 _EXC_MASKS_PARAM
1479 _EXC_INFO_PARAM);
b2a00c89 1480 extern void bid128_quiet_not_less (int *pres, UINT128 * px,
200359e8
L
1481 UINT128 *
1482 py _EXC_FLAGS_PARAM
1483 _EXC_MASKS_PARAM
1484 _EXC_INFO_PARAM);
b2a00c89 1485 extern void bid128_quiet_ordered (int *pres, UINT128 * px,
200359e8
L
1486 UINT128 *
1487 py _EXC_FLAGS_PARAM
1488 _EXC_MASKS_PARAM
1489 _EXC_INFO_PARAM);
b2a00c89 1490 extern void bid128_quiet_unordered (int *pres, UINT128 * px,
200359e8
L
1491 UINT128 *
1492 py _EXC_FLAGS_PARAM
1493 _EXC_MASKS_PARAM
1494 _EXC_INFO_PARAM);
b2a00c89 1495 extern void bid128_signaling_greater (int *pres, UINT128 * px,
200359e8
L
1496 UINT128 *
1497 py _EXC_FLAGS_PARAM
1498 _EXC_MASKS_PARAM
1499 _EXC_INFO_PARAM);
b2a00c89 1500 extern void bid128_signaling_greater_equal (int *pres,
200359e8
L
1501 UINT128 * px,
1502 UINT128 *
1503 py _EXC_FLAGS_PARAM
1504 _EXC_MASKS_PARAM
1505 _EXC_INFO_PARAM);
b2a00c89 1506 extern void bid128_signaling_greater_unordered (int *pres,
200359e8
L
1507 UINT128 * px,
1508 UINT128 *
1509 py _EXC_FLAGS_PARAM
1510 _EXC_MASKS_PARAM
1511 _EXC_INFO_PARAM);
b2a00c89 1512 extern void bid128_signaling_less (int *pres, UINT128 * px,
200359e8
L
1513 UINT128 *
1514 py _EXC_FLAGS_PARAM
1515 _EXC_MASKS_PARAM
1516 _EXC_INFO_PARAM);
b2a00c89 1517 extern void bid128_signaling_less_equal (int *pres, UINT128 * px,
200359e8
L
1518 UINT128 *
1519 py _EXC_FLAGS_PARAM
1520 _EXC_MASKS_PARAM
1521 _EXC_INFO_PARAM);
b2a00c89 1522 extern void bid128_signaling_less_unordered (int *pres,
200359e8
L
1523 UINT128 * px,
1524 UINT128 *
1525 py _EXC_FLAGS_PARAM
1526 _EXC_MASKS_PARAM
1527 _EXC_INFO_PARAM);
b2a00c89 1528 extern void bid128_signaling_not_greater (int *pres, UINT128 * px,
200359e8
L
1529 UINT128 *
1530 py _EXC_FLAGS_PARAM
1531 _EXC_MASKS_PARAM
1532 _EXC_INFO_PARAM);
b2a00c89 1533 extern void bid128_signaling_not_less (int *pres, UINT128 * px,
200359e8
L
1534 UINT128 *
1535 py _EXC_FLAGS_PARAM
1536 _EXC_MASKS_PARAM
1537 _EXC_INFO_PARAM);
200359e8 1538
b2a00c89 1539 extern void bid64_round_integral_exact (UINT64 * pres, UINT64 * px
200359e8
L
1540 _RND_MODE_PARAM
1541 _EXC_FLAGS_PARAM
1542 _EXC_MASKS_PARAM
1543 _EXC_INFO_PARAM);
b2a00c89 1544 extern void bid64_round_integral_nearest_even (UINT64 * pres,
200359e8
L
1545 UINT64 *
1546 px _EXC_FLAGS_PARAM
1547 _EXC_MASKS_PARAM
1548 _EXC_INFO_PARAM);
b2a00c89 1549 extern void bid64_round_integral_negative (UINT64 * pres,
200359e8
L
1550 UINT64 *
1551 px _EXC_FLAGS_PARAM
1552 _EXC_MASKS_PARAM
1553 _EXC_INFO_PARAM);
b2a00c89 1554 extern void bid64_round_integral_positive (UINT64 * pres,
200359e8
L
1555 UINT64 *
1556 px _EXC_FLAGS_PARAM
1557 _EXC_MASKS_PARAM
1558 _EXC_INFO_PARAM);
b2a00c89 1559 extern void bid64_round_integral_zero (UINT64 * pres,
200359e8
L
1560 UINT64 *
1561 px _EXC_FLAGS_PARAM
1562 _EXC_MASKS_PARAM
1563 _EXC_INFO_PARAM);
b2a00c89 1564 extern void bid64_round_integral_nearest_away (UINT64 * pres,
200359e8
L
1565 UINT64 *
1566 px _EXC_FLAGS_PARAM
1567 _EXC_MASKS_PARAM
1568 _EXC_INFO_PARAM);
1569
b2a00c89 1570 extern void bid128_round_integral_exact (UINT128 * pres,
200359e8
L
1571 UINT128 *
1572 px _RND_MODE_PARAM
1573 _EXC_FLAGS_PARAM
1574 _EXC_MASKS_PARAM
1575 _EXC_INFO_PARAM);
b2a00c89 1576 extern void bid128_round_integral_nearest_even (UINT128 * pres,
200359e8
L
1577 UINT128 *
1578 px _EXC_FLAGS_PARAM
1579 _EXC_MASKS_PARAM
1580 _EXC_INFO_PARAM);
b2a00c89 1581 extern void bid128_round_integral_negative (UINT128 * pres,
200359e8
L
1582 UINT128 *
1583 px _EXC_FLAGS_PARAM
1584 _EXC_MASKS_PARAM
1585 _EXC_INFO_PARAM);
b2a00c89 1586 extern void bid128_round_integral_positive (UINT128 * pres,
200359e8
L
1587 UINT128 *
1588 px _EXC_FLAGS_PARAM
1589 _EXC_MASKS_PARAM
1590 _EXC_INFO_PARAM);
b2a00c89 1591 extern void bid128_round_integral_zero (UINT128 * pres,
200359e8
L
1592 UINT128 *
1593 px _EXC_FLAGS_PARAM
1594 _EXC_MASKS_PARAM
1595 _EXC_INFO_PARAM);
b2a00c89 1596 extern void bid128_round_integral_nearest_away (UINT128 * pres,
200359e8
L
1597 UINT128 *
1598 px _EXC_FLAGS_PARAM
1599 _EXC_MASKS_PARAM
1600 _EXC_INFO_PARAM);
1601
b2a00c89 1602 extern void bid64_nextup (UINT64 * pres, UINT64 * px
200359e8
L
1603 _EXC_FLAGS_PARAM _EXC_MASKS_PARAM
1604 _EXC_INFO_PARAM);
b2a00c89 1605 extern void bid64_nextdown (UINT64 * pres,
200359e8
L
1606 UINT64 *
1607 px _EXC_FLAGS_PARAM _EXC_MASKS_PARAM
1608 _EXC_INFO_PARAM);
b2a00c89 1609 extern void bid64_nextafter (UINT64 * pres, UINT64 * px,
200359e8
L
1610 UINT64 *
1611 py _EXC_FLAGS_PARAM _EXC_MASKS_PARAM
1612 _EXC_INFO_PARAM);
1613
b2a00c89 1614 extern void bid128_nextup (UINT128 * pres, UINT128 * px
200359e8
L
1615 _EXC_FLAGS_PARAM _EXC_MASKS_PARAM
1616 _EXC_INFO_PARAM);
b2a00c89 1617 extern void bid128_nextdown (UINT128 * pres,
200359e8
L
1618 UINT128 *
1619 px _EXC_FLAGS_PARAM _EXC_MASKS_PARAM
1620 _EXC_INFO_PARAM);
b2a00c89 1621 extern void bid128_nextafter (UINT128 * pres, UINT128 * px,
200359e8
L
1622 UINT128 *
1623 py _EXC_FLAGS_PARAM _EXC_MASKS_PARAM
1624 _EXC_INFO_PARAM);
1625
b2a00c89
L
1626 extern void bid64_minnum (UINT64 * pres, UINT64 * px, UINT64 * py
1627 _EXC_FLAGS_PARAM);
1628 extern void bid64_minnum_mag (UINT64 * pres, UINT64 * px,
1629 UINT64 * py _EXC_FLAGS_PARAM);
1630 extern void bid64_maxnum (UINT64 * pres, UINT64 * px, UINT64 * py
1631 _EXC_FLAGS_PARAM);
1632 extern void bid64_maxnum_mag (UINT64 * pres, UINT64 * px,
1633 UINT64 * py _EXC_FLAGS_PARAM);
1634
1635 extern void bid128_minnum (UINT128 * pres, UINT128 * px,
1636 UINT128 * py _EXC_FLAGS_PARAM);
1637 extern void bid128_minnum_mag (UINT128 * pres, UINT128 * px,
1638 UINT128 * py _EXC_FLAGS_PARAM);
1639 extern void bid128_maxnum (UINT128 * pres, UINT128 * px,
1640 UINT128 * py _EXC_FLAGS_PARAM);
1641 extern void bid128_maxnum_mag (UINT128 * pres, UINT128 * px,
1642 UINT128 * py _EXC_FLAGS_PARAM);
1643
1644 extern void bid64_from_int32 (UINT64 * pres, int *px
200359e8 1645 _EXC_MASKS_PARAM _EXC_INFO_PARAM);
b2a00c89 1646 extern void bid64_from_uint32 (UINT64 * pres, unsigned int *px
200359e8 1647 _EXC_MASKS_PARAM _EXC_INFO_PARAM);
b2a00c89 1648 extern void bid64_from_int64 (UINT64 * pres, SINT64 * px
200359e8
L
1649 _RND_MODE_PARAM _EXC_FLAGS_PARAM
1650 _EXC_MASKS_PARAM _EXC_INFO_PARAM);
b2a00c89 1651 extern void bid64_from_uint64 (UINT64 * pres,
200359e8
L
1652 UINT64 *
1653 px _RND_MODE_PARAM _EXC_FLAGS_PARAM
1654 _EXC_MASKS_PARAM _EXC_INFO_PARAM);
b2a00c89 1655 extern void bid128_from_int32 (UINT128 * pres,
200359e8
L
1656 int *px _EXC_MASKS_PARAM
1657 _EXC_INFO_PARAM);
b2a00c89 1658 extern void bid128_from_uint32 (UINT128 * pres,
200359e8
L
1659 unsigned int *px _EXC_MASKS_PARAM
1660 _EXC_INFO_PARAM);
b2a00c89 1661 extern void bid128_from_int64 (UINT128 * pres,
200359e8
L
1662 SINT64 *
1663 px _EXC_MASKS_PARAM
1664 _EXC_INFO_PARAM);
b2a00c89 1665 extern void bid128_from_uint64 (UINT128 * pres,
200359e8
L
1666 UINT64 *
1667 px _EXC_MASKS_PARAM
1668 _EXC_INFO_PARAM);
1669
b2a00c89 1670 extern void bid64_isSigned (int *pres, UINT64 * px
200359e8 1671 _EXC_MASKS_PARAM _EXC_INFO_PARAM);
b2a00c89 1672 extern void bid64_isNormal (int *pres, UINT64 * px
200359e8 1673 _EXC_MASKS_PARAM _EXC_INFO_PARAM);
b2a00c89 1674 extern void bid64_isSubnormal (int *pres, UINT64 * px
200359e8 1675 _EXC_MASKS_PARAM _EXC_INFO_PARAM);
b2a00c89 1676 extern void bid64_isFinite (int *pres, UINT64 * px
200359e8 1677 _EXC_MASKS_PARAM _EXC_INFO_PARAM);
b2a00c89 1678 extern void bid64_isZero (int *pres, UINT64 * px
200359e8 1679 _EXC_MASKS_PARAM _EXC_INFO_PARAM);
b2a00c89 1680 extern void bid64_isInf (int *pres, UINT64 * px
200359e8 1681 _EXC_MASKS_PARAM _EXC_INFO_PARAM);
b2a00c89 1682 extern void bid64_isSignaling (int *pres, UINT64 * px
200359e8 1683 _EXC_MASKS_PARAM _EXC_INFO_PARAM);
b2a00c89 1684 extern void bid64_isCanonical (int *pres, UINT64 * px
200359e8 1685 _EXC_MASKS_PARAM _EXC_INFO_PARAM);
b2a00c89 1686 extern void bid64_isNaN (int *pres, UINT64 * px
200359e8 1687 _EXC_MASKS_PARAM _EXC_INFO_PARAM);
b2a00c89 1688 extern void bid64_copy (UINT64 * pres, UINT64 * px
200359e8 1689 _EXC_MASKS_PARAM _EXC_INFO_PARAM);
b2a00c89 1690 extern void bid64_negate (UINT64 * pres, UINT64 * px
200359e8 1691 _EXC_MASKS_PARAM _EXC_INFO_PARAM);
b2a00c89 1692 extern void bid64_abs (UINT64 * pres, UINT64 * px
200359e8 1693 _EXC_MASKS_PARAM _EXC_INFO_PARAM);
b2a00c89 1694 extern void bid64_copySign (UINT64 * pres, UINT64 * px, UINT64 * py
200359e8 1695 _EXC_MASKS_PARAM _EXC_INFO_PARAM);
b2a00c89 1696 extern void bid64_class (int *pres, UINT64 * px
200359e8 1697 _EXC_MASKS_PARAM _EXC_INFO_PARAM);
b2a00c89 1698 extern void bid64_sameQuantum (int *pres, UINT64 * px, UINT64 * py
200359e8 1699 _EXC_MASKS_PARAM _EXC_INFO_PARAM);
b2a00c89 1700 extern void bid64_totalOrder (int *pres, UINT64 * px, UINT64 * py
200359e8 1701 _EXC_MASKS_PARAM _EXC_INFO_PARAM);
b2a00c89 1702 extern void bid64_totalOrderMag (int *pres, UINT64 * px,
200359e8
L
1703 UINT64 *
1704 py _EXC_MASKS_PARAM
1705 _EXC_INFO_PARAM);
b2a00c89 1706 extern void bid64_radix (int *pres,
200359e8
L
1707 UINT64 *
1708 px _EXC_MASKS_PARAM _EXC_INFO_PARAM);
1709
b2a00c89 1710 extern void bid128_isSigned (int *pres, UINT128 * px
200359e8 1711 _EXC_MASKS_PARAM _EXC_INFO_PARAM);
b2a00c89 1712 extern void bid128_isNormal (int *pres, UINT128 * px
200359e8 1713 _EXC_MASKS_PARAM _EXC_INFO_PARAM);
b2a00c89 1714 extern void bid128_isSubnormal (int *pres, UINT128 * px
200359e8 1715 _EXC_MASKS_PARAM _EXC_INFO_PARAM);
b2a00c89 1716 extern void bid128_isFinite (int *pres, UINT128 * px
200359e8 1717 _EXC_MASKS_PARAM _EXC_INFO_PARAM);
b2a00c89 1718 extern void bid128_isZero (int *pres, UINT128 * px
200359e8 1719 _EXC_MASKS_PARAM _EXC_INFO_PARAM);
b2a00c89 1720 extern void bid128_isInf (int *pres, UINT128 * px
200359e8 1721 _EXC_MASKS_PARAM _EXC_INFO_PARAM);
b2a00c89 1722 extern void bid128_isSignaling (int *pres, UINT128 * px
200359e8 1723 _EXC_MASKS_PARAM _EXC_INFO_PARAM);
b2a00c89 1724 extern void bid128_isCanonical (int *pres, UINT128 * px
200359e8 1725 _EXC_MASKS_PARAM _EXC_INFO_PARAM);
b2a00c89 1726 extern void bid128_isNaN (int *pres, UINT128 * px
200359e8 1727 _EXC_MASKS_PARAM _EXC_INFO_PARAM);
b2a00c89 1728 extern void bid128_copy (UINT128 * pres, UINT128 * px
200359e8 1729 _EXC_MASKS_PARAM _EXC_INFO_PARAM);
b2a00c89 1730 extern void bid128_negate (UINT128 * pres, UINT128 * px
200359e8 1731 _EXC_MASKS_PARAM _EXC_INFO_PARAM);
b2a00c89 1732 extern void bid128_abs (UINT128 * pres, UINT128 * px
200359e8 1733 _EXC_MASKS_PARAM _EXC_INFO_PARAM);
b2a00c89 1734 extern void bid128_copySign (UINT128 * pres, UINT128 * px,
200359e8
L
1735 UINT128 *
1736 py _EXC_MASKS_PARAM _EXC_INFO_PARAM);
b2a00c89 1737 extern void bid128_class (int *pres,
200359e8
L
1738 UINT128 *
1739 px _EXC_MASKS_PARAM _EXC_INFO_PARAM);
b2a00c89 1740 extern void bid128_sameQuantum (int *pres, UINT128 * px,
200359e8
L
1741 UINT128 *
1742 py _EXC_MASKS_PARAM
1743 _EXC_INFO_PARAM);
b2a00c89 1744 extern void bid128_totalOrder (int *pres, UINT128 * px,
200359e8
L
1745 UINT128 *
1746 py _EXC_MASKS_PARAM
1747 _EXC_INFO_PARAM);
b2a00c89 1748 extern void bid128_totalOrderMag (int *pres, UINT128 * px,
200359e8
L
1749 UINT128 *
1750 py _EXC_MASKS_PARAM
1751 _EXC_INFO_PARAM);
b2a00c89 1752 extern void bid128_radix (int *pres,
200359e8
L
1753 UINT128 *
1754 px _EXC_MASKS_PARAM _EXC_INFO_PARAM);
1755
b2a00c89
L
1756 extern void bid64_rem (UINT64 * pres, UINT64 * px, UINT64 * py
1757 _EXC_FLAGS_PARAM
200359e8 1758 _EXC_MASKS_PARAM _EXC_INFO_PARAM);
b2a00c89
L
1759 extern void bid64_logb (int * pres, UINT64 * px
1760 _EXC_FLAGS_PARAM _EXC_MASKS_PARAM
1761 _EXC_INFO_PARAM);
1762 extern void bid64_scalb (UINT64 * pres, UINT64 * px,
200359e8
L
1763 int *pn _RND_MODE_PARAM _EXC_FLAGS_PARAM
1764 _EXC_MASKS_PARAM _EXC_INFO_PARAM);
1765
b2a00c89
L
1766 extern void bid128_rem (UINT128 * pres, UINT128 * px, UINT128 * py
1767 _EXC_FLAGS_PARAM
200359e8 1768 _EXC_MASKS_PARAM _EXC_INFO_PARAM);
b2a00c89
L
1769 extern void bid128_logb (int * pres, UINT128 * px
1770 _EXC_FLAGS_PARAM
200359e8 1771 _EXC_MASKS_PARAM _EXC_INFO_PARAM);
b2a00c89 1772 extern void bid128_scalb (UINT128 * pres, UINT128 * px,
200359e8
L
1773 int *pn _RND_MODE_PARAM _EXC_FLAGS_PARAM
1774 _EXC_MASKS_PARAM _EXC_INFO_PARAM);
1775
b2a00c89
L
1776 extern void bid32_to_bid64 (UINT64 * pres,
1777 UINT32 *
1778 px _EXC_FLAGS_PARAM _EXC_MASKS_PARAM
1779 _EXC_INFO_PARAM);
1780 extern void bid32_to_bid128 (UINT128 * pres,
1781 UINT32 *
1782 px _EXC_FLAGS_PARAM _EXC_MASKS_PARAM
1783 _EXC_INFO_PARAM);
1784 extern void bid64_to_bid128 (UINT128 * pres,
1785 UINT64 *
1786 px _EXC_FLAGS_PARAM _EXC_MASKS_PARAM
1787 _EXC_INFO_PARAM);
1788 extern void bid64_to_bid32 (UINT32 * pres,
1789 UINT64 *
1790 px _RND_MODE_PARAM _EXC_FLAGS_PARAM
200359e8 1791 _EXC_MASKS_PARAM _EXC_INFO_PARAM);
b2a00c89 1792 extern void bid128_to_bid32 (UINT32 * pres,
200359e8
L
1793 UINT128 *
1794 px _RND_MODE_PARAM _EXC_FLAGS_PARAM
1795 _EXC_MASKS_PARAM _EXC_INFO_PARAM);
b2a00c89 1796 extern void bid128_to_bid64 (UINT64 * pres,
200359e8
L
1797 UINT128 *
1798 px _RND_MODE_PARAM _EXC_FLAGS_PARAM
1799 _EXC_MASKS_PARAM _EXC_INFO_PARAM);
1800
b2a00c89 1801 extern void bid64_from_string (UINT64 * pres, char *ps
200359e8
L
1802 _RND_MODE_PARAM _EXC_FLAGS_PARAM
1803 _EXC_MASKS_PARAM _EXC_INFO_PARAM);
b2a00c89
L
1804 extern void bid64_to_string (char *ps, UINT64 * px
1805 _EXC_FLAGS_PARAM
200359e8 1806 _EXC_MASKS_PARAM _EXC_INFO_PARAM);
b2a00c89
L
1807 extern void bid128_from_string (UINT128 * pres, char *ps
1808 _RND_MODE_PARAM _EXC_FLAGS_PARAM
1809 _EXC_MASKS_PARAM _EXC_INFO_PARAM);
1810 extern void bid128_to_string (char *str, UINT128 * px
1811 _EXC_FLAGS_PARAM
200359e8
L
1812 _EXC_MASKS_PARAM _EXC_INFO_PARAM);
1813
b2a00c89 1814 extern void bid64_quantize (UINT64 * pres, UINT64 * px,
200359e8
L
1815 UINT64 *
1816 py _RND_MODE_PARAM _EXC_FLAGS_PARAM
1817 _EXC_MASKS_PARAM _EXC_INFO_PARAM);
1818
b2a00c89 1819 extern void bid128_quantize (UINT128 * pres, UINT128 * px,
200359e8
L
1820 UINT128 *
1821 py _RND_MODE_PARAM _EXC_FLAGS_PARAM
1822 _EXC_MASKS_PARAM _EXC_INFO_PARAM);
1823
b2a00c89 1824 extern void bid128_to_binary32 (float *pres, UINT128 * px
200359e8
L
1825 _RND_MODE_PARAM _EXC_FLAGS_PARAM
1826 _EXC_MASKS_PARAM _EXC_INFO_PARAM);
1827
b2a00c89 1828 extern void bid128_to_binary64 (double *pres, UINT128 * px
200359e8
L
1829 _RND_MODE_PARAM _EXC_FLAGS_PARAM
1830 _EXC_MASKS_PARAM _EXC_INFO_PARAM);
1831
b2a00c89 1832 extern void bid128_to_binary80 (BINARY80 * pres, UINT128 * px
200359e8
L
1833 _RND_MODE_PARAM _EXC_FLAGS_PARAM
1834 _EXC_MASKS_PARAM _EXC_INFO_PARAM);
1835
b2a00c89 1836 extern void bid128_to_binary128 (BINARY128 * pres, UINT128 * px
200359e8
L
1837 _RND_MODE_PARAM _EXC_FLAGS_PARAM
1838 _EXC_MASKS_PARAM _EXC_INFO_PARAM);
1839
b2a00c89 1840 extern void binary128_to_bid32 (UINT32 * pres, BINARY128 * px
200359e8
L
1841 _RND_MODE_PARAM _EXC_FLAGS_PARAM
1842 _EXC_MASKS_PARAM _EXC_INFO_PARAM);
1843
b2a00c89 1844 extern void binary128_to_bid64 (UINT64 * pres, BINARY128 * px
200359e8
L
1845 _RND_MODE_PARAM _EXC_FLAGS_PARAM
1846 _EXC_MASKS_PARAM _EXC_INFO_PARAM);
1847
b2a00c89 1848 extern void binary128_to_bid128 (UINT128 * pres, BINARY128 * px
200359e8
L
1849 _RND_MODE_PARAM _EXC_FLAGS_PARAM
1850 _EXC_MASKS_PARAM _EXC_INFO_PARAM);
1851
b2a00c89 1852 extern void bid64_to_binary32 (float *pres, UINT64 * px
200359e8
L
1853 _RND_MODE_PARAM _EXC_FLAGS_PARAM
1854 _EXC_MASKS_PARAM _EXC_INFO_PARAM);
1855
b2a00c89 1856 extern void bid64_to_binary64 (double *pres, UINT64 * px
200359e8
L
1857 _RND_MODE_PARAM _EXC_FLAGS_PARAM
1858 _EXC_MASKS_PARAM _EXC_INFO_PARAM);
1859
b2a00c89 1860 extern void bid64_to_binary80 (BINARY80 * pres, UINT64 * px
200359e8
L
1861 _RND_MODE_PARAM _EXC_FLAGS_PARAM
1862 _EXC_MASKS_PARAM _EXC_INFO_PARAM);
1863
b2a00c89 1864 extern void bid64_to_binary128 (BINARY128 * pres, UINT64 * px
200359e8
L
1865 _RND_MODE_PARAM _EXC_FLAGS_PARAM
1866 _EXC_MASKS_PARAM _EXC_INFO_PARAM);
1867
b2a00c89 1868 extern void binary64_to_bid32 (UINT32 * pres, double *px
200359e8
L
1869 _RND_MODE_PARAM _EXC_FLAGS_PARAM
1870 _EXC_MASKS_PARAM _EXC_INFO_PARAM);
1871
b2a00c89 1872 extern void binary64_to_bid64 (UINT64 * pres, double *px
200359e8
L
1873 _RND_MODE_PARAM _EXC_FLAGS_PARAM
1874 _EXC_MASKS_PARAM _EXC_INFO_PARAM);
1875
b2a00c89 1876 extern void binary64_to_bid128 (UINT128 * pres, double *px
200359e8
L
1877 _RND_MODE_PARAM _EXC_FLAGS_PARAM
1878 _EXC_MASKS_PARAM _EXC_INFO_PARAM);
1879
b2a00c89 1880 extern void bid32_to_binary32 (float *pres, UINT32 * px
200359e8
L
1881 _RND_MODE_PARAM _EXC_FLAGS_PARAM
1882 _EXC_MASKS_PARAM _EXC_INFO_PARAM);
1883
b2a00c89 1884 extern void bid32_to_binary64 (double *pres, UINT32 * px
200359e8
L
1885 _RND_MODE_PARAM _EXC_FLAGS_PARAM
1886 _EXC_MASKS_PARAM _EXC_INFO_PARAM);
1887
b2a00c89 1888 extern void bid32_to_binary80 (BINARY80 * pres, UINT32 * px
200359e8
L
1889 _RND_MODE_PARAM _EXC_FLAGS_PARAM
1890 _EXC_MASKS_PARAM _EXC_INFO_PARAM);
1891
b2a00c89 1892 extern void bid32_to_binary128 (BINARY128 * pres, UINT32 * px
200359e8
L
1893 _RND_MODE_PARAM _EXC_FLAGS_PARAM
1894 _EXC_MASKS_PARAM _EXC_INFO_PARAM);
1895
b2a00c89 1896 extern void binary32_to_bid32 (UINT32 * pres, float *px
200359e8
L
1897 _RND_MODE_PARAM _EXC_FLAGS_PARAM
1898 _EXC_MASKS_PARAM _EXC_INFO_PARAM);
1899
b2a00c89 1900 extern void binary32_to_bid64 (UINT64 * pres, float *px
200359e8
L
1901 _RND_MODE_PARAM _EXC_FLAGS_PARAM
1902 _EXC_MASKS_PARAM _EXC_INFO_PARAM);
1903
b2a00c89 1904 extern void binary32_to_bid128 (UINT128 * pres, float *px
200359e8
L
1905 _RND_MODE_PARAM _EXC_FLAGS_PARAM
1906 _EXC_MASKS_PARAM _EXC_INFO_PARAM);
1907
b2a00c89 1908 extern void binary80_to_bid32 (UINT32 * pres, BINARY80 * px
200359e8
L
1909 _RND_MODE_PARAM _EXC_FLAGS_PARAM
1910 _EXC_MASKS_PARAM _EXC_INFO_PARAM);
1911
b2a00c89 1912 extern void binary80_to_bid64 (UINT64 * pres, BINARY80 * px
200359e8
L
1913 _RND_MODE_PARAM _EXC_FLAGS_PARAM
1914 _EXC_MASKS_PARAM _EXC_INFO_PARAM);
1915
b2a00c89 1916 extern void binary80_to_bid128 (UINT128 * pres, BINARY80 * px
200359e8
L
1917 _RND_MODE_PARAM _EXC_FLAGS_PARAM
1918 _EXC_MASKS_PARAM _EXC_INFO_PARAM);
1919
b2a00c89 1920 extern void is754 (int *retval);
200359e8 1921
b2a00c89 1922 extern void is754R (int *retval);
200359e8 1923
b2a00c89
L
1924 extern void signalException (_IDEC_flags *
1925 pflagsmask _EXC_FLAGS_PARAM);
200359e8 1926
b2a00c89
L
1927 extern void lowerFlags (_IDEC_flags * pflagsmask _EXC_FLAGS_PARAM);
1928
1929 extern void testFlags (_IDEC_flags * praised,
200359e8
L
1930 _IDEC_flags * pflagsmask _EXC_FLAGS_PARAM);
1931
b2a00c89 1932 extern void testSavedFlags (_IDEC_flags * praised,
200359e8
L
1933 _IDEC_flags * psavedflags,
1934 _IDEC_flags * pflagsmask);
1935
b2a00c89 1936 extern void restoreFlags (_IDEC_flags * pflagsvalues,
200359e8
L
1937 _IDEC_flags *
1938 pflagsmask _EXC_FLAGS_PARAM);
1939
b2a00c89 1940 extern void saveFlags (_IDEC_flags * pflagsvalues,
200359e8
L
1941 _IDEC_flags * pflagsmask _EXC_FLAGS_PARAM);
1942
b2a00c89 1943 void getDecimalRoundingDirection (_IDEC_round *
200359e8
L
1944 rounding_mode _RND_MODE_PARAM);
1945
b2a00c89 1946 void setDecimalRoundingDirection (_IDEC_round *
200359e8
L
1947 rounding_mode _RND_MODE_PARAM);
1948
1949#else
1950
b2a00c89
L
1951 extern UINT32 bid_to_dpd32 (UINT32 px);
1952 extern UINT64 bid_to_dpd64 (UINT64 px);
1953 extern UINT128 bid_to_dpd128 (UINT128 px);
1954 extern UINT32 dpd_to_bid32 (UINT32 px);
1955 extern UINT64 dpd_to_bid64 (UINT64 px);
1956 extern UINT128 dpd_to_bid128 (UINT128 px);
200359e8 1957
b2a00c89 1958 extern UINT128 bid128dd_add (UINT64 x, UINT64 y
200359e8
L
1959 _RND_MODE_PARAM _EXC_FLAGS_PARAM
1960 _EXC_MASKS_PARAM _EXC_INFO_PARAM);
b2a00c89
L
1961 extern UINT128 bid128dq_add (UINT64 x, UINT128 y
1962 _RND_MODE_PARAM _EXC_FLAGS_PARAM
1963 _EXC_MASKS_PARAM _EXC_INFO_PARAM);
1964 extern UINT128 bid128qd_add (UINT128 x, UINT64 y
1965 _RND_MODE_PARAM _EXC_FLAGS_PARAM
1966 _EXC_MASKS_PARAM _EXC_INFO_PARAM);
1967 extern UINT128 bid128_add (UINT128 x, UINT128 y
1968 _RND_MODE_PARAM _EXC_FLAGS_PARAM
1969 _EXC_MASKS_PARAM _EXC_INFO_PARAM);
1970 extern UINT128 bid128dd_sub (UINT64 x, UINT64 y
1971 _RND_MODE_PARAM _EXC_FLAGS_PARAM
1972 _EXC_MASKS_PARAM _EXC_INFO_PARAM);
1973 extern UINT128 bid128dq_sub (UINT64 x, UINT128 y
1974 _RND_MODE_PARAM _EXC_FLAGS_PARAM
1975 _EXC_MASKS_PARAM _EXC_INFO_PARAM);
1976 extern UINT128 bid128qd_sub (UINT128 x, UINT64 y
1977 _RND_MODE_PARAM _EXC_FLAGS_PARAM
1978 _EXC_MASKS_PARAM _EXC_INFO_PARAM);
1979 extern UINT128 bid128_sub (UINT128 x,
1980 UINT128 y _RND_MODE_PARAM
1981 _EXC_FLAGS_PARAM _EXC_MASKS_PARAM
1982 _EXC_INFO_PARAM);
1983 extern UINT128 bid128dd_mul (UINT64 x, UINT64 y
1984 _RND_MODE_PARAM _EXC_FLAGS_PARAM
1985 _EXC_MASKS_PARAM _EXC_INFO_PARAM);
1986 extern UINT128 bid128dq_mul (UINT64 x, UINT128 y
1987 _RND_MODE_PARAM _EXC_FLAGS_PARAM
1988 _EXC_MASKS_PARAM _EXC_INFO_PARAM);
1989 extern UINT128 bid128qd_mul (UINT128 x, UINT64 y
1990 _RND_MODE_PARAM _EXC_FLAGS_PARAM
1991 _EXC_MASKS_PARAM _EXC_INFO_PARAM);
1992 extern UINT128 bid128_mul (UINT128 x, UINT128 y
1993 _RND_MODE_PARAM _EXC_FLAGS_PARAM
1994 _EXC_MASKS_PARAM _EXC_INFO_PARAM);
1995 extern UINT128 bid128_div (UINT128 x,
1996 UINT128 y _RND_MODE_PARAM
1997 _EXC_FLAGS_PARAM _EXC_MASKS_PARAM
1998 _EXC_INFO_PARAM);
1999 extern UINT128 bid128dd_div (UINT64 x, UINT64 y
2000 _RND_MODE_PARAM _EXC_FLAGS_PARAM
2001 _EXC_MASKS_PARAM _EXC_INFO_PARAM);
2002 extern UINT128 bid128dq_div (UINT64 x, UINT128 y
2003 _RND_MODE_PARAM _EXC_FLAGS_PARAM
2004 _EXC_MASKS_PARAM _EXC_INFO_PARAM);
2005 extern UINT128 bid128qd_div (UINT128 x, UINT64 y
2006 _RND_MODE_PARAM _EXC_FLAGS_PARAM
2007 _EXC_MASKS_PARAM _EXC_INFO_PARAM);
2008 extern UINT128 bid128_fma (UINT128 x, UINT128 y, UINT128 z
2009 _RND_MODE_PARAM _EXC_FLAGS_PARAM
2010 _EXC_MASKS_PARAM _EXC_INFO_PARAM);
2011 extern UINT128 bid128ddd_fma (UINT64 x, UINT64 y, UINT64 z
2012 _RND_MODE_PARAM _EXC_FLAGS_PARAM
2013 _EXC_MASKS_PARAM _EXC_INFO_PARAM);
2014 extern UINT128 bid128ddq_fma (UINT64 x, UINT64 y, UINT128 z
2015 _RND_MODE_PARAM _EXC_FLAGS_PARAM
2016 _EXC_MASKS_PARAM _EXC_INFO_PARAM);
2017 extern UINT128 bid128dqd_fma (UINT64 x, UINT128 y, UINT64 z
2018 _RND_MODE_PARAM _EXC_FLAGS_PARAM
2019 _EXC_MASKS_PARAM _EXC_INFO_PARAM);
2020 extern UINT128 bid128dqq_fma (UINT64 x, UINT128 y,
2021 UINT128 z
2022 _RND_MODE_PARAM _EXC_FLAGS_PARAM
2023 _EXC_MASKS_PARAM _EXC_INFO_PARAM);
2024 extern UINT128 bid128qdd_fma (UINT128 x, UINT64 y, UINT64 z
2025 _RND_MODE_PARAM _EXC_FLAGS_PARAM
2026 _EXC_MASKS_PARAM _EXC_INFO_PARAM);
2027 extern UINT128 bid128qdq_fma (UINT128 x, UINT64 y,
2028 UINT128 z
2029 _RND_MODE_PARAM _EXC_FLAGS_PARAM
2030 _EXC_MASKS_PARAM _EXC_INFO_PARAM);
2031 extern UINT128 bid128qqd_fma (UINT128 x, UINT128 y,
2032 UINT64 z
2033 _RND_MODE_PARAM _EXC_FLAGS_PARAM
2034 _EXC_MASKS_PARAM _EXC_INFO_PARAM);
2035 // Note: bid128qqq_fma is represented by bid128_fma
2036 // Note: bid64ddd_fma is represented by bid64_fma
2037 extern UINT64 bid64ddq_fma (UINT64 x, UINT64 y,
2038 UINT128 z
2039 _RND_MODE_PARAM _EXC_FLAGS_PARAM
2040 _EXC_MASKS_PARAM _EXC_INFO_PARAM);
2041 extern UINT64 bid64dqd_fma (UINT64 x, UINT128 y,
2042 UINT64 z
2043 _RND_MODE_PARAM _EXC_FLAGS_PARAM
2044 _EXC_MASKS_PARAM _EXC_INFO_PARAM);
2045 extern UINT64 bid64dqq_fma (UINT64 x, UINT128 y,
2046 UINT128 z
2047 _RND_MODE_PARAM _EXC_FLAGS_PARAM
2048 _EXC_MASKS_PARAM _EXC_INFO_PARAM);
2049 extern UINT64 bid64qdd_fma (UINT128 x, UINT64 y,
2050 UINT64 z
2051 _RND_MODE_PARAM _EXC_FLAGS_PARAM
2052 _EXC_MASKS_PARAM _EXC_INFO_PARAM);
2053 extern UINT64 bid64qdq_fma (UINT128 x, UINT64 y,
2054 UINT128 z
2055 _RND_MODE_PARAM _EXC_FLAGS_PARAM
2056 _EXC_MASKS_PARAM _EXC_INFO_PARAM);
2057 extern UINT64 bid64qqd_fma (UINT128 x, UINT128 y,
2058 UINT64 z
2059 _RND_MODE_PARAM _EXC_FLAGS_PARAM
2060 _EXC_MASKS_PARAM _EXC_INFO_PARAM);
2061 extern UINT64 bid64qqq_fma (UINT128 x, UINT128 y,
2062 UINT128 z
2063 _RND_MODE_PARAM _EXC_FLAGS_PARAM
2064 _EXC_MASKS_PARAM _EXC_INFO_PARAM);
200359e8 2065
b2a00c89
L
2066 extern UINT128 bid128_sqrt (UINT128 x _RND_MODE_PARAM
2067 _EXC_FLAGS_PARAM _EXC_MASKS_PARAM
2068 _EXC_INFO_PARAM);
2069 extern UINT128 bid128d_sqrt (UINT64 x
2070 _RND_MODE_PARAM _EXC_FLAGS_PARAM
2071 _EXC_MASKS_PARAM _EXC_INFO_PARAM);
2072
2073 extern UINT64 bid64_add (UINT64 x, UINT64 y
2074 _RND_MODE_PARAM _EXC_FLAGS_PARAM
2075 _EXC_MASKS_PARAM _EXC_INFO_PARAM);
2076 extern UINT64 bid64dq_add (UINT64 x, UINT128 y
2077 _RND_MODE_PARAM _EXC_FLAGS_PARAM
2078 _EXC_MASKS_PARAM _EXC_INFO_PARAM);
2079 extern UINT64 bid64qd_add (UINT128 x, UINT64 y
2080 _RND_MODE_PARAM _EXC_FLAGS_PARAM
2081 _EXC_MASKS_PARAM _EXC_INFO_PARAM);
2082 extern UINT64 bid64qq_add (UINT128 x, UINT128 y
2083 _RND_MODE_PARAM _EXC_FLAGS_PARAM
2084 _EXC_MASKS_PARAM _EXC_INFO_PARAM);
2085 extern UINT64 bid64_sub (UINT64 x,
2086 UINT64 y _RND_MODE_PARAM
2087 _EXC_FLAGS_PARAM _EXC_MASKS_PARAM
2088 _EXC_INFO_PARAM);
2089 extern UINT64 bid64dq_sub (UINT64 x, UINT128 y
2090 _RND_MODE_PARAM _EXC_FLAGS_PARAM
2091 _EXC_MASKS_PARAM _EXC_INFO_PARAM);
2092 extern UINT64 bid64qd_sub (UINT128 x, UINT64 y
2093 _RND_MODE_PARAM _EXC_FLAGS_PARAM
2094 _EXC_MASKS_PARAM _EXC_INFO_PARAM);
2095 extern UINT64 bid64qq_sub (UINT128 x, UINT128 y
2096 _RND_MODE_PARAM _EXC_FLAGS_PARAM
2097 _EXC_MASKS_PARAM _EXC_INFO_PARAM);
2098 extern UINT64 bid64_mul (UINT64 x, UINT64 y
2099 _RND_MODE_PARAM _EXC_FLAGS_PARAM
2100 _EXC_MASKS_PARAM _EXC_INFO_PARAM);
2101 extern UINT64 bid64dq_mul (UINT64 x, UINT128 y
2102 _RND_MODE_PARAM _EXC_FLAGS_PARAM
2103 _EXC_MASKS_PARAM _EXC_INFO_PARAM);
2104 extern UINT64 bid64qd_mul (UINT128 x, UINT64 y
2105 _RND_MODE_PARAM _EXC_FLAGS_PARAM
2106 _EXC_MASKS_PARAM _EXC_INFO_PARAM);
2107 extern UINT64 bid64qq_mul (UINT128 x, UINT128 y
2108 _RND_MODE_PARAM _EXC_FLAGS_PARAM
2109 _EXC_MASKS_PARAM _EXC_INFO_PARAM);
2110 extern UINT64 bid64_div (UINT64 x,
2111 UINT64 y _RND_MODE_PARAM
2112 _EXC_FLAGS_PARAM _EXC_MASKS_PARAM
2113 _EXC_INFO_PARAM);
2114 extern UINT64 bid64dq_div (UINT64 x, UINT128 y
2115 _RND_MODE_PARAM _EXC_FLAGS_PARAM
2116 _EXC_MASKS_PARAM _EXC_INFO_PARAM);
2117 extern UINT64 bid64qd_div (UINT128 x, UINT64 y
2118 _RND_MODE_PARAM _EXC_FLAGS_PARAM
2119 _EXC_MASKS_PARAM _EXC_INFO_PARAM);
2120 extern UINT64 bid64qq_div (UINT128 x, UINT128 y
2121 _RND_MODE_PARAM _EXC_FLAGS_PARAM
2122 _EXC_MASKS_PARAM _EXC_INFO_PARAM);
2123 extern UINT64 bid64_fma (UINT64 x, UINT64 y,
2124 UINT64 z _RND_MODE_PARAM
2125 _EXC_FLAGS_PARAM _EXC_MASKS_PARAM
2126 _EXC_INFO_PARAM);
2127 extern UINT64 bid64_sqrt (UINT64 x _RND_MODE_PARAM
2128 _EXC_FLAGS_PARAM _EXC_MASKS_PARAM
2129 _EXC_INFO_PARAM);
2130 extern UINT64 bid64q_sqrt (UINT128 x
2131 _RND_MODE_PARAM _EXC_FLAGS_PARAM
2132 _EXC_MASKS_PARAM _EXC_INFO_PARAM);
2133
2134 extern char bid128_to_int8_rnint (UINT128 x
2135 _EXC_FLAGS_PARAM
2136 _EXC_MASKS_PARAM
2137 _EXC_INFO_PARAM);
2138 extern char bid128_to_int8_xrnint (UINT128 x
2139 _EXC_FLAGS_PARAM
2140 _EXC_MASKS_PARAM
2141 _EXC_INFO_PARAM);
2142 extern char bid128_to_int8_rninta (UINT128 x
2143 _EXC_FLAGS_PARAM
2144 _EXC_MASKS_PARAM
2145 _EXC_INFO_PARAM);
2146 extern char bid128_to_int8_xrninta (UINT128 x
2147 _EXC_FLAGS_PARAM
2148 _EXC_MASKS_PARAM
2149 _EXC_INFO_PARAM);
2150 extern char bid128_to_int8_int (UINT128 x _EXC_FLAGS_PARAM
2151 _EXC_MASKS_PARAM _EXC_INFO_PARAM);
2152 extern char bid128_to_int8_xint (UINT128 x _EXC_FLAGS_PARAM
2153 _EXC_MASKS_PARAM _EXC_INFO_PARAM);
2154 extern char bid128_to_int8_floor (UINT128 x
2155 _EXC_FLAGS_PARAM
2156 _EXC_MASKS_PARAM
2157 _EXC_INFO_PARAM);
2158 extern char bid128_to_int8_xfloor (UINT128 x
2159 _EXC_FLAGS_PARAM
2160 _EXC_MASKS_PARAM
2161 _EXC_INFO_PARAM);
2162 extern char bid128_to_int8_ceil (UINT128 x _EXC_FLAGS_PARAM
2163 _EXC_MASKS_PARAM _EXC_INFO_PARAM);
2164 extern char bid128_to_int8_xceil (UINT128 x
2165 _EXC_FLAGS_PARAM
2166 _EXC_MASKS_PARAM
2167 _EXC_INFO_PARAM);
2168 extern short bid128_to_int16_rnint (UINT128 x
2169 _EXC_FLAGS_PARAM
2170 _EXC_MASKS_PARAM
2171 _EXC_INFO_PARAM);
2172 extern short bid128_to_int16_xrnint (UINT128 x
2173 _EXC_FLAGS_PARAM
2174 _EXC_MASKS_PARAM
2175 _EXC_INFO_PARAM);
2176 extern short bid128_to_int16_rninta (UINT128 x
2177 _EXC_FLAGS_PARAM
2178 _EXC_MASKS_PARAM
2179 _EXC_INFO_PARAM);
2180 extern short bid128_to_int16_xrninta (UINT128 x
2181 _EXC_FLAGS_PARAM
2182 _EXC_MASKS_PARAM
2183 _EXC_INFO_PARAM);
2184 extern short bid128_to_int16_int (UINT128 x _EXC_FLAGS_PARAM
2185 _EXC_MASKS_PARAM
2186 _EXC_INFO_PARAM);
2187 extern short bid128_to_int16_xint (UINT128 x _EXC_FLAGS_PARAM
2188 _EXC_MASKS_PARAM
2189 _EXC_INFO_PARAM);
2190 extern short bid128_to_int16_floor (UINT128 x
2191 _EXC_FLAGS_PARAM
2192 _EXC_MASKS_PARAM
2193 _EXC_INFO_PARAM);
2194 extern short bid128_to_int16_xfloor (UINT128 x
2195 _EXC_FLAGS_PARAM
2196 _EXC_MASKS_PARAM
2197 _EXC_INFO_PARAM);
2198 extern short bid128_to_int16_ceil (UINT128 x _EXC_FLAGS_PARAM
2199 _EXC_MASKS_PARAM
2200 _EXC_INFO_PARAM);
2201 extern short bid128_to_int16_xceil (UINT128 x
2202 _EXC_FLAGS_PARAM
2203 _EXC_MASKS_PARAM
2204 _EXC_INFO_PARAM);
2205 extern unsigned char bid128_to_uint8_rnint (UINT128 x
2206 _EXC_FLAGS_PARAM
2207 _EXC_MASKS_PARAM
2208 _EXC_INFO_PARAM);
2209 extern unsigned char bid128_to_uint8_xrnint (UINT128 x
2210 _EXC_FLAGS_PARAM
2211 _EXC_MASKS_PARAM
2212 _EXC_INFO_PARAM);
2213 extern unsigned char bid128_to_uint8_rninta (UINT128 x
2214 _EXC_FLAGS_PARAM
2215 _EXC_MASKS_PARAM
2216 _EXC_INFO_PARAM);
2217 extern unsigned char bid128_to_uint8_xrninta (UINT128 x
2218 _EXC_FLAGS_PARAM
2219 _EXC_MASKS_PARAM
2220 _EXC_INFO_PARAM);
2221 extern unsigned char bid128_to_uint8_int (UINT128 x
2222 _EXC_FLAGS_PARAM
2223 _EXC_MASKS_PARAM
2224 _EXC_INFO_PARAM);
2225 extern unsigned char bid128_to_uint8_xint (UINT128 x
2226 _EXC_FLAGS_PARAM
2227 _EXC_MASKS_PARAM
2228 _EXC_INFO_PARAM);
2229 extern unsigned char bid128_to_uint8_floor (UINT128 x
2230 _EXC_FLAGS_PARAM
2231 _EXC_MASKS_PARAM
2232 _EXC_INFO_PARAM);
2233 extern unsigned char bid128_to_uint8_xfloor (UINT128 x
2234 _EXC_FLAGS_PARAM
2235 _EXC_MASKS_PARAM
2236 _EXC_INFO_PARAM);
2237 extern unsigned char bid128_to_uint8_ceil (UINT128 x
2238 _EXC_FLAGS_PARAM
2239 _EXC_MASKS_PARAM
2240 _EXC_INFO_PARAM);
2241 extern unsigned char bid128_to_uint8_xceil (UINT128 x
2242 _EXC_FLAGS_PARAM
2243 _EXC_MASKS_PARAM
2244 _EXC_INFO_PARAM);
2245 extern unsigned short bid128_to_uint16_rnint (UINT128 x
2246 _EXC_FLAGS_PARAM
2247 _EXC_MASKS_PARAM
2248 _EXC_INFO_PARAM);
2249 extern unsigned short bid128_to_uint16_xrnint (UINT128 x
2250 _EXC_FLAGS_PARAM
2251 _EXC_MASKS_PARAM
2252 _EXC_INFO_PARAM);
2253 extern unsigned short bid128_to_uint16_rninta (UINT128 x
2254 _EXC_FLAGS_PARAM
2255 _EXC_MASKS_PARAM
2256 _EXC_INFO_PARAM);
2257 extern unsigned short bid128_to_uint16_xrninta (UINT128 x
2258 _EXC_FLAGS_PARAM
2259 _EXC_MASKS_PARAM
2260 _EXC_INFO_PARAM);
2261 extern unsigned short bid128_to_uint16_int (UINT128 x
2262 _EXC_FLAGS_PARAM
2263 _EXC_MASKS_PARAM
2264 _EXC_INFO_PARAM);
2265 extern unsigned short bid128_to_uint16_xint (UINT128 x
2266 _EXC_FLAGS_PARAM
2267 _EXC_MASKS_PARAM
2268 _EXC_INFO_PARAM);
2269 extern unsigned short bid128_to_uint16_floor (UINT128 x
2270 _EXC_FLAGS_PARAM
2271 _EXC_MASKS_PARAM
2272 _EXC_INFO_PARAM);
2273 extern unsigned short bid128_to_uint16_xfloor (UINT128 x
2274 _EXC_FLAGS_PARAM
2275 _EXC_MASKS_PARAM
2276 _EXC_INFO_PARAM);
2277 extern unsigned short bid128_to_uint16_ceil (UINT128 x
2278 _EXC_FLAGS_PARAM
2279 _EXC_MASKS_PARAM
2280 _EXC_INFO_PARAM);
2281 extern unsigned short bid128_to_uint16_xceil (UINT128 x
2282 _EXC_FLAGS_PARAM
2283 _EXC_MASKS_PARAM
2284 _EXC_INFO_PARAM);
2285 extern int bid128_to_int32_rnint (UINT128 x _EXC_FLAGS_PARAM
2286 _EXC_MASKS_PARAM
2287 _EXC_INFO_PARAM);
2288 extern int bid128_to_int32_xrnint (UINT128 x _EXC_FLAGS_PARAM
2289 _EXC_MASKS_PARAM
2290 _EXC_INFO_PARAM);
2291 extern int bid128_to_int32_rninta (UINT128 x _EXC_FLAGS_PARAM
2292 _EXC_MASKS_PARAM
2293 _EXC_INFO_PARAM);
2294 extern int bid128_to_int32_xrninta (UINT128 x _EXC_FLAGS_PARAM
2295 _EXC_MASKS_PARAM
2296 _EXC_INFO_PARAM);
2297 extern int bid128_to_int32_int (UINT128 x _EXC_FLAGS_PARAM
2298 _EXC_MASKS_PARAM _EXC_INFO_PARAM);
2299 extern int bid128_to_int32_xint (UINT128 x _EXC_FLAGS_PARAM
2300 _EXC_MASKS_PARAM _EXC_INFO_PARAM);
2301 extern int bid128_to_int32_floor (UINT128 x _EXC_FLAGS_PARAM
200359e8
L
2302 _EXC_MASKS_PARAM
2303 _EXC_INFO_PARAM);
b2a00c89 2304 extern int bid128_to_int32_xfloor (UINT128 x _EXC_FLAGS_PARAM
200359e8
L
2305 _EXC_MASKS_PARAM
2306 _EXC_INFO_PARAM);
b2a00c89
L
2307 extern int bid128_to_int32_ceil (UINT128 x _EXC_FLAGS_PARAM
2308 _EXC_MASKS_PARAM _EXC_INFO_PARAM);
2309 extern int bid128_to_int32_xceil (UINT128 x _EXC_FLAGS_PARAM
2310 _EXC_MASKS_PARAM
2311 _EXC_INFO_PARAM);
2312 extern unsigned int bid128_to_uint32_rnint (UINT128 x
2313 _EXC_FLAGS_PARAM
2314 _EXC_MASKS_PARAM
2315 _EXC_INFO_PARAM);
2316 extern unsigned int bid128_to_uint32_xrnint (UINT128 x
2317 _EXC_FLAGS_PARAM
2318 _EXC_MASKS_PARAM
2319 _EXC_INFO_PARAM);
2320 extern unsigned int bid128_to_uint32_rninta (UINT128 x
2321 _EXC_FLAGS_PARAM
2322 _EXC_MASKS_PARAM
2323 _EXC_INFO_PARAM);
2324 extern unsigned int bid128_to_uint32_xrninta (UINT128 x
2325 _EXC_FLAGS_PARAM
2326 _EXC_MASKS_PARAM
2327 _EXC_INFO_PARAM);
2328 extern unsigned int bid128_to_uint32_int (UINT128 x
2329 _EXC_FLAGS_PARAM
2330 _EXC_MASKS_PARAM
2331 _EXC_INFO_PARAM);
2332 extern unsigned int bid128_to_uint32_xint (UINT128 x
2333 _EXC_FLAGS_PARAM
2334 _EXC_MASKS_PARAM
2335 _EXC_INFO_PARAM);
2336 extern unsigned int bid128_to_uint32_floor (UINT128 x
2337 _EXC_FLAGS_PARAM
2338 _EXC_MASKS_PARAM
2339 _EXC_INFO_PARAM);
2340 extern unsigned int bid128_to_uint32_xfloor (UINT128 x
2341 _EXC_FLAGS_PARAM
2342 _EXC_MASKS_PARAM
2343 _EXC_INFO_PARAM);
2344 extern unsigned int bid128_to_uint32_ceil (UINT128 x
2345 _EXC_FLAGS_PARAM
2346 _EXC_MASKS_PARAM
2347 _EXC_INFO_PARAM);
2348 extern unsigned int bid128_to_uint32_xceil (UINT128 x
2349 _EXC_FLAGS_PARAM
2350 _EXC_MASKS_PARAM
2351 _EXC_INFO_PARAM);
2352 extern SINT64 bid128_to_int64_rnint (UINT128 x _EXC_FLAGS_PARAM
2353 _EXC_MASKS_PARAM
2354 _EXC_INFO_PARAM);
2355 extern SINT64 bid128_to_int64_xrnint (UINT128 x _EXC_FLAGS_PARAM
2356 _EXC_MASKS_PARAM
2357 _EXC_INFO_PARAM);
2358 extern SINT64 bid128_to_int64_rninta (UINT128 x _EXC_FLAGS_PARAM
2359 _EXC_MASKS_PARAM
2360 _EXC_INFO_PARAM);
2361 extern SINT64 bid128_to_int64_xrninta (UINT128 x _EXC_FLAGS_PARAM
2362 _EXC_MASKS_PARAM
2363 _EXC_INFO_PARAM);
2364 extern SINT64 bid128_to_int64_int (UINT128 x _EXC_FLAGS_PARAM
200359e8
L
2365 _EXC_MASKS_PARAM
2366 _EXC_INFO_PARAM);
b2a00c89
L
2367 extern SINT64 bid128_to_int64_xint (UINT128 x _EXC_FLAGS_PARAM
2368 _EXC_MASKS_PARAM
2369 _EXC_INFO_PARAM);
2370 extern SINT64 bid128_to_int64_floor (UINT128 x _EXC_FLAGS_PARAM
2371 _EXC_MASKS_PARAM
2372 _EXC_INFO_PARAM);
2373 extern SINT64 bid128_to_int64_xfloor (UINT128 x _EXC_FLAGS_PARAM
2374 _EXC_MASKS_PARAM
2375 _EXC_INFO_PARAM);
2376 extern SINT64 bid128_to_int64_ceil (UINT128 x _EXC_FLAGS_PARAM
200359e8
L
2377 _EXC_MASKS_PARAM
2378 _EXC_INFO_PARAM);
b2a00c89
L
2379 extern SINT64 bid128_to_int64_xceil (UINT128 x _EXC_FLAGS_PARAM
2380 _EXC_MASKS_PARAM
2381 _EXC_INFO_PARAM);
2382 extern UINT64 bid128_to_uint64_rnint (UINT128 x _EXC_FLAGS_PARAM
2383 _EXC_MASKS_PARAM
2384 _EXC_INFO_PARAM);
2385 extern UINT64 bid128_to_uint64_xrnint (UINT128 x _EXC_FLAGS_PARAM
2386 _EXC_MASKS_PARAM
2387 _EXC_INFO_PARAM);
2388 extern UINT64 bid128_to_uint64_rninta (UINT128 x _EXC_FLAGS_PARAM
2389 _EXC_MASKS_PARAM
2390 _EXC_INFO_PARAM);
2391 extern UINT64 bid128_to_uint64_xrninta (UINT128 x _EXC_FLAGS_PARAM
2392 _EXC_MASKS_PARAM
2393 _EXC_INFO_PARAM);
2394 extern UINT64 bid128_to_uint64_int (UINT128 x _EXC_FLAGS_PARAM
2395 _EXC_MASKS_PARAM
2396 _EXC_INFO_PARAM);
2397 extern UINT64 bid128_to_uint64_xint (UINT128 x _EXC_FLAGS_PARAM
2398 _EXC_MASKS_PARAM
2399 _EXC_INFO_PARAM);
2400 extern UINT64 bid128_to_uint64_floor (UINT128 x _EXC_FLAGS_PARAM
2401 _EXC_MASKS_PARAM
2402 _EXC_INFO_PARAM);
2403 extern UINT64 bid128_to_uint64_xfloor (UINT128 x _EXC_FLAGS_PARAM
2404 _EXC_MASKS_PARAM
2405 _EXC_INFO_PARAM);
2406 extern UINT64 bid128_to_uint64_ceil (UINT128 x _EXC_FLAGS_PARAM
2407 _EXC_MASKS_PARAM
2408 _EXC_INFO_PARAM);
2409 extern UINT64 bid128_to_uint64_xceil (UINT128 x _EXC_FLAGS_PARAM
2410 _EXC_MASKS_PARAM
2411 _EXC_INFO_PARAM);
2412 extern int bid64_to_int32_rnint (UINT64 x _EXC_FLAGS_PARAM
2413 _EXC_MASKS_PARAM _EXC_INFO_PARAM);
2414 extern int bid64_to_int32_xrnint (UINT64 x _EXC_FLAGS_PARAM
2415 _EXC_MASKS_PARAM
2416 _EXC_INFO_PARAM);
2417 extern int bid64_to_int32_rninta (UINT64 x _EXC_FLAGS_PARAM
2418 _EXC_MASKS_PARAM
2419 _EXC_INFO_PARAM);
2420 extern int bid64_to_int32_xrninta (UINT64 x _EXC_FLAGS_PARAM
2421 _EXC_MASKS_PARAM
2422 _EXC_INFO_PARAM);
2423 extern int bid64_to_int32_int (UINT64 x _EXC_FLAGS_PARAM
2424 _EXC_MASKS_PARAM _EXC_INFO_PARAM);
2425 extern int bid64_to_int32_xint (UINT64 x _EXC_FLAGS_PARAM
200359e8 2426 _EXC_MASKS_PARAM _EXC_INFO_PARAM);
b2a00c89 2427 extern int bid64_to_int32_floor (UINT64 x _EXC_FLAGS_PARAM
200359e8 2428 _EXC_MASKS_PARAM _EXC_INFO_PARAM);
b2a00c89 2429 extern int bid64_to_int32_xfloor (UINT64 x _EXC_FLAGS_PARAM
200359e8
L
2430 _EXC_MASKS_PARAM
2431 _EXC_INFO_PARAM);
b2a00c89
L
2432 extern int bid64_to_int32_ceil (UINT64 x _EXC_FLAGS_PARAM
2433 _EXC_MASKS_PARAM _EXC_INFO_PARAM);
2434 extern int bid64_to_int32_xceil (UINT64 x _EXC_FLAGS_PARAM
2435 _EXC_MASKS_PARAM _EXC_INFO_PARAM);
2436 extern char bid64_to_int8_rnint (UINT64 x _EXC_FLAGS_PARAM
2437 _EXC_MASKS_PARAM _EXC_INFO_PARAM);
2438 extern char bid64_to_int8_xrnint (UINT64 x _EXC_FLAGS_PARAM
2439 _EXC_MASKS_PARAM
2440 _EXC_INFO_PARAM);
2441 extern char bid64_to_int8_rninta (UINT64 x _EXC_FLAGS_PARAM
2442 _EXC_MASKS_PARAM
2443 _EXC_INFO_PARAM);
2444 extern char bid64_to_int8_xrninta (UINT64 x _EXC_FLAGS_PARAM
2445 _EXC_MASKS_PARAM
2446 _EXC_INFO_PARAM);
2447 extern char bid64_to_int8_int (UINT64 x _EXC_FLAGS_PARAM
2448 _EXC_MASKS_PARAM _EXC_INFO_PARAM);
2449 extern char bid64_to_int8_xint (UINT64 x _EXC_FLAGS_PARAM
2450 _EXC_MASKS_PARAM _EXC_INFO_PARAM);
2451 extern char bid64_to_int8_floor (UINT64 x _EXC_FLAGS_PARAM
2452 _EXC_MASKS_PARAM _EXC_INFO_PARAM);
2453 extern char bid64_to_int8_xfloor (UINT64 x _EXC_FLAGS_PARAM
2454 _EXC_MASKS_PARAM
2455 _EXC_INFO_PARAM);
2456 extern char bid64_to_int8_ceil (UINT64 x _EXC_FLAGS_PARAM
2457 _EXC_MASKS_PARAM _EXC_INFO_PARAM);
2458 extern char bid64_to_int8_xceil (UINT64 x _EXC_FLAGS_PARAM
2459 _EXC_MASKS_PARAM _EXC_INFO_PARAM);
2460 extern short bid64_to_int16_rnint (UINT64 x _EXC_FLAGS_PARAM
200359e8
L
2461 _EXC_MASKS_PARAM
2462 _EXC_INFO_PARAM);
b2a00c89
L
2463 extern short bid64_to_int16_xrnint (UINT64 x _EXC_FLAGS_PARAM
2464 _EXC_MASKS_PARAM
2465 _EXC_INFO_PARAM);
2466 extern short bid64_to_int16_rninta (UINT64 x _EXC_FLAGS_PARAM
2467 _EXC_MASKS_PARAM
2468 _EXC_INFO_PARAM);
2469 extern short bid64_to_int16_xrninta (UINT64 x _EXC_FLAGS_PARAM
2470 _EXC_MASKS_PARAM
2471 _EXC_INFO_PARAM);
2472 extern short bid64_to_int16_int (UINT64 x _EXC_FLAGS_PARAM
200359e8 2473 _EXC_MASKS_PARAM _EXC_INFO_PARAM);
b2a00c89 2474 extern short bid64_to_int16_xint (UINT64 x _EXC_FLAGS_PARAM
200359e8
L
2475 _EXC_MASKS_PARAM
2476 _EXC_INFO_PARAM);
b2a00c89
L
2477 extern short bid64_to_int16_floor (UINT64 x _EXC_FLAGS_PARAM
2478 _EXC_MASKS_PARAM
2479 _EXC_INFO_PARAM);
2480 extern short bid64_to_int16_xfloor (UINT64 x _EXC_FLAGS_PARAM
2481 _EXC_MASKS_PARAM
2482 _EXC_INFO_PARAM);
2483 extern short bid64_to_int16_ceil (UINT64 x _EXC_FLAGS_PARAM
2484 _EXC_MASKS_PARAM
2485 _EXC_INFO_PARAM);
2486 extern short bid64_to_int16_xceil (UINT64 x _EXC_FLAGS_PARAM
2487 _EXC_MASKS_PARAM
2488 _EXC_INFO_PARAM);
2489 extern unsigned char bid64_to_uint8_rnint (UINT64 x
2490 _EXC_FLAGS_PARAM
2491 _EXC_MASKS_PARAM
2492 _EXC_INFO_PARAM);
2493 extern unsigned char bid64_to_uint8_xrnint (UINT64 x
2494 _EXC_FLAGS_PARAM
2495 _EXC_MASKS_PARAM
2496 _EXC_INFO_PARAM);
2497 extern unsigned char bid64_to_uint8_rninta (UINT64 x
2498 _EXC_FLAGS_PARAM
2499 _EXC_MASKS_PARAM
2500 _EXC_INFO_PARAM);
2501 extern unsigned char bid64_to_uint8_xrninta (UINT64 x
2502 _EXC_FLAGS_PARAM
2503 _EXC_MASKS_PARAM
2504 _EXC_INFO_PARAM);
2505 extern unsigned char bid64_to_uint8_int (UINT64 x _EXC_FLAGS_PARAM
2506 _EXC_MASKS_PARAM
2507 _EXC_INFO_PARAM);
2508 extern unsigned char bid64_to_uint8_xint (UINT64 x _EXC_FLAGS_PARAM
2509 _EXC_MASKS_PARAM
2510 _EXC_INFO_PARAM);
2511 extern unsigned char bid64_to_uint8_floor (UINT64 x
2512 _EXC_FLAGS_PARAM
2513 _EXC_MASKS_PARAM
2514 _EXC_INFO_PARAM);
2515 extern unsigned char bid64_to_uint8_xfloor (UINT64 x
200359e8
L
2516 _EXC_FLAGS_PARAM
2517 _EXC_MASKS_PARAM
2518 _EXC_INFO_PARAM);
b2a00c89
L
2519 extern unsigned char bid64_to_uint8_ceil (UINT64 x _EXC_FLAGS_PARAM
2520 _EXC_MASKS_PARAM
2521 _EXC_INFO_PARAM);
2522 extern unsigned char bid64_to_uint8_xceil (UINT64 x
2523 _EXC_FLAGS_PARAM
2524 _EXC_MASKS_PARAM
2525 _EXC_INFO_PARAM);
2526 extern unsigned short bid64_to_uint16_rnint (UINT64 x
200359e8
L
2527 _EXC_FLAGS_PARAM
2528 _EXC_MASKS_PARAM
2529 _EXC_INFO_PARAM);
b2a00c89 2530 extern unsigned short bid64_to_uint16_xrnint (UINT64 x
200359e8
L
2531 _EXC_FLAGS_PARAM
2532 _EXC_MASKS_PARAM
2533 _EXC_INFO_PARAM);
b2a00c89
L
2534 extern unsigned short bid64_to_uint16_rninta (UINT64 x
2535 _EXC_FLAGS_PARAM
2536 _EXC_MASKS_PARAM
2537 _EXC_INFO_PARAM);
2538 extern unsigned short bid64_to_uint16_xrninta (UINT64 x
2539 _EXC_FLAGS_PARAM
2540 _EXC_MASKS_PARAM
2541 _EXC_INFO_PARAM);
2542 extern unsigned short bid64_to_uint16_int (UINT64 x
200359e8
L
2543 _EXC_FLAGS_PARAM
2544 _EXC_MASKS_PARAM
2545 _EXC_INFO_PARAM);
b2a00c89 2546 extern unsigned short bid64_to_uint16_xint (UINT64 x
200359e8
L
2547 _EXC_FLAGS_PARAM
2548 _EXC_MASKS_PARAM
2549 _EXC_INFO_PARAM);
b2a00c89 2550 extern unsigned short bid64_to_uint16_floor (UINT64 x
200359e8
L
2551 _EXC_FLAGS_PARAM
2552 _EXC_MASKS_PARAM
2553 _EXC_INFO_PARAM);
b2a00c89
L
2554 extern unsigned short bid64_to_uint16_xfloor (UINT64 x
2555 _EXC_FLAGS_PARAM
2556 _EXC_MASKS_PARAM
2557 _EXC_INFO_PARAM);
2558 extern unsigned short bid64_to_uint16_ceil (UINT64 x
200359e8
L
2559 _EXC_FLAGS_PARAM
2560 _EXC_MASKS_PARAM
2561 _EXC_INFO_PARAM);
b2a00c89
L
2562 extern unsigned short bid64_to_uint16_xceil (UINT64 x
2563 _EXC_FLAGS_PARAM
2564 _EXC_MASKS_PARAM
2565 _EXC_INFO_PARAM);
2566 extern unsigned int bid64_to_uint32_rnint (UINT64 x
200359e8
L
2567 _EXC_FLAGS_PARAM
2568 _EXC_MASKS_PARAM
2569 _EXC_INFO_PARAM);
b2a00c89 2570 extern unsigned int bid64_to_uint32_xrnint (UINT64 x
200359e8
L
2571 _EXC_FLAGS_PARAM
2572 _EXC_MASKS_PARAM
2573 _EXC_INFO_PARAM);
b2a00c89 2574 extern unsigned int bid64_to_uint32_rninta (UINT64 x
200359e8
L
2575 _EXC_FLAGS_PARAM
2576 _EXC_MASKS_PARAM
2577 _EXC_INFO_PARAM);
b2a00c89 2578 extern unsigned int bid64_to_uint32_xrninta (UINT64 x
200359e8
L
2579 _EXC_FLAGS_PARAM
2580 _EXC_MASKS_PARAM
2581 _EXC_INFO_PARAM);
b2a00c89 2582 extern unsigned int bid64_to_uint32_int (UINT64 x _EXC_FLAGS_PARAM
200359e8
L
2583 _EXC_MASKS_PARAM
2584 _EXC_INFO_PARAM);
b2a00c89 2585 extern unsigned int bid64_to_uint32_xint (UINT64 x _EXC_FLAGS_PARAM
200359e8
L
2586 _EXC_MASKS_PARAM
2587 _EXC_INFO_PARAM);
b2a00c89 2588 extern unsigned int bid64_to_uint32_floor (UINT64 x
200359e8
L
2589 _EXC_FLAGS_PARAM
2590 _EXC_MASKS_PARAM
2591 _EXC_INFO_PARAM);
b2a00c89 2592 extern unsigned int bid64_to_uint32_xfloor (UINT64 x
200359e8
L
2593 _EXC_FLAGS_PARAM
2594 _EXC_MASKS_PARAM
2595 _EXC_INFO_PARAM);
b2a00c89 2596 extern unsigned int bid64_to_uint32_ceil (UINT64 x _EXC_FLAGS_PARAM
200359e8
L
2597 _EXC_MASKS_PARAM
2598 _EXC_INFO_PARAM);
b2a00c89 2599 extern unsigned int bid64_to_uint32_xceil (UINT64 x
200359e8
L
2600 _EXC_FLAGS_PARAM
2601 _EXC_MASKS_PARAM
2602 _EXC_INFO_PARAM);
b2a00c89 2603 extern SINT64 bid64_to_int64_rnint (UINT64 x _EXC_FLAGS_PARAM
200359e8
L
2604 _EXC_MASKS_PARAM
2605 _EXC_INFO_PARAM);
b2a00c89 2606 extern SINT64 bid64_to_int64_xrnint (UINT64 x _EXC_FLAGS_PARAM
200359e8
L
2607 _EXC_MASKS_PARAM
2608 _EXC_INFO_PARAM);
b2a00c89 2609 extern SINT64 bid64_to_int64_rninta (UINT64 x _EXC_FLAGS_PARAM
200359e8
L
2610 _EXC_MASKS_PARAM
2611 _EXC_INFO_PARAM);
b2a00c89 2612 extern SINT64 bid64_to_int64_xrninta (UINT64 x _EXC_FLAGS_PARAM
200359e8
L
2613 _EXC_MASKS_PARAM
2614 _EXC_INFO_PARAM);
b2a00c89 2615 extern SINT64 bid64_to_int64_int (UINT64 x _EXC_FLAGS_PARAM
200359e8
L
2616 _EXC_MASKS_PARAM
2617 _EXC_INFO_PARAM);
b2a00c89 2618 extern SINT64 bid64_to_int64_xint (UINT64 x _EXC_FLAGS_PARAM
200359e8
L
2619 _EXC_MASKS_PARAM
2620 _EXC_INFO_PARAM);
b2a00c89 2621 extern SINT64 bid64_to_int64_floor (UINT64 x _EXC_FLAGS_PARAM
200359e8
L
2622 _EXC_MASKS_PARAM
2623 _EXC_INFO_PARAM);
b2a00c89 2624 extern SINT64 bid64_to_int64_xfloor (UINT64 x _EXC_FLAGS_PARAM
200359e8
L
2625 _EXC_MASKS_PARAM
2626 _EXC_INFO_PARAM);
b2a00c89 2627 extern SINT64 bid64_to_int64_ceil (UINT64 x _EXC_FLAGS_PARAM
200359e8
L
2628 _EXC_MASKS_PARAM
2629 _EXC_INFO_PARAM);
b2a00c89 2630 extern SINT64 bid64_to_int64_xceil (UINT64 x _EXC_FLAGS_PARAM
200359e8
L
2631 _EXC_MASKS_PARAM
2632 _EXC_INFO_PARAM);
b2a00c89 2633 extern UINT64 bid64_to_uint64_rnint (UINT64 x _EXC_FLAGS_PARAM
200359e8
L
2634 _EXC_MASKS_PARAM
2635 _EXC_INFO_PARAM);
b2a00c89 2636 extern UINT64 bid64_to_uint64_xrnint (UINT64 x _EXC_FLAGS_PARAM
200359e8
L
2637 _EXC_MASKS_PARAM
2638 _EXC_INFO_PARAM);
b2a00c89 2639 extern UINT64 bid64_to_uint64_rninta (UINT64 x _EXC_FLAGS_PARAM
200359e8
L
2640 _EXC_MASKS_PARAM
2641 _EXC_INFO_PARAM);
b2a00c89 2642 extern UINT64 bid64_to_uint64_xrninta (UINT64 x _EXC_FLAGS_PARAM
200359e8
L
2643 _EXC_MASKS_PARAM
2644 _EXC_INFO_PARAM);
b2a00c89 2645 extern UINT64 bid64_to_uint64_int (UINT64 x _EXC_FLAGS_PARAM
200359e8
L
2646 _EXC_MASKS_PARAM
2647 _EXC_INFO_PARAM);
b2a00c89 2648 extern UINT64 bid64_to_uint64_xint (UINT64 x _EXC_FLAGS_PARAM
200359e8
L
2649 _EXC_MASKS_PARAM
2650 _EXC_INFO_PARAM);
b2a00c89 2651 extern UINT64 bid64_to_uint64_floor (UINT64 x _EXC_FLAGS_PARAM
200359e8
L
2652 _EXC_MASKS_PARAM
2653 _EXC_INFO_PARAM);
b2a00c89 2654 extern UINT64 bid64_to_uint64_xfloor (UINT64 x _EXC_FLAGS_PARAM
200359e8
L
2655 _EXC_MASKS_PARAM
2656 _EXC_INFO_PARAM);
b2a00c89 2657 extern UINT64 bid64_to_uint64_ceil (UINT64 x _EXC_FLAGS_PARAM
200359e8
L
2658 _EXC_MASKS_PARAM
2659 _EXC_INFO_PARAM);
b2a00c89 2660 extern UINT64 bid64_to_uint64_xceil (UINT64 x _EXC_FLAGS_PARAM
200359e8
L
2661 _EXC_MASKS_PARAM
2662 _EXC_INFO_PARAM);
2663
b2a00c89 2664 extern int bid64_quiet_equal (UINT64 x, UINT64 y
200359e8
L
2665 _EXC_FLAGS_PARAM _EXC_MASKS_PARAM
2666 _EXC_INFO_PARAM);
b2a00c89 2667 extern int bid64_quiet_greater (UINT64 x,
200359e8
L
2668 UINT64 y _EXC_FLAGS_PARAM
2669 _EXC_MASKS_PARAM _EXC_INFO_PARAM);
b2a00c89 2670 extern int bid64_quiet_greater_equal (UINT64 x,
200359e8
L
2671 UINT64 y _EXC_FLAGS_PARAM
2672 _EXC_MASKS_PARAM
2673 _EXC_INFO_PARAM);
b2a00c89 2674 extern int bid64_quiet_greater_unordered (UINT64 x,
200359e8
L
2675 UINT64 y _EXC_FLAGS_PARAM
2676 _EXC_MASKS_PARAM
2677 _EXC_INFO_PARAM);
b2a00c89 2678 extern int bid64_quiet_less (UINT64 x,
200359e8
L
2679 UINT64 y _EXC_FLAGS_PARAM
2680 _EXC_MASKS_PARAM _EXC_INFO_PARAM);
b2a00c89 2681 extern int bid64_quiet_less_equal (UINT64 x,
200359e8
L
2682 UINT64 y _EXC_FLAGS_PARAM
2683 _EXC_MASKS_PARAM
2684 _EXC_INFO_PARAM);
b2a00c89 2685 extern int bid64_quiet_less_unordered (UINT64 x,
200359e8
L
2686 UINT64 y _EXC_FLAGS_PARAM
2687 _EXC_MASKS_PARAM
2688 _EXC_INFO_PARAM);
b2a00c89 2689 extern int bid64_quiet_not_equal (UINT64 x,
200359e8
L
2690 UINT64 y _EXC_FLAGS_PARAM
2691 _EXC_MASKS_PARAM
2692 _EXC_INFO_PARAM);
b2a00c89 2693 extern int bid64_quiet_not_greater (UINT64 x,
200359e8
L
2694 UINT64 y _EXC_FLAGS_PARAM
2695 _EXC_MASKS_PARAM
2696 _EXC_INFO_PARAM);
b2a00c89 2697 extern int bid64_quiet_not_less (UINT64 x,
200359e8
L
2698 UINT64 y _EXC_FLAGS_PARAM
2699 _EXC_MASKS_PARAM _EXC_INFO_PARAM);
b2a00c89 2700 extern int bid64_quiet_ordered (UINT64 x,
200359e8
L
2701 UINT64 y _EXC_FLAGS_PARAM
2702 _EXC_MASKS_PARAM _EXC_INFO_PARAM);
b2a00c89 2703 extern int bid64_quiet_unordered (UINT64 x,
200359e8
L
2704 UINT64 y _EXC_FLAGS_PARAM
2705 _EXC_MASKS_PARAM
2706 _EXC_INFO_PARAM);
b2a00c89 2707 extern int bid64_signaling_greater (UINT64 x,
200359e8
L
2708 UINT64 y _EXC_FLAGS_PARAM
2709 _EXC_MASKS_PARAM
2710 _EXC_INFO_PARAM);
b2a00c89 2711 extern int bid64_signaling_greater_equal (UINT64 x,
200359e8
L
2712 UINT64 y _EXC_FLAGS_PARAM
2713 _EXC_MASKS_PARAM
2714 _EXC_INFO_PARAM);
b2a00c89 2715 extern int bid64_signaling_greater_unordered (UINT64 x,
200359e8
L
2716 UINT64 y
2717 _EXC_FLAGS_PARAM
2718 _EXC_MASKS_PARAM
2719 _EXC_INFO_PARAM);
b2a00c89 2720 extern int bid64_signaling_less (UINT64 x,
200359e8
L
2721 UINT64 y _EXC_FLAGS_PARAM
2722 _EXC_MASKS_PARAM _EXC_INFO_PARAM);
b2a00c89 2723 extern int bid64_signaling_less_equal (UINT64 x,
200359e8
L
2724 UINT64 y _EXC_FLAGS_PARAM
2725 _EXC_MASKS_PARAM
2726 _EXC_INFO_PARAM);
b2a00c89 2727 extern int bid64_signaling_less_unordered (UINT64 x,
200359e8
L
2728 UINT64 y
2729 _EXC_FLAGS_PARAM
2730 _EXC_MASKS_PARAM
2731 _EXC_INFO_PARAM);
b2a00c89 2732 extern int bid64_signaling_not_greater (UINT64 x,
200359e8
L
2733 UINT64 y _EXC_FLAGS_PARAM
2734 _EXC_MASKS_PARAM
2735 _EXC_INFO_PARAM);
b2a00c89 2736 extern int bid64_signaling_not_less (UINT64 x,
200359e8
L
2737 UINT64 y _EXC_FLAGS_PARAM
2738 _EXC_MASKS_PARAM
2739 _EXC_INFO_PARAM);
200359e8 2740
b2a00c89 2741 extern int bid128_quiet_equal (UINT128 x, UINT128 y
200359e8
L
2742 _EXC_FLAGS_PARAM _EXC_MASKS_PARAM
2743 _EXC_INFO_PARAM);
b2a00c89 2744 extern int bid128_quiet_greater (UINT128 x,
200359e8
L
2745 UINT128 y _EXC_FLAGS_PARAM
2746 _EXC_MASKS_PARAM _EXC_INFO_PARAM);
b2a00c89 2747 extern int bid128_quiet_greater_equal (UINT128 x,
200359e8
L
2748 UINT128 y _EXC_FLAGS_PARAM
2749 _EXC_MASKS_PARAM
2750 _EXC_INFO_PARAM);
b2a00c89 2751 extern int bid128_quiet_greater_unordered (UINT128 x,
200359e8
L
2752 UINT128 y
2753 _EXC_FLAGS_PARAM
2754 _EXC_MASKS_PARAM
2755 _EXC_INFO_PARAM);
b2a00c89 2756 extern int bid128_quiet_less (UINT128 x,
200359e8
L
2757 UINT128 y _EXC_FLAGS_PARAM
2758 _EXC_MASKS_PARAM _EXC_INFO_PARAM);
b2a00c89 2759 extern int bid128_quiet_less_equal (UINT128 x,
200359e8
L
2760 UINT128 y _EXC_FLAGS_PARAM
2761 _EXC_MASKS_PARAM
2762 _EXC_INFO_PARAM);
b2a00c89 2763 extern int bid128_quiet_less_unordered (UINT128 x,
200359e8
L
2764 UINT128 y _EXC_FLAGS_PARAM
2765 _EXC_MASKS_PARAM
2766 _EXC_INFO_PARAM);
b2a00c89 2767 extern int bid128_quiet_not_equal (UINT128 x,
200359e8
L
2768 UINT128 y _EXC_FLAGS_PARAM
2769 _EXC_MASKS_PARAM
2770 _EXC_INFO_PARAM);
b2a00c89 2771 extern int bid128_quiet_not_greater (UINT128 x,
200359e8
L
2772 UINT128 y _EXC_FLAGS_PARAM
2773 _EXC_MASKS_PARAM
2774 _EXC_INFO_PARAM);
b2a00c89 2775 extern int bid128_quiet_not_less (UINT128 x,
200359e8
L
2776 UINT128 y _EXC_FLAGS_PARAM
2777 _EXC_MASKS_PARAM
2778 _EXC_INFO_PARAM);
b2a00c89 2779 extern int bid128_quiet_ordered (UINT128 x,
200359e8
L
2780 UINT128 y _EXC_FLAGS_PARAM
2781 _EXC_MASKS_PARAM _EXC_INFO_PARAM);
b2a00c89 2782 extern int bid128_quiet_unordered (UINT128 x,
200359e8
L
2783 UINT128 y _EXC_FLAGS_PARAM
2784 _EXC_MASKS_PARAM
2785 _EXC_INFO_PARAM);
b2a00c89 2786 extern int bid128_signaling_greater (UINT128 x,
200359e8
L
2787 UINT128 y _EXC_FLAGS_PARAM
2788 _EXC_MASKS_PARAM
2789 _EXC_INFO_PARAM);
b2a00c89 2790 extern int bid128_signaling_greater_equal (UINT128 x,
200359e8
L
2791 UINT128 y
2792 _EXC_FLAGS_PARAM
2793 _EXC_MASKS_PARAM
2794 _EXC_INFO_PARAM);
b2a00c89 2795 extern int bid128_signaling_greater_unordered (UINT128 x,
200359e8
L
2796 UINT128 y
2797 _EXC_FLAGS_PARAM
2798 _EXC_MASKS_PARAM
2799 _EXC_INFO_PARAM);
b2a00c89 2800 extern int bid128_signaling_less (UINT128 x,
200359e8
L
2801 UINT128 y _EXC_FLAGS_PARAM
2802 _EXC_MASKS_PARAM
2803 _EXC_INFO_PARAM);
b2a00c89 2804 extern int bid128_signaling_less_equal (UINT128 x,
200359e8
L
2805 UINT128 y _EXC_FLAGS_PARAM
2806 _EXC_MASKS_PARAM
2807 _EXC_INFO_PARAM);
b2a00c89 2808 extern int bid128_signaling_less_unordered (UINT128 x,
200359e8
L
2809 UINT128 y
2810 _EXC_FLAGS_PARAM
2811 _EXC_MASKS_PARAM
2812 _EXC_INFO_PARAM);
b2a00c89 2813 extern int bid128_signaling_not_greater (UINT128 x,
200359e8
L
2814 UINT128 y _EXC_FLAGS_PARAM
2815 _EXC_MASKS_PARAM
2816 _EXC_INFO_PARAM);
b2a00c89 2817 extern int bid128_signaling_not_less (UINT128 x,
200359e8
L
2818 UINT128 y _EXC_FLAGS_PARAM
2819 _EXC_MASKS_PARAM
2820 _EXC_INFO_PARAM);
200359e8 2821
b2a00c89 2822 extern UINT64 bid64_round_integral_exact (UINT64 x
200359e8
L
2823 _RND_MODE_PARAM
2824 _EXC_FLAGS_PARAM
2825 _EXC_MASKS_PARAM
2826 _EXC_INFO_PARAM);
b2a00c89 2827 extern UINT64 bid64_round_integral_nearest_even (UINT64 x
200359e8
L
2828 _EXC_FLAGS_PARAM
2829 _EXC_MASKS_PARAM
2830 _EXC_INFO_PARAM);
b2a00c89 2831 extern UINT64 bid64_round_integral_negative (UINT64 x
200359e8
L
2832 _EXC_FLAGS_PARAM
2833 _EXC_MASKS_PARAM
2834 _EXC_INFO_PARAM);
b2a00c89 2835 extern UINT64 bid64_round_integral_positive (UINT64 x
200359e8
L
2836 _EXC_FLAGS_PARAM
2837 _EXC_MASKS_PARAM
2838 _EXC_INFO_PARAM);
b2a00c89 2839 extern UINT64 bid64_round_integral_zero (UINT64 x _EXC_FLAGS_PARAM
200359e8
L
2840 _EXC_MASKS_PARAM
2841 _EXC_INFO_PARAM);
b2a00c89 2842 extern UINT64 bid64_round_integral_nearest_away (UINT64 x
200359e8
L
2843 _EXC_FLAGS_PARAM
2844 _EXC_MASKS_PARAM
2845 _EXC_INFO_PARAM);
2846
b2a00c89 2847 extern UINT128 bid128_round_integral_exact (UINT128 x
200359e8
L
2848 _RND_MODE_PARAM
2849 _EXC_FLAGS_PARAM
2850 _EXC_MASKS_PARAM
2851 _EXC_INFO_PARAM);
b2a00c89 2852 extern UINT128 bid128_round_integral_nearest_even (UINT128 x
200359e8
L
2853 _EXC_FLAGS_PARAM
2854 _EXC_MASKS_PARAM
2855 _EXC_INFO_PARAM);
b2a00c89 2856 extern UINT128 bid128_round_integral_negative (UINT128 x
200359e8
L
2857 _EXC_FLAGS_PARAM
2858 _EXC_MASKS_PARAM
2859 _EXC_INFO_PARAM);
b2a00c89 2860 extern UINT128 bid128_round_integral_positive (UINT128 x
200359e8
L
2861 _EXC_FLAGS_PARAM
2862 _EXC_MASKS_PARAM
2863 _EXC_INFO_PARAM);
b2a00c89 2864 extern UINT128 bid128_round_integral_zero (UINT128 x
200359e8
L
2865 _EXC_FLAGS_PARAM
2866 _EXC_MASKS_PARAM
2867 _EXC_INFO_PARAM);
b2a00c89 2868 extern UINT128 bid128_round_integral_nearest_away (UINT128 x
200359e8
L
2869 _EXC_FLAGS_PARAM
2870 _EXC_MASKS_PARAM
2871 _EXC_INFO_PARAM);
2872
b2a00c89 2873 extern UINT64 bid64_nextup (UINT64 x
200359e8
L
2874 _EXC_FLAGS_PARAM _EXC_MASKS_PARAM
2875 _EXC_INFO_PARAM);
b2a00c89 2876 extern UINT64 bid64_nextdown (UINT64 x _EXC_FLAGS_PARAM
200359e8 2877 _EXC_MASKS_PARAM _EXC_INFO_PARAM);
b2a00c89 2878 extern UINT64 bid64_nextafter (UINT64 x,
200359e8
L
2879 UINT64 y _EXC_FLAGS_PARAM
2880 _EXC_MASKS_PARAM _EXC_INFO_PARAM);
2881
b2a00c89 2882 extern UINT128 bid128_nextup (UINT128 x
200359e8
L
2883 _EXC_FLAGS_PARAM _EXC_MASKS_PARAM
2884 _EXC_INFO_PARAM);
b2a00c89 2885 extern UINT128 bid128_nextdown (UINT128 x _EXC_FLAGS_PARAM
200359e8 2886 _EXC_MASKS_PARAM _EXC_INFO_PARAM);
b2a00c89 2887 extern UINT128 bid128_nextafter (UINT128 x,
200359e8
L
2888 UINT128 y _EXC_FLAGS_PARAM
2889 _EXC_MASKS_PARAM _EXC_INFO_PARAM);
2890
b2a00c89
L
2891 extern UINT64 bid64_minnum (UINT64 x, UINT64 y _EXC_FLAGS_PARAM);
2892 extern UINT64 bid64_minnum_mag (UINT64 x,
2893 UINT64 y _EXC_FLAGS_PARAM);
2894 extern UINT64 bid64_maxnum (UINT64 x, UINT64 y _EXC_FLAGS_PARAM);
2895 extern UINT64 bid64_maxnum_mag (UINT64 x,
2896 UINT64 y _EXC_FLAGS_PARAM);
2897
2898 extern UINT128 bid128_minnum (UINT128 x,
2899 UINT128 y _EXC_FLAGS_PARAM);
2900 extern UINT128 bid128_minnum_mag (UINT128 x,
2901 UINT128 y _EXC_FLAGS_PARAM);
2902 extern UINT128 bid128_maxnum (UINT128 x,
2903 UINT128 y _EXC_FLAGS_PARAM);
2904 extern UINT128 bid128_maxnum_mag (UINT128 x,
2905 UINT128 y _EXC_FLAGS_PARAM);
2906
2907 extern UINT64 bid64_from_int32 (int x _EXC_MASKS_PARAM
200359e8 2908 _EXC_INFO_PARAM);
b2a00c89 2909 extern UINT64 bid64_from_uint32 (unsigned int x _EXC_MASKS_PARAM
200359e8 2910 _EXC_INFO_PARAM);
b2a00c89 2911 extern UINT64 bid64_from_int64 (SINT64 x _RND_MODE_PARAM
200359e8
L
2912 _EXC_FLAGS_PARAM _EXC_MASKS_PARAM
2913 _EXC_INFO_PARAM);
b2a00c89 2914 extern UINT64 bid64_from_uint64 (UINT64 _RND_MODE_PARAM
200359e8
L
2915 _EXC_FLAGS_PARAM _EXC_MASKS_PARAM
2916 _EXC_INFO_PARAM);
b2a00c89 2917 extern UINT128 bid128_from_int32 (int x _EXC_MASKS_PARAM
200359e8 2918 _EXC_INFO_PARAM);
b2a00c89 2919 extern UINT128 bid128_from_uint32 (unsigned int x _EXC_MASKS_PARAM
200359e8 2920 _EXC_INFO_PARAM);
b2a00c89 2921 extern UINT128 bid128_from_int64 (SINT64 x _EXC_MASKS_PARAM
200359e8 2922 _EXC_INFO_PARAM);
b2a00c89 2923 extern UINT128 bid128_from_uint64 (UINT64 x _EXC_MASKS_PARAM
200359e8
L
2924 _EXC_INFO_PARAM);
2925
b2a00c89 2926 extern int bid64_isSigned (UINT64 x _EXC_MASKS_PARAM
200359e8 2927 _EXC_INFO_PARAM);
b2a00c89 2928 extern int bid64_isNormal (UINT64 x _EXC_MASKS_PARAM
200359e8 2929 _EXC_INFO_PARAM);
b2a00c89 2930 extern int bid64_isSubnormal (UINT64 x _EXC_MASKS_PARAM
200359e8 2931 _EXC_INFO_PARAM);
b2a00c89 2932 extern int bid64_isFinite (UINT64 x _EXC_MASKS_PARAM
200359e8 2933 _EXC_INFO_PARAM);
b2a00c89 2934 extern int bid64_isZero (UINT64 x _EXC_MASKS_PARAM
200359e8 2935 _EXC_INFO_PARAM);
b2a00c89
L
2936 extern int bid64_isInf (UINT64 x _EXC_MASKS_PARAM _EXC_INFO_PARAM);
2937 extern int bid64_isSignaling (UINT64 x _EXC_MASKS_PARAM
200359e8 2938 _EXC_INFO_PARAM);
b2a00c89 2939 extern int bid64_isCanonical (UINT64 x _EXC_MASKS_PARAM
200359e8 2940 _EXC_INFO_PARAM);
b2a00c89
L
2941 extern int bid64_isNaN (UINT64 x _EXC_MASKS_PARAM _EXC_INFO_PARAM);
2942 extern UINT64 bid64_copy (UINT64 x _EXC_MASKS_PARAM
200359e8 2943 _EXC_INFO_PARAM);
b2a00c89 2944 extern UINT64 bid64_negate (UINT64 x _EXC_MASKS_PARAM
200359e8 2945 _EXC_INFO_PARAM);
b2a00c89 2946 extern UINT64 bid64_abs (UINT64 x _EXC_MASKS_PARAM
200359e8 2947 _EXC_INFO_PARAM);
b2a00c89 2948 extern UINT64 bid64_copySign (UINT64 x,
200359e8
L
2949 UINT64 y _EXC_MASKS_PARAM
2950 _EXC_INFO_PARAM);
b2a00c89
L
2951 extern int bid64_class (UINT64 x _EXC_MASKS_PARAM _EXC_INFO_PARAM);
2952 extern int bid64_sameQuantum (UINT64 x, UINT64 y
200359e8 2953 _EXC_MASKS_PARAM _EXC_INFO_PARAM);
b2a00c89 2954 extern int bid64_totalOrder (UINT64 x, UINT64 y
200359e8 2955 _EXC_MASKS_PARAM _EXC_INFO_PARAM);
b2a00c89 2956 extern int bid64_totalOrderMag (UINT64 x, UINT64 y
200359e8 2957 _EXC_MASKS_PARAM _EXC_INFO_PARAM);
b2a00c89 2958 extern int bid64_radix (UINT64 x _EXC_MASKS_PARAM _EXC_INFO_PARAM);
200359e8 2959
b2a00c89 2960 extern int bid128_isSigned (UINT128 x _EXC_MASKS_PARAM
200359e8 2961 _EXC_INFO_PARAM);
b2a00c89 2962 extern int bid128_isNormal (UINT128 x _EXC_MASKS_PARAM
200359e8 2963 _EXC_INFO_PARAM);
b2a00c89 2964 extern int bid128_isSubnormal (UINT128 x _EXC_MASKS_PARAM
200359e8 2965 _EXC_INFO_PARAM);
b2a00c89 2966 extern int bid128_isFinite (UINT128 x _EXC_MASKS_PARAM
200359e8 2967 _EXC_INFO_PARAM);
b2a00c89 2968 extern int bid128_isZero (UINT128 x _EXC_MASKS_PARAM
200359e8 2969 _EXC_INFO_PARAM);
b2a00c89 2970 extern int bid128_isInf (UINT128 x _EXC_MASKS_PARAM
200359e8 2971 _EXC_INFO_PARAM);
b2a00c89 2972 extern int bid128_isSignaling (UINT128 x _EXC_MASKS_PARAM
200359e8 2973 _EXC_INFO_PARAM);
b2a00c89 2974 extern int bid128_isCanonical (UINT128 x _EXC_MASKS_PARAM
200359e8 2975 _EXC_INFO_PARAM);
b2a00c89 2976 extern int bid128_isNaN (UINT128 x _EXC_MASKS_PARAM
200359e8 2977 _EXC_INFO_PARAM);
b2a00c89 2978 extern UINT128 bid128_copy (UINT128 x _EXC_MASKS_PARAM
200359e8 2979 _EXC_INFO_PARAM);
b2a00c89 2980 extern UINT128 bid128_negate (UINT128 x _EXC_MASKS_PARAM
200359e8 2981 _EXC_INFO_PARAM);
b2a00c89 2982 extern UINT128 bid128_abs (UINT128 x _EXC_MASKS_PARAM
200359e8 2983 _EXC_INFO_PARAM);
b2a00c89 2984 extern UINT128 bid128_copySign (UINT128 x,
200359e8
L
2985 UINT128 y _EXC_MASKS_PARAM
2986 _EXC_INFO_PARAM);
b2a00c89 2987 extern int bid128_class (UINT128 x _EXC_MASKS_PARAM
200359e8 2988 _EXC_INFO_PARAM);
b2a00c89 2989 extern int bid128_sameQuantum (UINT128 x,
200359e8
L
2990 UINT128 y _EXC_MASKS_PARAM
2991 _EXC_INFO_PARAM);
b2a00c89 2992 extern int bid128_totalOrder (UINT128 x,
200359e8
L
2993 UINT128 y _EXC_MASKS_PARAM
2994 _EXC_INFO_PARAM);
b2a00c89 2995 extern int bid128_totalOrderMag (UINT128 x,
200359e8
L
2996 UINT128 y _EXC_MASKS_PARAM
2997 _EXC_INFO_PARAM);
b2a00c89 2998 extern int bid128_radix (UINT128 x _EXC_MASKS_PARAM
200359e8
L
2999 _EXC_INFO_PARAM);
3000
b2a00c89
L
3001 extern UINT64 bid64_rem (UINT64 x, UINT64 y
3002 _EXC_FLAGS_PARAM
200359e8 3003 _EXC_MASKS_PARAM _EXC_INFO_PARAM);
b2a00c89 3004 extern int bid64_logb (UINT64 x _EXC_FLAGS_PARAM
200359e8 3005 _EXC_MASKS_PARAM _EXC_INFO_PARAM);
b2a00c89 3006 extern UINT64 bid64_scalb (UINT64 x,
200359e8
L
3007 int n _RND_MODE_PARAM _EXC_FLAGS_PARAM
3008 _EXC_MASKS_PARAM _EXC_INFO_PARAM);
3009
b2a00c89
L
3010 extern UINT128 bid128_rem (UINT128 x, UINT128 y
3011 _EXC_FLAGS_PARAM
200359e8 3012 _EXC_MASKS_PARAM _EXC_INFO_PARAM);
b2a00c89 3013 extern int bid128_logb (UINT128 x
200359e8
L
3014 _EXC_FLAGS_PARAM _EXC_MASKS_PARAM
3015 _EXC_INFO_PARAM);
b2a00c89 3016 extern UINT128 bid128_scalb (UINT128 x,
200359e8
L
3017 int n _RND_MODE_PARAM _EXC_FLAGS_PARAM
3018 _EXC_MASKS_PARAM _EXC_INFO_PARAM);
3019
b2a00c89
L
3020 extern UINT64 bid32_to_bid64 (UINT32 x _EXC_FLAGS_PARAM
3021 _EXC_MASKS_PARAM _EXC_INFO_PARAM);
3022 extern UINT128 bid32_to_bid128 (UINT32 x _EXC_FLAGS_PARAM
3023 _EXC_MASKS_PARAM _EXC_INFO_PARAM);
3024 extern UINT128 bid64_to_bid128 (UINT64 x _EXC_FLAGS_PARAM
3025 _EXC_MASKS_PARAM _EXC_INFO_PARAM);
3026 extern UINT32 bid64_to_bid32 (UINT64 x
3027 _RND_MODE_PARAM _EXC_FLAGS_PARAM
3028 _EXC_MASKS_PARAM _EXC_INFO_PARAM);
3029 extern UINT32 bid128_to_bid32 (UINT128 x _RND_MODE_PARAM
3030 _EXC_FLAGS_PARAM
3031 _EXC_MASKS_PARAM _EXC_INFO_PARAM);
3032 extern UINT64 bid128_to_bid64 (UINT128 x _RND_MODE_PARAM
3033 _EXC_FLAGS_PARAM
3034 _EXC_MASKS_PARAM _EXC_INFO_PARAM);
3035
3036 extern void bid64_to_string (char *ps, UINT64 x
3037 _EXC_FLAGS_PARAM
3038 _EXC_MASKS_PARAM _EXC_INFO_PARAM);
3039 extern UINT64 bid64_from_string (char *ps
3040 _RND_MODE_PARAM _EXC_FLAGS_PARAM
3041 _EXC_MASKS_PARAM _EXC_INFO_PARAM);
3042 extern void bid128_to_string (char *str, UINT128 x
3043 _EXC_FLAGS_PARAM
3044 _EXC_MASKS_PARAM _EXC_INFO_PARAM);
3045 extern UINT128 bid128_from_string (char *ps
3046 _RND_MODE_PARAM _EXC_FLAGS_PARAM
200359e8
L
3047 _EXC_MASKS_PARAM
3048 _EXC_INFO_PARAM);
3049
b2a00c89
L
3050 extern UINT64 bid64_quantize (UINT64 x, UINT64 y
3051 _RND_MODE_PARAM _EXC_FLAGS_PARAM
3052 _EXC_MASKS_PARAM _EXC_INFO_PARAM);
200359e8 3053
b2a00c89
L
3054 extern UINT128 bid128_quantize (UINT128 x, UINT128 y
3055 _RND_MODE_PARAM
3056 _EXC_FLAGS_PARAM
3057 _EXC_MASKS_PARAM _EXC_INFO_PARAM);
3058
3059
3060 extern UINT32 binary128_to_bid32 (BINARY128 x
3061 _RND_MODE_PARAM
3062 _EXC_FLAGS_PARAM
3063 _EXC_MASKS_PARAM
3064 _EXC_INFO_PARAM);
3065
3066 extern UINT64 binary128_to_bid64 (BINARY128 x
3067 _RND_MODE_PARAM
3068 _EXC_FLAGS_PARAM
200359e8
L
3069 _EXC_MASKS_PARAM
3070 _EXC_INFO_PARAM);
3071
b2a00c89 3072 extern UINT128 binary128_to_bid128 (BINARY128 x
200359e8
L
3073 _RND_MODE_PARAM
3074 _EXC_FLAGS_PARAM
3075 _EXC_MASKS_PARAM
3076 _EXC_INFO_PARAM);
3077
b2a00c89
L
3078 extern UINT32 binary64_to_bid32 (double x
3079 _RND_MODE_PARAM
3080 _EXC_FLAGS_PARAM
3081 _EXC_MASKS_PARAM _EXC_INFO_PARAM);
200359e8 3082
b2a00c89
L
3083 extern UINT64 binary64_to_bid64 (double x
3084 _RND_MODE_PARAM
3085 _EXC_FLAGS_PARAM
3086 _EXC_MASKS_PARAM _EXC_INFO_PARAM);
200359e8 3087
b2a00c89
L
3088 extern UINT128 binary64_to_bid128 (double x
3089 _RND_MODE_PARAM
3090 _EXC_FLAGS_PARAM
3091 _EXC_MASKS_PARAM
3092 _EXC_INFO_PARAM);
200359e8 3093
b2a00c89
L
3094 extern UINT32 binary80_to_bid32 (BINARY80 x
3095 _RND_MODE_PARAM
3096 _EXC_FLAGS_PARAM
3097 _EXC_MASKS_PARAM _EXC_INFO_PARAM);
200359e8 3098
b2a00c89
L
3099 extern UINT64 binary80_to_bid64 (BINARY80 x
3100 _RND_MODE_PARAM
3101 _EXC_FLAGS_PARAM
3102 _EXC_MASKS_PARAM _EXC_INFO_PARAM);
200359e8 3103
b2a00c89
L
3104 extern UINT128 binary80_to_bid128 (BINARY80 x
3105 _RND_MODE_PARAM
3106 _EXC_FLAGS_PARAM
3107 _EXC_MASKS_PARAM
3108 _EXC_INFO_PARAM);
200359e8 3109
b2a00c89
L
3110 extern UINT32 binary32_to_bid32 (float x
3111 _RND_MODE_PARAM
3112 _EXC_FLAGS_PARAM
3113 _EXC_MASKS_PARAM _EXC_INFO_PARAM);
200359e8 3114
b2a00c89
L
3115 extern UINT64 binary32_to_bid64 (float x
3116 _RND_MODE_PARAM
3117 _EXC_FLAGS_PARAM
3118 _EXC_MASKS_PARAM _EXC_INFO_PARAM);
200359e8 3119
b2a00c89
L
3120 extern UINT128 binary32_to_bid128 (float x
3121 _RND_MODE_PARAM
3122 _EXC_FLAGS_PARAM
3123 _EXC_MASKS_PARAM
3124 _EXC_INFO_PARAM);
200359e8 3125
b2a00c89 3126 extern float bid128_to_binary32 (UINT128 x
200359e8
L
3127 _RND_MODE_PARAM _EXC_FLAGS_PARAM
3128 _EXC_MASKS_PARAM _EXC_INFO_PARAM);
3129
b2a00c89 3130 extern double bid128_to_binary64 (UINT128 x
200359e8
L
3131 _RND_MODE_PARAM _EXC_FLAGS_PARAM
3132 _EXC_MASKS_PARAM
3133 _EXC_INFO_PARAM);
3134
b2a00c89
L
3135 extern BINARY80 bid128_to_binary80 (UINT128 x
3136 _RND_MODE_PARAM
3137 _EXC_FLAGS_PARAM
3138 _EXC_MASKS_PARAM
3139 _EXC_INFO_PARAM);
200359e8 3140
b2a00c89
L
3141 extern BINARY128 bid128_to_binary128 (UINT128 x
3142 _RND_MODE_PARAM
3143 _EXC_FLAGS_PARAM
3144 _EXC_MASKS_PARAM
3145 _EXC_INFO_PARAM);
200359e8 3146
b2a00c89 3147 extern float bid64_to_binary32 (UINT64 x
200359e8
L
3148 _RND_MODE_PARAM _EXC_FLAGS_PARAM
3149 _EXC_MASKS_PARAM _EXC_INFO_PARAM);
3150
b2a00c89 3151 extern double bid64_to_binary64 (UINT64 x
200359e8
L
3152 _RND_MODE_PARAM _EXC_FLAGS_PARAM
3153 _EXC_MASKS_PARAM _EXC_INFO_PARAM);
3154
b2a00c89
L
3155 extern BINARY80 bid64_to_binary80 (UINT64 x
3156 _RND_MODE_PARAM
3157 _EXC_FLAGS_PARAM
3158 _EXC_MASKS_PARAM
3159 _EXC_INFO_PARAM);
200359e8 3160
b2a00c89
L
3161 extern BINARY128 bid64_to_binary128 (UINT64 x
3162 _RND_MODE_PARAM
3163 _EXC_FLAGS_PARAM
3164 _EXC_MASKS_PARAM
3165 _EXC_INFO_PARAM);
200359e8 3166
b2a00c89 3167 extern float bid32_to_binary32 (UINT32 x
200359e8
L
3168 _RND_MODE_PARAM _EXC_FLAGS_PARAM
3169 _EXC_MASKS_PARAM _EXC_INFO_PARAM);
3170
b2a00c89 3171 extern double bid32_to_binary64 (UINT32 x
200359e8
L
3172 _RND_MODE_PARAM _EXC_FLAGS_PARAM
3173 _EXC_MASKS_PARAM _EXC_INFO_PARAM);
3174
b2a00c89
L
3175 extern BINARY80 bid32_to_binary80 (UINT32 x
3176 _RND_MODE_PARAM
3177 _EXC_FLAGS_PARAM
3178 _EXC_MASKS_PARAM
3179 _EXC_INFO_PARAM);
200359e8 3180
b2a00c89
L
3181 extern BINARY128 bid32_to_binary128 (UINT32 x
3182 _RND_MODE_PARAM
3183 _EXC_FLAGS_PARAM
3184 _EXC_MASKS_PARAM
3185 _EXC_INFO_PARAM);
200359e8 3186
b2a00c89 3187 extern int is754 (void);
200359e8 3188
b2a00c89 3189 extern int is754R (void);
200359e8 3190
b2a00c89
L
3191 extern void signalException (_IDEC_flags flagsmask
3192 _EXC_FLAGS_PARAM);
200359e8 3193
b2a00c89
L
3194 extern void lowerFlags (_IDEC_flags flagsmask _EXC_FLAGS_PARAM);
3195
3196 extern _IDEC_flags testFlags (_IDEC_flags flagsmask
200359e8
L
3197 _EXC_FLAGS_PARAM);
3198
b2a00c89 3199 extern _IDEC_flags testSavedFlags (_IDEC_flags savedflags,
200359e8
L
3200 _IDEC_flags flagsmask);
3201
b2a00c89 3202 extern void restoreFlags (_IDEC_flags flagsvalues,
200359e8
L
3203 _IDEC_flags flagsmask _EXC_FLAGS_PARAM);
3204
b2a00c89 3205 extern _IDEC_flags saveFlags (_IDEC_flags flagsmask
200359e8
L
3206 _EXC_FLAGS_PARAM);
3207
3208#if !DECIMAL_GLOBAL_ROUNDING
b2a00c89 3209 _IDEC_round getDecimalRoundingDirection (_IDEC_round rnd_mode);
200359e8 3210#else
b2a00c89 3211 _IDEC_round getDecimalRoundingDirection (void);
200359e8
L
3212#endif
3213
3214#if !DECIMAL_GLOBAL_ROUNDING
b2a00c89
L
3215 _IDEC_round setDecimalRoundingDirection (_IDEC_round
3216 rounding_mode
3217 _RND_MODE_PARAM);
200359e8 3218#else
b2a00c89 3219 void setDecimalRoundingDirection (_IDEC_round rounding_mode);
200359e8
L
3220#endif
3221
3222#endif
3223
3224// Internal Functions
3225
3226 extern void
b2a00c89 3227 round64_2_18 (int q,
200359e8
L
3228 int x,
3229 UINT64 C,
3230 UINT64 * ptr_Cstar,
3231 int *delta_exp,
3232 int *ptr_is_midpoint_lt_even,
3233 int *ptr_is_midpoint_gt_even,
3234 int *ptr_is_inexact_lt_midpoint,
3235 int *ptr_is_inexact_gt_midpoint);
3236
3237 extern void
b2a00c89 3238 round128_19_38 (int q,
200359e8
L
3239 int x,
3240 UINT128 C,
3241 UINT128 * ptr_Cstar,
3242 int *delta_exp,
3243 int *ptr_is_midpoint_lt_even,
3244 int *ptr_is_midpoint_gt_even,
3245 int *ptr_is_inexact_lt_midpoint,
3246 int *ptr_is_inexact_gt_midpoint);
3247
3248 extern void
b2a00c89 3249 round192_39_57 (int q,
200359e8
L
3250 int x,
3251 UINT192 C,
3252 UINT192 * ptr_Cstar,
3253 int *delta_exp,
3254 int *ptr_is_midpoint_lt_even,
3255 int *ptr_is_midpoint_gt_even,
3256 int *ptr_is_inexact_lt_midpoint,
3257 int *ptr_is_inexact_gt_midpoint);
3258
3259 extern void
b2a00c89 3260 round256_58_76 (int q,
200359e8
L
3261 int x,
3262 UINT256 C,
3263 UINT256 * ptr_Cstar,
3264 int *delta_exp,
3265 int *ptr_is_midpoint_lt_even,
3266 int *ptr_is_midpoint_gt_even,
3267 int *ptr_is_inexact_lt_midpoint,
3268 int *ptr_is_inexact_gt_midpoint);
3269
3270#endif
3271
b2a00c89
L
3272// Prototypes for Internal Functions
3273
3274 extern UINT32 bid_to_bid32 (UINT32);
3275 extern UINT64 bid_to_bid64 (UINT64);
3276 extern UINT128 bid_to_bid128 (UINT128);
3277 extern UINT32 bid32_canonize (UINT32);
3278 extern UINT64 bid64_canonize (UINT64);
3279 extern UINT128 bid128_canonize (UINT128);