]> oss.titaniummirror.com Git - msp430-gcc.git/blobdiff - libgcc/config/libbid/bid_functions.h
Imported gcc-4.4.3
[msp430-gcc.git] / libgcc / config / libbid / bid_functions.h
diff --git a/libgcc/config/libbid/bid_functions.h b/libgcc/config/libbid/bid_functions.h
new file mode 100644 (file)
index 0000000..579370a
--- /dev/null
@@ -0,0 +1,3279 @@
+/* Copyright (C) 2007, 2009  Free Software Foundation, Inc.
+
+This file is part of GCC.
+
+GCC is free software; you can redistribute it and/or modify it under
+the terms of the GNU General Public License as published by the Free
+Software Foundation; either version 3, or (at your option) any later
+version.
+
+GCC is distributed in the hope that it will be useful, but WITHOUT ANY
+WARRANTY; without even the implied warranty of MERCHANTABILITY or
+FITNESS FOR A PARTICULAR PURPOSE.  See the GNU General Public License
+for more details.
+
+Under Section 7 of GPL version 3, you are granted additional
+permissions described in the GCC Runtime Library Exception, version
+3.1, as published by the Free Software Foundation.
+
+You should have received a copy of the GNU General Public License and
+a copy of the GCC Runtime Library Exception along with this program;
+see the files COPYING3 and COPYING.RUNTIME respectively.  If not, see
+<http://www.gnu.org/licenses/>.  */
+
+#ifndef _BID_FUNCTIONS_H
+#define _BID_FUNCTIONS_H
+
+#ifdef IN_LIBGCC2
+// When we are built as the part of the gcc runtime library, libgcc,
+// we will use gcc types defined in bid_gcc_intrinsics.h.
+#include "bid_gcc_intrinsics.h"
+
+#define ALIGN(n) __attribute__ ((aligned(n)))
+#else
+typedef char SINT8;
+typedef unsigned char UINT8;
+typedef unsigned UINT32;
+typedef signed SINT32;
+
+#ifdef __GNUC__
+#define __int64 long long
+#endif
+
+#if __GNUC__ || defined LINUX || defined SUNOS
+typedef unsigned long long UINT64;
+typedef signed long long SINT64;
+#else
+typedef unsigned __int64 UINT64;
+typedef signed __int64 SINT64;
+#endif
+
+#if defined _MSC_VER
+#if defined _M_IX86 && !defined __INTEL_COMPILER       // Win IA-32, MS compiler
+#define ALIGN(n)
+#else
+#define ALIGN(n) __declspec(align(n))
+#endif
+#else
+#define ALIGN(n) __attribute__ ((aligned(n)))
+#endif
+
+// bid_gcc_intrinsics.h will also define this.
+typedef
+ALIGN (16)
+     struct {
+       UINT64 w[2];
+     } UINT128;
+#endif
+
+
+#if !defined _MSC_VER || defined __INTEL_COMPILER
+#define __ENABLE_BINARY80__  1
+#endif
+
+#ifndef HPUX_OS
+#define BINARY80 long double
+#define BINARY128 UINT128
+#define SQRT80 sqrtl
+#else
+#define BINARY80 __float80
+#define BINARY128 __float128
+#define SQRT80 sqrtw
+#endif
+
+     typedef ALIGN (16)
+     struct {
+       UINT64 w[3];
+     } UINT192;
+     typedef ALIGN (16)
+     struct {
+       UINT64 w[4];
+     } UINT256;
+     typedef unsigned int FPSC;        // floating-point status and control
+
+// TYPE parameters
+#define BID128_MAXDIGITS       34
+#define BID64_MAXDIGITS                16
+#define BID32_MAXDIGITS                7
+
+// rounding modes
+#define ROUNDING_TO_NEAREST    0x00000
+#define ROUNDING_DOWN          0x00001
+#define ROUNDING_UP            0x00002
+#define ROUNDING_TO_ZERO       0x00003
+#define ROUNDING_TIES_AWAY      0x00004
+
+#define RMODE_MASK (ROUNDING_TO_NEAREST | ROUNDING_DOWN | ROUNDING_UP | ROUNDING_TO_ZERO | ROUNDING_TIES_AWAY)
+
+// status
+#define FLAG_MASK              0x0000003f
+#define BID_IEEE_FLAGS         0x0000003d
+#define EXACT_STATUS            0x00000000
+#define INEXACT_EXCEPTION      0x00000020
+#define UNDERFLOW_EXCEPTION    0x00000010
+#define OVERFLOW_EXCEPTION     0x00000008
+#define ZERO_DIVIDE_EXCEPTION  0x00000004
+#define DENORMAL_EXCEPTION     0x00000002
+#define INVALID_EXCEPTION      0x00000001
+
+#define MODE_MASK               0x00001f80
+#define INEXACT_MODE            0x00001000
+#define UNDERFLOW_MODE          0x00000800
+#define OVERFLOW_MODE           0x00000400
+#define ZERO_DIVIDE_MODE        0x00000200
+#define DENORMAL_MODE           0x00000100
+#define INVALID_MODE            0x00000080
+
+#if defined LINUX || defined SUNOS
+#define LX16  "%016llx"
+#define LX    "%llx"
+#define LD4   "%4llu"
+#define LD16  "%016lld"
+#define LD    "%lld"
+#define LUD   "%llu"
+#define LUD16 "%016llu"
+#define X8    "%08x"
+#define X4    "%04x"
+
+#define FMT_LLX16  "%016llx"
+#define FMT_LLX    "%llx"
+#define FMT_LLU4   "%4llu"
+#define FMT_LLD16  "%016lld"
+#define FMT_LLD    "%lld"
+#define FMT_LLU    "%llu"
+#define FMT_LLU16  "%016llu"
+#define FMT_X8     "%08x"
+#define FMT_X4     "%04x"
+#else
+#define LX16  "%016I64x"
+#define LX    "%I64x"
+#define LD16  "%016I64d"
+#define LD4   "%4I64u"
+#define LD    "%I64d"
+#define LUD    "%I64u"
+#define LUD16 "%016I64u"
+#define X8    "%08x"
+#define X4    "%04x"
+
+#define FMT_LLX16 "%016I64x"
+#define FMT_LLX   "%I64x"
+#define FMT_LLD16 "%016I64d"
+#define FMT_LLU4  "%4I64u"
+#define FMT_LLD   "%I64d"
+#define FMT_LLU   "%I64u"
+#define FMT_LLU16 "%016I64u"
+#define FMT_X8    "%08x"
+#define FMT_X4    "%04x"
+#endif
+
+#define decNumberIsSNaN(dn)      (((dn)->bits&(DECSNAN))!=0)
+     int __signbitf (float);
+     int __signbit (double);
+
+#define __IMFC99MACRO_( __x__, __func__ ) \
+        (( sizeof( __x__ ) > sizeof( float )) \
+         ? __func__( (double)(__x__) ) \
+                : __func__##f( (float)(__x__) ))
+
+#define signbit( __x__ )    __IMFC99MACRO_( __x__, __signbit )
+
+#if !defined(__INTEL_COMPILER)
+
+#define __fence
+
+#define isinf( __x__ )      __IMFC99MACRO_( __x__, __isinf )
+#define isnan( __x__ )      __IMFC99MACRO_( __x__, __isnan )
+
+     int __isnanf (float);
+     int __isnan (double);
+
+     int __isinff (float);
+     int __isinf (double);
+
+#endif
+
+/* rounding modes */
+// typedef unsigned int _IDEC_round;
+     extern _IDEC_round _IDEC_gblround;        // initialized to ROUNDING_TO_NEAREST
+
+/* exception flags */
+// typedef unsigned int _IDEC_flags;  // could be a struct with diagnostic info
+     extern _IDEC_flags _IDEC_gblflags;        // initialized to EXACT_STATUS
+
+/* exception masks */
+     typedef unsigned int _IDEC_exceptionmasks;
+     extern _IDEC_exceptionmasks _IDEC_gblexceptionmasks;      // initialized to MODE_MASK
+
+#if DECIMAL_ALTERNATE_EXCEPTION_HANDLING
+
+/* exception information */
+
+     typedef struct {
+       unsigned int inexact_result:1;
+       unsigned int underflow:1;
+       unsigned int overflow:1;
+       unsigned int zero_divide:1;
+       unsigned int invalid_operation:1;
+     } fpieee_exception_flags_t;
+
+     typedef enum {
+       _fp_round_nearest,
+       _fp_round_minus_infinity,
+       _fp_round_plus_infinity,
+       _fp_round_chopped,
+       _fp_round_away
+     } fpieee_rounding_mode_t;
+
+     typedef enum {
+       _fp_precision24,
+       _fp_precision63,
+       _fp_precision64,
+       _fp_precision7,
+       _fp_precision16,
+       _fp_precision34
+     } _fpieee_precision_t;
+
+     typedef enum {
+       _fp_code_unspecified,
+       _fp_code_add,
+       _fp_code_subtract,
+       _fp_code_multiply,
+       _fp_code_divide,
+       _fp_code_square_root,
+       _fp_code_compare,
+       _fp_code_convert,
+       _fp_code_convert_to_integer_neareven,
+       _fp_code_convert_to_integer_down,
+       _fp_code_convert_to_integer_up,
+       _fp_code_convert_to_integer_truncate,
+       _fp_code_convert_to_integer_nearaway,
+       _fp_code_fma,
+       _fp_code_fmin,
+       _fp_code_fmax,
+       _fp_code_famin,
+       _fp_code_famax,
+       _fp_code_round_to_integral,
+       _fp_code_minnum,
+       _fp_code_maxnum,
+       _fp_code_minnummag,
+       _fp_code_maxnummag,
+       _fp_code_quantize,
+       _fp_code_logb,
+       _fp_code_scaleb,
+       _fp_code_remainder,
+       _fp_code_nextup,
+       _fp_code_nextdown,
+       _fp_code_nextafter,
+     } fp_operation_code_t;
+
+     typedef enum {
+       _fp_compare_equal,
+       _fp_compare_greater,
+       _fp_compare_less,
+       _fp_compare_unordered
+     } fpieee_compare_result_t;
+
+     typedef enum {
+       _fp_format_fp32,
+       _fp_format_fp64,
+       _fp_format_fp80,
+       _fp_format_fp128,
+       _fp_format_dec_fp32,
+       _fp_format_dec_fp64,
+       _fp_format_dec_fp128,
+       _fp_format_i8,          /* 8-bit integer */
+       _fp_format_i16,         /* 16-bit integer */
+       _fp_format_i32,         /* 32-bit integer */
+       _fp_format_i64,         /* 64-bit integer */
+       _fp_format_u8,          /* 8-bit unsigned integer */
+       _fp_format_u16,         /* 16-bit unsigned integer */
+       _fp_format_u32,         /* 32-bit unsigned integer */
+       _fp_format_u64,         /* 64-bit unsigned integer */
+       _fp_format_compare,     /* compare value format */
+       _fp_format_decimal_char,        /* decimal character */
+       _fp_format_string       /* string */
+     } fpieee_format_t;
+
+     typedef struct {
+       unsigned short W[5];
+     } _float80_t;
+
+     typedef struct {
+       unsigned int W[4];
+     } _float128_t;
+
+     typedef struct {
+       union {
+        float fp32_value;
+        double fp64_value;
+        _float80_t fp80_value;
+        _float128_t fp128_value;
+        UINT32 decfp32_value;
+        UINT64 decfp64_value;
+        UINT128 decfp128_value;
+        char i8_value;
+        short i16_value;
+        int i32_value;
+        SINT64 i64_value;
+        unsigned char u8_value;
+        unsigned short u16_value;
+        unsigned int u32_value;
+        unsigned long u64_value;
+        fpieee_compare_result_t compare_value;
+        unsigned char s[256];
+       } value;
+       unsigned int operand_valid:1;
+       fpieee_format_t format:5;
+     } fpieee_value_t;
+
+     typedef struct {
+       unsigned int rounding_mode:3;
+       unsigned int precision:3;
+       unsigned int operation:26;
+       fpieee_exception_flags_t cause;
+       fpieee_exception_flags_t enable;
+       fpieee_exception_flags_t status;
+       fpieee_value_t operand1;
+       fpieee_value_t operand2;
+       fpieee_value_t operand3;
+       fpieee_value_t result;
+     } _IDEC_excepthandling;
+     extern _IDEC_excepthandling _IDEC_glbexcepthandling;
+
+#endif
+
+#if DECIMAL_CALL_BY_REFERENCE
+
+     extern void bid_to_dpd32 (UINT32 * pres, UINT32 * px);
+     extern void bid_to_dpd64 (UINT64 * pres, UINT64 * px);
+     extern void bid_to_dpd128 (UINT128 * pres, UINT128 * px);
+     extern void dpd_to_bid32 (UINT32 * pres, UINT32 * px);
+     extern void dpd_to_bid64 (UINT64 * pres, UINT64 * px);
+     extern void dpd_to_bid128 (UINT128 * pres, UINT128 * px);
+
+     extern void bid128dd_add (UINT128 * pres, UINT64 * px,
+                              UINT64 * py
+                              _RND_MODE_PARAM _EXC_FLAGS_PARAM
+                              _EXC_MASKS_PARAM _EXC_INFO_PARAM);
+     extern void bid128dq_add (UINT128 * pres, UINT64 * px,
+                              UINT128 * py
+                              _RND_MODE_PARAM _EXC_FLAGS_PARAM
+                              _EXC_MASKS_PARAM _EXC_INFO_PARAM);
+     extern void bid128qd_add (UINT128 * pres, UINT128 * px,
+                              UINT64 * py
+                              _RND_MODE_PARAM _EXC_FLAGS_PARAM
+                              _EXC_MASKS_PARAM _EXC_INFO_PARAM);
+     extern void bid128_add (UINT128 * pres, UINT128 * px,
+                            UINT128 *
+                            py _RND_MODE_PARAM _EXC_FLAGS_PARAM
+                            _EXC_MASKS_PARAM _EXC_INFO_PARAM);
+     extern void bid128dd_sub (UINT128 * pres, UINT64 * px,
+                              UINT64 * py
+                              _RND_MODE_PARAM _EXC_FLAGS_PARAM
+                              _EXC_MASKS_PARAM _EXC_INFO_PARAM);
+     extern void bid128dq_sub (UINT128 * pres, UINT64 * px,
+                              UINT128 * py
+                              _RND_MODE_PARAM _EXC_FLAGS_PARAM
+                              _EXC_MASKS_PARAM _EXC_INFO_PARAM);
+     extern void bid128qd_sub (UINT128 * pres, UINT128 * px,
+                              UINT64 * py
+                              _RND_MODE_PARAM _EXC_FLAGS_PARAM
+                              _EXC_MASKS_PARAM _EXC_INFO_PARAM);
+     extern void bid128_sub (UINT128 * pres, UINT128 * px,
+                            UINT128 *
+                            py _RND_MODE_PARAM _EXC_FLAGS_PARAM
+                            _EXC_MASKS_PARAM _EXC_INFO_PARAM);
+     extern void bid128dd_mul (UINT128 * pres, UINT64 * px,
+                              UINT64 * py
+                              _RND_MODE_PARAM _EXC_FLAGS_PARAM
+                              _EXC_MASKS_PARAM _EXC_INFO_PARAM);
+     extern void bid128dq_mul (UINT128 * pres, UINT64 * px,
+                              UINT128 * py
+                              _RND_MODE_PARAM _EXC_FLAGS_PARAM
+                              _EXC_MASKS_PARAM _EXC_INFO_PARAM);
+     extern void bid128qd_mul (UINT128 * pres, UINT128 * px,
+                              UINT64 * py
+                              _RND_MODE_PARAM _EXC_FLAGS_PARAM
+                              _EXC_MASKS_PARAM _EXC_INFO_PARAM);
+     extern void bid128_mul (UINT128 * pres, UINT128 * px,
+                            UINT128 * py
+                            _RND_MODE_PARAM _EXC_FLAGS_PARAM
+                            _EXC_MASKS_PARAM _EXC_INFO_PARAM);
+     extern void bid128_div (UINT128 * pres, UINT128 * px,
+                            UINT128 *
+                            py _RND_MODE_PARAM _EXC_FLAGS_PARAM
+                            _EXC_MASKS_PARAM _EXC_INFO_PARAM);
+     extern void bid128dd_div (UINT128 * pres, UINT64 * px,
+                              UINT64 * py
+                              _RND_MODE_PARAM _EXC_FLAGS_PARAM
+                              _EXC_MASKS_PARAM _EXC_INFO_PARAM);
+     extern void bid128dq_div (UINT128 * pres, UINT64 * px,
+                              UINT128 * py
+                              _RND_MODE_PARAM _EXC_FLAGS_PARAM
+                              _EXC_MASKS_PARAM _EXC_INFO_PARAM);
+     extern void bid128qd_div (UINT128 * pres, UINT128 * px,
+                              UINT64 * py
+                              _RND_MODE_PARAM _EXC_FLAGS_PARAM
+                              _EXC_MASKS_PARAM _EXC_INFO_PARAM);
+     extern void bid128_fma (UINT128 * pres, UINT128 * px,
+                            UINT128 * py, UINT128 * pz
+                            _RND_MODE_PARAM _EXC_FLAGS_PARAM
+                            _EXC_MASKS_PARAM _EXC_INFO_PARAM);
+     extern void bid128ddd_fma (UINT128 * pres, UINT64 * px,
+                               UINT64 * py, UINT64 * pz
+                               _RND_MODE_PARAM _EXC_FLAGS_PARAM
+                               _EXC_MASKS_PARAM _EXC_INFO_PARAM);
+     extern void bid128ddq_fma (UINT128 * pres, UINT64 * px,
+                               UINT64 * py, UINT128 * pz
+                               _RND_MODE_PARAM _EXC_FLAGS_PARAM
+                               _EXC_MASKS_PARAM _EXC_INFO_PARAM);
+     extern void bid128dqd_fma (UINT128 * pres, UINT64 * px,
+                               UINT128 * py, UINT64 * pz
+                               _RND_MODE_PARAM _EXC_FLAGS_PARAM
+                               _EXC_MASKS_PARAM _EXC_INFO_PARAM);
+     extern void bid128dqq_fma (UINT128 * pres, UINT64 * px,
+                               UINT128 * py, UINT128 * pz
+                               _RND_MODE_PARAM _EXC_FLAGS_PARAM
+                               _EXC_MASKS_PARAM _EXC_INFO_PARAM);
+     extern void bid128qdd_fma (UINT128 * pres, UINT128 * px,
+                               UINT64 * py, UINT64 * pz
+                               _RND_MODE_PARAM _EXC_FLAGS_PARAM
+                               _EXC_MASKS_PARAM _EXC_INFO_PARAM);
+     extern void bid128qdq_fma (UINT128 * pres, UINT128 * px,
+                               UINT64 * py, UINT128 * pz
+                               _RND_MODE_PARAM _EXC_FLAGS_PARAM
+                               _EXC_MASKS_PARAM _EXC_INFO_PARAM);
+     extern void bid128qqd_fma (UINT128 * pres, UINT128 * px,
+                               UINT128 * py, UINT64 * pz
+                               _RND_MODE_PARAM _EXC_FLAGS_PARAM
+                               _EXC_MASKS_PARAM _EXC_INFO_PARAM);
+     // Note: bid128qqq_fma is represented by bid128_fma
+     // Note: bid64ddd_fma is represented by bid64_fma
+     extern void bid64ddq_fma (UINT64 * pres, UINT64 * px,
+                              UINT64 * py, UINT128 * pz
+                              _RND_MODE_PARAM _EXC_FLAGS_PARAM
+                              _EXC_MASKS_PARAM _EXC_INFO_PARAM);
+     extern void bid64dqd_fma (UINT64 * pres, UINT64 * px,
+                              UINT128 * py, UINT64 * pz
+                              _RND_MODE_PARAM _EXC_FLAGS_PARAM
+                              _EXC_MASKS_PARAM _EXC_INFO_PARAM);
+     extern void bid64dqq_fma (UINT64 * pres, UINT64 * px,
+                              UINT128 * py, UINT128 * pz
+                              _RND_MODE_PARAM _EXC_FLAGS_PARAM
+                              _EXC_MASKS_PARAM _EXC_INFO_PARAM);
+     extern void bid64qdd_fma (UINT64 * pres, UINT128 * px,
+                              UINT64 * py, UINT64 * pz
+                              _RND_MODE_PARAM _EXC_FLAGS_PARAM
+                              _EXC_MASKS_PARAM _EXC_INFO_PARAM);
+     extern void bid64qdq_fma (UINT64 * pres, UINT128 * px,
+                              UINT64 * py, UINT128 * pz
+                              _RND_MODE_PARAM _EXC_FLAGS_PARAM
+                              _EXC_MASKS_PARAM _EXC_INFO_PARAM);
+     extern void bid64qqd_fma (UINT64 * pres, UINT128 * px,
+                              UINT128 * py, UINT64 * pz
+                              _RND_MODE_PARAM _EXC_FLAGS_PARAM
+                              _EXC_MASKS_PARAM _EXC_INFO_PARAM);
+     extern void bid64qqq_fma (UINT64 * pres, UINT128 * px,
+                              UINT128 * py, UINT128 * pz
+                              _RND_MODE_PARAM _EXC_FLAGS_PARAM
+                              _EXC_MASKS_PARAM _EXC_INFO_PARAM);
+
+     extern void bid128_sqrt (UINT128 * pres,
+                             UINT128 *
+                             px _RND_MODE_PARAM _EXC_FLAGS_PARAM
+                             _EXC_MASKS_PARAM _EXC_INFO_PARAM);
+     extern void bid128d_sqrt (UINT128 * pres, UINT64 * px
+                              _RND_MODE_PARAM _EXC_FLAGS_PARAM
+                              _EXC_MASKS_PARAM _EXC_INFO_PARAM);
+
+     extern void bid64_add (UINT64 * pres, UINT64 * px,
+                           UINT64 *
+                           py _RND_MODE_PARAM _EXC_FLAGS_PARAM
+                           _EXC_MASKS_PARAM _EXC_INFO_PARAM);
+     extern void bid64dq_add (UINT64 * pres, UINT64 * px,
+                             UINT128 * py
+                             _RND_MODE_PARAM _EXC_FLAGS_PARAM
+                             _EXC_MASKS_PARAM _EXC_INFO_PARAM);
+     extern void bid64qd_add (UINT64 * pres, UINT128 * px,
+                             UINT64 * py
+                             _RND_MODE_PARAM _EXC_FLAGS_PARAM
+                             _EXC_MASKS_PARAM _EXC_INFO_PARAM);
+     extern void bid64qq_add (UINT64 * pres, UINT128 * px,
+                             UINT128 * py
+                             _RND_MODE_PARAM _EXC_FLAGS_PARAM
+                             _EXC_MASKS_PARAM _EXC_INFO_PARAM);
+     extern void bid64_sub (UINT64 * pres, UINT64 * px,
+                           UINT64 *
+                           py _RND_MODE_PARAM _EXC_FLAGS_PARAM
+                           _EXC_MASKS_PARAM _EXC_INFO_PARAM);
+     extern void bid64dq_sub (UINT64 * pres, UINT64 * px,
+                             UINT128 * py
+                             _RND_MODE_PARAM _EXC_FLAGS_PARAM
+                             _EXC_MASKS_PARAM _EXC_INFO_PARAM);
+     extern void bid64qd_sub (UINT64 * pres, UINT128 * px,
+                             UINT64 * py
+                             _RND_MODE_PARAM _EXC_FLAGS_PARAM
+                             _EXC_MASKS_PARAM _EXC_INFO_PARAM);
+     extern void bid64qq_sub (UINT64 * pres, UINT128 * px,
+                             UINT128 * py
+                             _RND_MODE_PARAM _EXC_FLAGS_PARAM
+                             _EXC_MASKS_PARAM _EXC_INFO_PARAM);
+     extern void bid64_mul (UINT64 * pres, UINT64 * px,
+                           UINT64 * py
+                           _RND_MODE_PARAM _EXC_FLAGS_PARAM
+                           _EXC_MASKS_PARAM _EXC_INFO_PARAM);
+     extern void bid64dq_mul (UINT64 * pres, UINT64 * px,
+                             UINT128 * py
+                             _RND_MODE_PARAM _EXC_FLAGS_PARAM
+                             _EXC_MASKS_PARAM _EXC_INFO_PARAM);
+     extern void bid64qd_mul (UINT64 * pres, UINT128 * px,
+                             UINT64 * py
+                             _RND_MODE_PARAM _EXC_FLAGS_PARAM
+                             _EXC_MASKS_PARAM _EXC_INFO_PARAM);
+     extern void bid64qq_mul (UINT64 * pres, UINT128 * px,
+                             UINT128 * py
+                             _RND_MODE_PARAM _EXC_FLAGS_PARAM
+                             _EXC_MASKS_PARAM _EXC_INFO_PARAM);
+     extern void bid64_div (UINT64 * pres, UINT64 * px,
+                           UINT64 *
+                           py _RND_MODE_PARAM _EXC_FLAGS_PARAM
+                           _EXC_MASKS_PARAM _EXC_INFO_PARAM);
+     extern void bid64dq_div (UINT64 * pres, UINT64 * px,
+                             UINT128 * py
+                             _RND_MODE_PARAM _EXC_FLAGS_PARAM
+                             _EXC_MASKS_PARAM _EXC_INFO_PARAM);
+     extern void bid64qd_div (UINT64 * pres, UINT128 * px,
+                             UINT64 * py
+                             _RND_MODE_PARAM _EXC_FLAGS_PARAM
+                             _EXC_MASKS_PARAM _EXC_INFO_PARAM);
+     extern void bid64qq_div (UINT64 * pres, UINT128 * px,
+                             UINT128 * py
+                             _RND_MODE_PARAM _EXC_FLAGS_PARAM
+                             _EXC_MASKS_PARAM _EXC_INFO_PARAM);
+     extern void bid64_fma (UINT64 * pres, UINT64 * px,
+                           UINT64 * py,
+                           UINT64 *
+                           pz _RND_MODE_PARAM _EXC_FLAGS_PARAM
+                           _EXC_MASKS_PARAM _EXC_INFO_PARAM);
+     extern void bid64_sqrt (UINT64 * pres,
+                            UINT64 *
+                            px _RND_MODE_PARAM _EXC_FLAGS_PARAM
+                            _EXC_MASKS_PARAM _EXC_INFO_PARAM);
+     extern void bid64q_sqrt (UINT64 * pres, UINT128 * px
+                             _RND_MODE_PARAM _EXC_FLAGS_PARAM
+                             _EXC_MASKS_PARAM _EXC_INFO_PARAM);
+
+     extern void bid128_to_int8_rnint (char *pres,
+                                      UINT128 *
+                                      px _EXC_FLAGS_PARAM
+                                      _EXC_MASKS_PARAM
+                                      _EXC_INFO_PARAM);
+     extern void bid128_to_int8_xrnint (char *pres,
+                                       UINT128 *
+                                       px _EXC_FLAGS_PARAM
+                                       _EXC_MASKS_PARAM
+                                       _EXC_INFO_PARAM);
+     extern void bid128_to_int8_rninta (char *pres,
+                                       UINT128 *
+                                       px _EXC_FLAGS_PARAM
+                                       _EXC_MASKS_PARAM
+                                       _EXC_INFO_PARAM);
+     extern void bid128_to_int8_xrninta (char *pres,
+                                        UINT128 *
+                                        px _EXC_FLAGS_PARAM
+                                        _EXC_MASKS_PARAM
+                                        _EXC_INFO_PARAM);
+     extern void bid128_to_int8_int (char *pres,
+                                    UINT128 *
+                                    px _EXC_FLAGS_PARAM
+                                    _EXC_MASKS_PARAM _EXC_INFO_PARAM);
+     extern void bid128_to_int8_xint (char *pres,
+                                     UINT128 *
+                                     px _EXC_FLAGS_PARAM
+                                     _EXC_MASKS_PARAM _EXC_INFO_PARAM);
+     extern void bid128_to_int8_floor (char *pres,
+                                      UINT128 *
+                                      px _EXC_FLAGS_PARAM
+                                      _EXC_MASKS_PARAM
+                                      _EXC_INFO_PARAM);
+     extern void bid128_to_int8_xfloor (char *pres,
+                                       UINT128 *
+                                       px _EXC_FLAGS_PARAM
+                                       _EXC_MASKS_PARAM
+                                       _EXC_INFO_PARAM);
+     extern void bid128_to_int8_ceil (char *pres,
+                                     UINT128 *
+                                     px _EXC_FLAGS_PARAM
+                                     _EXC_MASKS_PARAM _EXC_INFO_PARAM);
+     extern void bid128_to_int8_xceil (char *pres,
+                                      UINT128 *
+                                      px _EXC_FLAGS_PARAM
+                                      _EXC_MASKS_PARAM
+                                      _EXC_INFO_PARAM);
+     extern void bid128_to_int16_rnint (short *pres,
+                                       UINT128 *
+                                       px _EXC_FLAGS_PARAM
+                                       _EXC_MASKS_PARAM
+                                       _EXC_INFO_PARAM);
+     extern void bid128_to_int16_xrnint (short *pres,
+                                        UINT128 *
+                                        px _EXC_FLAGS_PARAM
+                                        _EXC_MASKS_PARAM
+                                        _EXC_INFO_PARAM);
+     extern void bid128_to_int16_rninta (short *pres,
+                                        UINT128 *
+                                        px _EXC_FLAGS_PARAM
+                                        _EXC_MASKS_PARAM
+                                        _EXC_INFO_PARAM);
+     extern void bid128_to_int16_xrninta (short *pres,
+                                         UINT128 *
+                                         px _EXC_FLAGS_PARAM
+                                         _EXC_MASKS_PARAM
+                                         _EXC_INFO_PARAM);
+     extern void bid128_to_int16_int (short *pres,
+                                     UINT128 *
+                                     px _EXC_FLAGS_PARAM
+                                     _EXC_MASKS_PARAM _EXC_INFO_PARAM);
+     extern void bid128_to_int16_xint (short *pres,
+                                      UINT128 *
+                                      px _EXC_FLAGS_PARAM
+                                      _EXC_MASKS_PARAM
+                                      _EXC_INFO_PARAM);
+     extern void bid128_to_int16_floor (short *pres,
+                                       UINT128 *
+                                       px _EXC_FLAGS_PARAM
+                                       _EXC_MASKS_PARAM
+                                       _EXC_INFO_PARAM);
+     extern void bid128_to_int16_xfloor (short *pres,
+                                        UINT128 *
+                                        px _EXC_FLAGS_PARAM
+                                        _EXC_MASKS_PARAM
+                                        _EXC_INFO_PARAM);
+     extern void bid128_to_int16_ceil (short *pres,
+                                      UINT128 *
+                                      px _EXC_FLAGS_PARAM
+                                      _EXC_MASKS_PARAM
+                                      _EXC_INFO_PARAM);
+     extern void bid128_to_int16_xceil (short *pres,
+                                       UINT128 *
+                                       px _EXC_FLAGS_PARAM
+                                       _EXC_MASKS_PARAM
+                                       _EXC_INFO_PARAM);
+     extern void bid128_to_uint8_rnint (unsigned char *pres,
+                                       UINT128 *
+                                       px _EXC_FLAGS_PARAM
+                                       _EXC_MASKS_PARAM
+                                       _EXC_INFO_PARAM);
+     extern void bid128_to_uint8_xrnint (unsigned char *pres,
+                                        UINT128 *
+                                        px _EXC_FLAGS_PARAM
+                                        _EXC_MASKS_PARAM
+                                        _EXC_INFO_PARAM);
+     extern void bid128_to_uint8_rninta (unsigned char *pres,
+                                        UINT128 *
+                                        px _EXC_FLAGS_PARAM
+                                        _EXC_MASKS_PARAM
+                                        _EXC_INFO_PARAM);
+     extern void bid128_to_uint8_xrninta (unsigned char *pres,
+                                         UINT128 *
+                                         px _EXC_FLAGS_PARAM
+                                         _EXC_MASKS_PARAM
+                                         _EXC_INFO_PARAM);
+     extern void bid128_to_uint8_int (unsigned char *pres,
+                                     UINT128 *
+                                     px _EXC_FLAGS_PARAM
+                                     _EXC_MASKS_PARAM _EXC_INFO_PARAM);
+     extern void bid128_to_uint8_xint (unsigned char *pres,
+                                      UINT128 *
+                                      px _EXC_FLAGS_PARAM
+                                      _EXC_MASKS_PARAM
+                                      _EXC_INFO_PARAM);
+     extern void bid128_to_uint8_floor (unsigned char *pres,
+                                       UINT128 *
+                                       px _EXC_FLAGS_PARAM
+                                       _EXC_MASKS_PARAM
+                                       _EXC_INFO_PARAM);
+     extern void bid128_to_uint8_xfloor (unsigned char *pres,
+                                        UINT128 *
+                                        px _EXC_FLAGS_PARAM
+                                        _EXC_MASKS_PARAM
+                                        _EXC_INFO_PARAM);
+     extern void bid128_to_uint8_ceil (unsigned char *pres,
+                                      UINT128 *
+                                      px _EXC_FLAGS_PARAM
+                                      _EXC_MASKS_PARAM
+                                      _EXC_INFO_PARAM);
+     extern void bid128_to_uint8_xceil (unsigned char *pres,
+                                       UINT128 *
+                                       px _EXC_FLAGS_PARAM
+                                       _EXC_MASKS_PARAM
+                                       _EXC_INFO_PARAM);
+     extern void bid128_to_uint16_rnint (unsigned short *pres,
+                                        UINT128 *
+                                        px _EXC_FLAGS_PARAM
+                                        _EXC_MASKS_PARAM
+                                        _EXC_INFO_PARAM);
+     extern void bid128_to_uint16_xrnint (unsigned short *pres,
+                                         UINT128 *
+                                         px _EXC_FLAGS_PARAM
+                                         _EXC_MASKS_PARAM
+                                         _EXC_INFO_PARAM);
+     extern void bid128_to_uint16_rninta (unsigned short *pres,
+                                         UINT128 *
+                                         px _EXC_FLAGS_PARAM
+                                         _EXC_MASKS_PARAM
+                                         _EXC_INFO_PARAM);
+     extern void bid128_to_uint16_xrninta (unsigned short *pres,
+                                          UINT128 *
+                                          px _EXC_FLAGS_PARAM
+                                          _EXC_MASKS_PARAM
+                                          _EXC_INFO_PARAM);
+     extern void bid128_to_uint16_int (unsigned short *pres,
+                                      UINT128 *
+                                      px _EXC_FLAGS_PARAM
+                                      _EXC_MASKS_PARAM
+                                      _EXC_INFO_PARAM);
+     extern void bid128_to_uint16_xint (unsigned short *pres,
+                                       UINT128 *
+                                       px _EXC_FLAGS_PARAM
+                                       _EXC_MASKS_PARAM
+                                       _EXC_INFO_PARAM);
+     extern void bid128_to_uint16_floor (unsigned short *pres,
+                                        UINT128 *
+                                        px _EXC_FLAGS_PARAM
+                                        _EXC_MASKS_PARAM
+                                        _EXC_INFO_PARAM);
+     extern void bid128_to_uint16_xfloor (unsigned short *pres,
+                                         UINT128 *
+                                         px _EXC_FLAGS_PARAM
+                                         _EXC_MASKS_PARAM
+                                         _EXC_INFO_PARAM);
+     extern void bid128_to_uint16_ceil (unsigned short *pres,
+                                       UINT128 *
+                                       px _EXC_FLAGS_PARAM
+                                       _EXC_MASKS_PARAM
+                                       _EXC_INFO_PARAM);
+     extern void bid128_to_uint16_xceil (unsigned short *pres,
+                                        UINT128 *
+                                        px _EXC_FLAGS_PARAM
+                                        _EXC_MASKS_PARAM
+                                        _EXC_INFO_PARAM);
+     extern void bid128_to_int32_rnint (int *pres,
+                                       UINT128 *
+                                       px _EXC_FLAGS_PARAM
+                                       _EXC_MASKS_PARAM
+                                       _EXC_INFO_PARAM);
+     extern void bid128_to_int32_xrnint (int *pres,
+                                        UINT128 *
+                                        px _EXC_FLAGS_PARAM
+                                        _EXC_MASKS_PARAM
+                                        _EXC_INFO_PARAM);
+     extern void bid128_to_int32_rninta (int *pres,
+                                        UINT128 *
+                                        px _EXC_FLAGS_PARAM
+                                        _EXC_MASKS_PARAM
+                                        _EXC_INFO_PARAM);
+     extern void bid128_to_int32_xrninta (int *pres,
+                                         UINT128 *
+                                         px _EXC_FLAGS_PARAM
+                                         _EXC_MASKS_PARAM
+                                         _EXC_INFO_PARAM);
+     extern void bid128_to_int32_int (int *pres,
+                                     UINT128 *
+                                     px _EXC_FLAGS_PARAM
+                                     _EXC_MASKS_PARAM _EXC_INFO_PARAM);
+     extern void bid128_to_int32_xint (int *pres,
+                                      UINT128 *
+                                      px _EXC_FLAGS_PARAM
+                                      _EXC_MASKS_PARAM
+                                      _EXC_INFO_PARAM);
+     extern void bid128_to_int32_floor (int *pres,
+                                       UINT128 *
+                                       px _EXC_FLAGS_PARAM
+                                       _EXC_MASKS_PARAM
+                                       _EXC_INFO_PARAM);
+     extern void bid128_to_int32_xfloor (int *pres,
+                                        UINT128 *
+                                        px _EXC_FLAGS_PARAM
+                                        _EXC_MASKS_PARAM
+                                        _EXC_INFO_PARAM);
+     extern void bid128_to_int32_ceil (int *pres,
+                                      UINT128 *
+                                      px _EXC_FLAGS_PARAM
+                                      _EXC_MASKS_PARAM
+                                      _EXC_INFO_PARAM);
+     extern void bid128_to_int32_xceil (int *pres,
+                                       UINT128 *
+                                       px _EXC_FLAGS_PARAM
+                                       _EXC_MASKS_PARAM
+                                       _EXC_INFO_PARAM);
+     extern void bid128_to_uint32_rnint (unsigned int *pres,
+                                        UINT128 *
+                                        px _EXC_FLAGS_PARAM
+                                        _EXC_MASKS_PARAM
+                                        _EXC_INFO_PARAM);
+     extern void bid128_to_uint32_xrnint (unsigned int *pres,
+                                         UINT128 *
+                                         px _EXC_FLAGS_PARAM
+                                         _EXC_MASKS_PARAM
+                                         _EXC_INFO_PARAM);
+     extern void bid128_to_uint32_rninta (unsigned int *pres,
+                                         UINT128 *
+                                         px _EXC_FLAGS_PARAM
+                                         _EXC_MASKS_PARAM
+                                         _EXC_INFO_PARAM);
+     extern void bid128_to_uint32_xrninta (unsigned int *pres,
+                                          UINT128 *
+                                          px _EXC_FLAGS_PARAM
+                                          _EXC_MASKS_PARAM
+                                          _EXC_INFO_PARAM);
+     extern void bid128_to_uint32_int (unsigned int *pres,
+                                      UINT128 *
+                                      px _EXC_FLAGS_PARAM
+                                      _EXC_MASKS_PARAM
+                                      _EXC_INFO_PARAM);
+     extern void bid128_to_uint32_xint (unsigned int *pres,
+                                       UINT128 *
+                                       px _EXC_FLAGS_PARAM
+                                       _EXC_MASKS_PARAM
+                                       _EXC_INFO_PARAM);
+     extern void bid128_to_uint32_floor (unsigned int *pres,
+                                        UINT128 *
+                                        px _EXC_FLAGS_PARAM
+                                        _EXC_MASKS_PARAM
+                                        _EXC_INFO_PARAM);
+     extern void bid128_to_uint32_xfloor (unsigned int *pres,
+                                         UINT128 *
+                                         px _EXC_FLAGS_PARAM
+                                         _EXC_MASKS_PARAM
+                                         _EXC_INFO_PARAM);
+     extern void bid128_to_uint32_ceil (unsigned int *pres,
+                                       UINT128 *
+                                       px _EXC_FLAGS_PARAM
+                                       _EXC_MASKS_PARAM
+                                       _EXC_INFO_PARAM);
+     extern void bid128_to_uint32_xceil (unsigned int *pres,
+                                        UINT128 *
+                                        px _EXC_FLAGS_PARAM
+                                        _EXC_MASKS_PARAM
+                                        _EXC_INFO_PARAM);
+     extern void bid128_to_int64_rnint (SINT64 * pres,
+                                       UINT128 *
+                                       px _EXC_FLAGS_PARAM
+                                       _EXC_MASKS_PARAM
+                                       _EXC_INFO_PARAM);
+     extern void bid128_to_int64_xrnint (SINT64 * pres,
+                                        UINT128 *
+                                        px _EXC_FLAGS_PARAM
+                                        _EXC_MASKS_PARAM
+                                        _EXC_INFO_PARAM);
+     extern void bid128_to_int64_rninta (SINT64 * pres,
+                                        UINT128 *
+                                        px _EXC_FLAGS_PARAM
+                                        _EXC_MASKS_PARAM
+                                        _EXC_INFO_PARAM);
+     extern void bid128_to_int64_xrninta (SINT64 * pres,
+                                         UINT128 *
+                                         px _EXC_FLAGS_PARAM
+                                         _EXC_MASKS_PARAM
+                                         _EXC_INFO_PARAM);
+     extern void bid128_to_int64_int (SINT64 * pres,
+                                     UINT128 *
+                                     px _EXC_FLAGS_PARAM
+                                     _EXC_MASKS_PARAM _EXC_INFO_PARAM);
+     extern void bid128_to_int64_xint (SINT64 * pres,
+                                      UINT128 *
+                                      px _EXC_FLAGS_PARAM
+                                      _EXC_MASKS_PARAM
+                                      _EXC_INFO_PARAM);
+     extern void bid128_to_int64_floor (SINT64 * pres,
+                                       UINT128 *
+                                       px _EXC_FLAGS_PARAM
+                                       _EXC_MASKS_PARAM
+                                       _EXC_INFO_PARAM);
+     extern void bid128_to_int64_xfloor (SINT64 * pres,
+                                        UINT128 *
+                                        px _EXC_FLAGS_PARAM
+                                        _EXC_MASKS_PARAM
+                                        _EXC_INFO_PARAM);
+     extern void bid128_to_int64_ceil (SINT64 * pres,
+                                      UINT128 *
+                                      px _EXC_FLAGS_PARAM
+                                      _EXC_MASKS_PARAM
+                                      _EXC_INFO_PARAM);
+     extern void bid128_to_int64_xceil (SINT64 * pres,
+                                       UINT128 *
+                                       px _EXC_FLAGS_PARAM
+                                       _EXC_MASKS_PARAM
+                                       _EXC_INFO_PARAM);
+     extern void bid128_to_uint64_rnint (UINT64 * pres,
+                                        UINT128 *
+                                        px _EXC_FLAGS_PARAM
+                                        _EXC_MASKS_PARAM
+                                        _EXC_INFO_PARAM);
+     extern void bid128_to_uint64_xrnint (UINT64 * pres,
+                                         UINT128 *
+                                         px _EXC_FLAGS_PARAM
+                                         _EXC_MASKS_PARAM
+                                         _EXC_INFO_PARAM);
+     extern void bid128_to_uint64_rninta (UINT64 * pres,
+                                         UINT128 *
+                                         px _EXC_FLAGS_PARAM
+                                         _EXC_MASKS_PARAM
+                                         _EXC_INFO_PARAM);
+     extern void bid128_to_uint64_xrninta (UINT64 * pres,
+                                          UINT128 *
+                                          px _EXC_FLAGS_PARAM
+                                          _EXC_MASKS_PARAM
+                                          _EXC_INFO_PARAM);
+     extern void bid128_to_uint64_int (UINT64 * pres,
+                                      UINT128 *
+                                      px _EXC_FLAGS_PARAM
+                                      _EXC_MASKS_PARAM
+                                      _EXC_INFO_PARAM);
+     extern void bid128_to_uint64_xint (UINT64 * pres,
+                                       UINT128 *
+                                       px _EXC_FLAGS_PARAM
+                                       _EXC_MASKS_PARAM
+                                       _EXC_INFO_PARAM);
+     extern void bid128_to_uint64_floor (UINT64 * pres,
+                                        UINT128 *
+                                        px _EXC_FLAGS_PARAM
+                                        _EXC_MASKS_PARAM
+                                        _EXC_INFO_PARAM);
+     extern void bid128_to_uint64_xfloor (UINT64 * pres,
+                                         UINT128 *
+                                         px _EXC_FLAGS_PARAM
+                                         _EXC_MASKS_PARAM
+                                         _EXC_INFO_PARAM);
+     extern void bid128_to_uint64_ceil (UINT64 * pres,
+                                       UINT128 *
+                                       px _EXC_FLAGS_PARAM
+                                       _EXC_MASKS_PARAM
+                                       _EXC_INFO_PARAM);
+     extern void bid128_to_uint64_xceil (UINT64 * pres,
+                                        UINT128 *
+                                        px _EXC_FLAGS_PARAM
+                                        _EXC_MASKS_PARAM
+                                        _EXC_INFO_PARAM);
+     extern void bid64_to_int32_rnint (int *pres,
+                                      UINT64 *
+                                      px _EXC_FLAGS_PARAM
+                                      _EXC_MASKS_PARAM
+                                      _EXC_INFO_PARAM);
+     extern void bid64_to_int32_xrnint (int *pres,
+                                       UINT64 *
+                                       px _EXC_FLAGS_PARAM
+                                       _EXC_MASKS_PARAM
+                                       _EXC_INFO_PARAM);
+     extern void bid64_to_int32_rninta (int *pres,
+                                       UINT64 *
+                                       px _EXC_FLAGS_PARAM
+                                       _EXC_MASKS_PARAM
+                                       _EXC_INFO_PARAM);
+     extern void bid64_to_int32_xrninta (int *pres,
+                                        UINT64 *
+                                        px _EXC_FLAGS_PARAM
+                                        _EXC_MASKS_PARAM
+                                        _EXC_INFO_PARAM);
+     extern void bid64_to_int32_int (int *pres,
+                                    UINT64 *
+                                    px _EXC_FLAGS_PARAM
+                                    _EXC_MASKS_PARAM _EXC_INFO_PARAM);
+     extern void bid64_to_int32_xint (int *pres,
+                                     UINT64 *
+                                     px _EXC_FLAGS_PARAM
+                                     _EXC_MASKS_PARAM _EXC_INFO_PARAM);
+     extern void bid64_to_int32_floor (int *pres,
+                                      UINT64 *
+                                      px _EXC_FLAGS_PARAM
+                                      _EXC_MASKS_PARAM
+                                      _EXC_INFO_PARAM);
+     extern void bid64_to_int32_xfloor (int *pres,
+                                       UINT64 *
+                                       px _EXC_FLAGS_PARAM
+                                       _EXC_MASKS_PARAM
+                                       _EXC_INFO_PARAM);
+     extern void bid64_to_int32_ceil (int *pres,
+                                     UINT64 *
+                                     px _EXC_FLAGS_PARAM
+                                     _EXC_MASKS_PARAM _EXC_INFO_PARAM);
+     extern void bid64_to_int32_xceil (int *pres,
+                                      UINT64 *
+                                      px _EXC_FLAGS_PARAM
+                                      _EXC_MASKS_PARAM
+                                      _EXC_INFO_PARAM);
+     extern void bid64_to_int8_rnint (char *pres,
+                                     UINT64 *
+                                     px _EXC_FLAGS_PARAM
+                                     _EXC_MASKS_PARAM _EXC_INFO_PARAM);
+     extern void bid64_to_int8_xrnint (char *pres,
+                                      UINT64 *
+                                      px _EXC_FLAGS_PARAM
+                                      _EXC_MASKS_PARAM
+                                      _EXC_INFO_PARAM);
+     extern void bid64_to_int8_rninta (char *pres,
+                                      UINT64 *
+                                      px _EXC_FLAGS_PARAM
+                                      _EXC_MASKS_PARAM
+                                      _EXC_INFO_PARAM);
+     extern void bid64_to_int8_xrninta (char *pres,
+                                       UINT64 *
+                                       px _EXC_FLAGS_PARAM
+                                       _EXC_MASKS_PARAM
+                                       _EXC_INFO_PARAM);
+     extern void bid64_to_int8_int (char *pres,
+                                   UINT64 *
+                                   px _EXC_FLAGS_PARAM _EXC_MASKS_PARAM
+                                   _EXC_INFO_PARAM);
+     extern void bid64_to_int8_xint (char *pres,
+                                    UINT64 *
+                                    px _EXC_FLAGS_PARAM
+                                    _EXC_MASKS_PARAM _EXC_INFO_PARAM);
+     extern void bid64_to_int8_floor (char *pres,
+                                     UINT64 *
+                                     px _EXC_FLAGS_PARAM
+                                     _EXC_MASKS_PARAM _EXC_INFO_PARAM);
+     extern void bid64_to_int8_xfloor (char *pres,
+                                      UINT64 *
+                                      px _EXC_FLAGS_PARAM
+                                      _EXC_MASKS_PARAM
+                                      _EXC_INFO_PARAM);
+     extern void bid64_to_int8_ceil (char *pres,
+                                    UINT64 *
+                                    px _EXC_FLAGS_PARAM
+                                    _EXC_MASKS_PARAM _EXC_INFO_PARAM);
+     extern void bid64_to_int8_xceil (char *pres,
+                                     UINT64 *
+                                     px _EXC_FLAGS_PARAM
+                                     _EXC_MASKS_PARAM _EXC_INFO_PARAM);
+     extern void bid64_to_int16_rnint (short *pres,
+                                      UINT64 *
+                                      px _EXC_FLAGS_PARAM
+                                      _EXC_MASKS_PARAM
+                                      _EXC_INFO_PARAM);
+     extern void bid64_to_int16_xrnint (short *pres,
+                                       UINT64 *
+                                       px _EXC_FLAGS_PARAM
+                                       _EXC_MASKS_PARAM
+                                       _EXC_INFO_PARAM);
+     extern void bid64_to_int16_rninta (short *pres,
+                                       UINT64 *
+                                       px _EXC_FLAGS_PARAM
+                                       _EXC_MASKS_PARAM
+                                       _EXC_INFO_PARAM);
+     extern void bid64_to_int16_xrninta (short *pres,
+                                        UINT64 *
+                                        px _EXC_FLAGS_PARAM
+                                        _EXC_MASKS_PARAM
+                                        _EXC_INFO_PARAM);
+     extern void bid64_to_int16_int (short *pres,
+                                    UINT64 *
+                                    px _EXC_FLAGS_PARAM
+                                    _EXC_MASKS_PARAM _EXC_INFO_PARAM);
+     extern void bid64_to_int16_xint (short *pres,
+                                     UINT64 *
+                                     px _EXC_FLAGS_PARAM
+                                     _EXC_MASKS_PARAM _EXC_INFO_PARAM);
+     extern void bid64_to_int16_floor (short *pres,
+                                      UINT64 *
+                                      px _EXC_FLAGS_PARAM
+                                      _EXC_MASKS_PARAM
+                                      _EXC_INFO_PARAM);
+     extern void bid64_to_int16_xfloor (short *pres,
+                                       UINT64 *
+                                       px _EXC_FLAGS_PARAM
+                                       _EXC_MASKS_PARAM
+                                       _EXC_INFO_PARAM);
+     extern void bid64_to_int16_ceil (short *pres,
+                                     UINT64 *
+                                     px _EXC_FLAGS_PARAM
+                                     _EXC_MASKS_PARAM _EXC_INFO_PARAM);
+     extern void bid64_to_int16_xceil (short *pres,
+                                      UINT64 *
+                                      px _EXC_FLAGS_PARAM
+                                      _EXC_MASKS_PARAM
+                                      _EXC_INFO_PARAM);
+     extern void bid64_to_uint8_rnint (unsigned char *pres,
+                                      UINT64 *
+                                      px _EXC_FLAGS_PARAM
+                                      _EXC_MASKS_PARAM
+                                      _EXC_INFO_PARAM);
+     extern void bid64_to_uint8_xrnint (unsigned char *pres,
+                                       UINT64 *
+                                       px _EXC_FLAGS_PARAM
+                                       _EXC_MASKS_PARAM
+                                       _EXC_INFO_PARAM);
+     extern void bid64_to_uint8_rninta (unsigned char *pres,
+                                       UINT64 *
+                                       px _EXC_FLAGS_PARAM
+                                       _EXC_MASKS_PARAM
+                                       _EXC_INFO_PARAM);
+     extern void bid64_to_uint8_xrninta (unsigned char *pres,
+                                        UINT64 *
+                                        px _EXC_FLAGS_PARAM
+                                        _EXC_MASKS_PARAM
+                                        _EXC_INFO_PARAM);
+     extern void bid64_to_uint8_int (unsigned char *pres,
+                                    UINT64 *
+                                    px _EXC_FLAGS_PARAM
+                                    _EXC_MASKS_PARAM _EXC_INFO_PARAM);
+     extern void bid64_to_uint8_xint (unsigned char *pres,
+                                     UINT64 *
+                                     px _EXC_FLAGS_PARAM
+                                     _EXC_MASKS_PARAM _EXC_INFO_PARAM);
+     extern void bid64_to_uint8_floor (unsigned char *pres,
+                                      UINT64 *
+                                      px _EXC_FLAGS_PARAM
+                                      _EXC_MASKS_PARAM
+                                      _EXC_INFO_PARAM);
+     extern void bid64_to_uint8_xfloor (unsigned char *pres,
+                                       UINT64 *
+                                       px _EXC_FLAGS_PARAM
+                                       _EXC_MASKS_PARAM
+                                       _EXC_INFO_PARAM);
+     extern void bid64_to_uint8_ceil (unsigned char *pres,
+                                     UINT64 *
+                                     px _EXC_FLAGS_PARAM
+                                     _EXC_MASKS_PARAM _EXC_INFO_PARAM);
+     extern void bid64_to_uint8_xceil (unsigned char *pres,
+                                      UINT64 *
+                                      px _EXC_FLAGS_PARAM
+                                      _EXC_MASKS_PARAM
+                                      _EXC_INFO_PARAM);
+     extern void bid64_to_uint16_rnint (unsigned short *pres,
+                                       UINT64 *
+                                       px _EXC_FLAGS_PARAM
+                                       _EXC_MASKS_PARAM
+                                       _EXC_INFO_PARAM);
+     extern void bid64_to_uint16_xrnint (unsigned short *pres,
+                                        UINT64 *
+                                        px _EXC_FLAGS_PARAM
+                                        _EXC_MASKS_PARAM
+                                        _EXC_INFO_PARAM);
+     extern void bid64_to_uint16_rninta (unsigned short *pres,
+                                        UINT64 *
+                                        px _EXC_FLAGS_PARAM
+                                        _EXC_MASKS_PARAM
+                                        _EXC_INFO_PARAM);
+     extern void bid64_to_uint16_xrninta (unsigned short *pres,
+                                         UINT64 *
+                                         px _EXC_FLAGS_PARAM
+                                         _EXC_MASKS_PARAM
+                                         _EXC_INFO_PARAM);
+     extern void bid64_to_uint16_int (unsigned short *pres,
+                                     UINT64 *
+                                     px _EXC_FLAGS_PARAM
+                                     _EXC_MASKS_PARAM _EXC_INFO_PARAM);
+     extern void bid64_to_uint16_xint (unsigned short *pres,
+                                      UINT64 *
+                                      px _EXC_FLAGS_PARAM
+                                      _EXC_MASKS_PARAM
+                                      _EXC_INFO_PARAM);
+     extern void bid64_to_uint16_floor (unsigned short *pres,
+                                       UINT64 *
+                                       px _EXC_FLAGS_PARAM
+                                       _EXC_MASKS_PARAM
+                                       _EXC_INFO_PARAM);
+     extern void bid64_to_uint16_xfloor (unsigned short *pres,
+                                        UINT64 *
+                                        px _EXC_FLAGS_PARAM
+                                        _EXC_MASKS_PARAM
+                                        _EXC_INFO_PARAM);
+     extern void bid64_to_uint16_ceil (unsigned short *pres,
+                                      UINT64 *
+                                      px _EXC_FLAGS_PARAM
+                                      _EXC_MASKS_PARAM
+                                      _EXC_INFO_PARAM);
+     extern void bid64_to_uint16_xceil (unsigned short *pres,
+                                       UINT64 *
+                                       px _EXC_FLAGS_PARAM
+                                       _EXC_MASKS_PARAM
+                                       _EXC_INFO_PARAM);
+     extern void bid64_to_uint32_rnint (unsigned int *pres,
+                                       UINT64 *
+                                       px _EXC_FLAGS_PARAM
+                                       _EXC_MASKS_PARAM
+                                       _EXC_INFO_PARAM);
+     extern void bid64_to_uint32_xrnint (unsigned int *pres,
+                                        UINT64 *
+                                        px _EXC_FLAGS_PARAM
+                                        _EXC_MASKS_PARAM
+                                        _EXC_INFO_PARAM);
+     extern void bid64_to_uint32_rninta (unsigned int *pres,
+                                        UINT64 *
+                                        px _EXC_FLAGS_PARAM
+                                        _EXC_MASKS_PARAM
+                                        _EXC_INFO_PARAM);
+     extern void bid64_to_uint32_xrninta (unsigned int *pres,
+                                         UINT64 *
+                                         px _EXC_FLAGS_PARAM
+                                         _EXC_MASKS_PARAM
+                                         _EXC_INFO_PARAM);
+     extern void bid64_to_uint32_int (unsigned int *pres,
+                                     UINT64 *
+                                     px _EXC_FLAGS_PARAM
+                                     _EXC_MASKS_PARAM _EXC_INFO_PARAM);
+     extern void bid64_to_uint32_xint (unsigned int *pres,
+                                      UINT64 *
+                                      px _EXC_FLAGS_PARAM
+                                      _EXC_MASKS_PARAM
+                                      _EXC_INFO_PARAM);
+     extern void bid64_to_uint32_floor (unsigned int *pres,
+                                       UINT64 *
+                                       px _EXC_FLAGS_PARAM
+                                       _EXC_MASKS_PARAM
+                                       _EXC_INFO_PARAM);
+     extern void bid64_to_uint32_xfloor (unsigned int *pres,
+                                        UINT64 *
+                                        px _EXC_FLAGS_PARAM
+                                        _EXC_MASKS_PARAM
+                                        _EXC_INFO_PARAM);
+     extern void bid64_to_uint32_ceil (unsigned int *pres,
+                                      UINT64 *
+                                      px _EXC_FLAGS_PARAM
+                                      _EXC_MASKS_PARAM
+                                      _EXC_INFO_PARAM);
+     extern void bid64_to_uint32_xceil (unsigned int *pres,
+                                       UINT64 *
+                                       px _EXC_FLAGS_PARAM
+                                       _EXC_MASKS_PARAM
+                                       _EXC_INFO_PARAM);
+     extern void bid64_to_int64_rnint (SINT64 * pres,
+                                      UINT64 *
+                                      px _EXC_FLAGS_PARAM
+                                      _EXC_MASKS_PARAM
+                                      _EXC_INFO_PARAM);
+     extern void bid64_to_int64_xrnint (SINT64 * pres,
+                                       UINT64 *
+                                       px _EXC_FLAGS_PARAM
+                                       _EXC_MASKS_PARAM
+                                       _EXC_INFO_PARAM);
+     extern void bid64_to_int64_rninta (SINT64 * pres,
+                                       UINT64 *
+                                       px _EXC_FLAGS_PARAM
+                                       _EXC_MASKS_PARAM
+                                       _EXC_INFO_PARAM);
+     extern void bid64_to_int64_xrninta (SINT64 * pres,
+                                        UINT64 *
+                                        px _EXC_FLAGS_PARAM
+                                        _EXC_MASKS_PARAM
+                                        _EXC_INFO_PARAM);
+     extern void bid64_to_int64_int (SINT64 * pres,
+                                    UINT64 *
+                                    px _EXC_FLAGS_PARAM
+                                    _EXC_MASKS_PARAM _EXC_INFO_PARAM);
+     extern void bid64_to_int64_xint (SINT64 * pres,
+                                     UINT64 *
+                                     px _EXC_FLAGS_PARAM
+                                     _EXC_MASKS_PARAM _EXC_INFO_PARAM);
+     extern void bid64_to_int64_floor (SINT64 * pres,
+                                      UINT64 *
+                                      px _EXC_FLAGS_PARAM
+                                      _EXC_MASKS_PARAM
+                                      _EXC_INFO_PARAM);
+     extern void bid64_to_int64_xfloor (SINT64 * pres,
+                                       UINT64 *
+                                       px _EXC_FLAGS_PARAM
+                                       _EXC_MASKS_PARAM
+                                       _EXC_INFO_PARAM);
+     extern void bid64_to_int64_ceil (SINT64 * pres,
+                                     UINT64 *
+                                     px _EXC_FLAGS_PARAM
+                                     _EXC_MASKS_PARAM _EXC_INFO_PARAM);
+     extern void bid64_to_int64_xceil (SINT64 * pres,
+                                      UINT64 *
+                                      px _EXC_FLAGS_PARAM
+                                      _EXC_MASKS_PARAM
+                                      _EXC_INFO_PARAM);
+     extern void bid64_to_uint64_rnint (UINT64 * pres,
+                                       UINT64 *
+                                       px _EXC_FLAGS_PARAM
+                                       _EXC_MASKS_PARAM
+                                       _EXC_INFO_PARAM);
+     extern void bid64_to_uint64_xrnint (UINT64 * pres,
+                                        UINT64 *
+                                        px _EXC_FLAGS_PARAM
+                                        _EXC_MASKS_PARAM
+                                        _EXC_INFO_PARAM);
+     extern void bid64_to_uint64_rninta (UINT64 * pres,
+                                        UINT64 *
+                                        px _EXC_FLAGS_PARAM
+                                        _EXC_MASKS_PARAM
+                                        _EXC_INFO_PARAM);
+     extern void bid64_to_uint64_xrninta (UINT64 * pres,
+                                         UINT64 *
+                                         px _EXC_FLAGS_PARAM
+                                         _EXC_MASKS_PARAM
+                                         _EXC_INFO_PARAM);
+     extern void bid64_to_uint64_int (UINT64 * pres,
+                                     UINT64 *
+                                     px _EXC_FLAGS_PARAM
+                                     _EXC_MASKS_PARAM _EXC_INFO_PARAM);
+     extern void bid64_to_uint64_xint (UINT64 * pres,
+                                      UINT64 *
+                                      px _EXC_FLAGS_PARAM
+                                      _EXC_MASKS_PARAM
+                                      _EXC_INFO_PARAM);
+     extern void bid64_to_uint64_floor (UINT64 * pres,
+                                       UINT64 *
+                                       px _EXC_FLAGS_PARAM
+                                       _EXC_MASKS_PARAM
+                                       _EXC_INFO_PARAM);
+     extern void bid64_to_uint64_xfloor (UINT64 * pres,
+                                        UINT64 *
+                                        px _EXC_FLAGS_PARAM
+                                        _EXC_MASKS_PARAM
+                                        _EXC_INFO_PARAM);
+     extern void bid64_to_uint64_ceil (UINT64 * pres,
+                                      UINT64 *
+                                      px _EXC_FLAGS_PARAM
+                                      _EXC_MASKS_PARAM
+                                      _EXC_INFO_PARAM);
+     extern void bid64_to_uint64_xceil (UINT64 * pres,
+                                       UINT64 *
+                                       px _EXC_FLAGS_PARAM
+                                       _EXC_MASKS_PARAM
+                                       _EXC_INFO_PARAM);
+
+     extern void bid64_quiet_equal (int *pres, UINT64 * px, UINT64 * py
+                                   _EXC_FLAGS_PARAM _EXC_MASKS_PARAM
+                                   _EXC_INFO_PARAM);
+     extern void bid64_quiet_greater (int *pres, UINT64 * px,
+                                     UINT64 *
+                                     py _EXC_FLAGS_PARAM
+                                     _EXC_MASKS_PARAM _EXC_INFO_PARAM);
+     extern void bid64_quiet_greater_equal (int *pres, UINT64 * px,
+                                           UINT64 *
+                                           py _EXC_FLAGS_PARAM
+                                           _EXC_MASKS_PARAM
+                                           _EXC_INFO_PARAM);
+     extern void bid64_quiet_greater_unordered (int *pres, UINT64 * px,
+                                               UINT64 *
+                                               py _EXC_FLAGS_PARAM
+                                               _EXC_MASKS_PARAM
+                                               _EXC_INFO_PARAM);
+     extern void bid64_quiet_less (int *pres, UINT64 * px,
+                                  UINT64 *
+                                  py _EXC_FLAGS_PARAM _EXC_MASKS_PARAM
+                                  _EXC_INFO_PARAM);
+     extern void bid64_quiet_less_equal (int *pres, UINT64 * px,
+                                        UINT64 *
+                                        py _EXC_FLAGS_PARAM
+                                        _EXC_MASKS_PARAM
+                                        _EXC_INFO_PARAM);
+     extern void bid64_quiet_less_unordered (int *pres, UINT64 * px,
+                                            UINT64 *
+                                            py _EXC_FLAGS_PARAM
+                                            _EXC_MASKS_PARAM
+                                            _EXC_INFO_PARAM);
+     extern void bid64_quiet_not_equal (int *pres, UINT64 * px,
+                                       UINT64 *
+                                       py _EXC_FLAGS_PARAM
+                                       _EXC_MASKS_PARAM
+                                       _EXC_INFO_PARAM);
+     extern void bid64_quiet_not_greater (int *pres, UINT64 * px,
+                                         UINT64 *
+                                         py _EXC_FLAGS_PARAM
+                                         _EXC_MASKS_PARAM
+                                         _EXC_INFO_PARAM);
+     extern void bid64_quiet_not_less (int *pres, UINT64 * px,
+                                      UINT64 *
+                                      py _EXC_FLAGS_PARAM
+                                      _EXC_MASKS_PARAM
+                                      _EXC_INFO_PARAM);
+     extern void bid64_quiet_ordered (int *pres, UINT64 * px,
+                                     UINT64 *
+                                     py _EXC_FLAGS_PARAM
+                                     _EXC_MASKS_PARAM _EXC_INFO_PARAM);
+     extern void bid64_quiet_unordered (int *pres, UINT64 * px,
+                                       UINT64 *
+                                       py _EXC_FLAGS_PARAM
+                                       _EXC_MASKS_PARAM
+                                       _EXC_INFO_PARAM);
+     extern void bid64_signaling_greater (int *pres, UINT64 * px,
+                                         UINT64 *
+                                         py _EXC_FLAGS_PARAM
+                                         _EXC_MASKS_PARAM
+                                         _EXC_INFO_PARAM);
+     extern void bid64_signaling_greater_equal (int *pres, UINT64 * px,
+                                               UINT64 *
+                                               py _EXC_FLAGS_PARAM
+                                               _EXC_MASKS_PARAM
+                                               _EXC_INFO_PARAM);
+     extern void bid64_signaling_greater_unordered (int *pres,
+                                                   UINT64 * px,
+                                                   UINT64 *
+                                                   py _EXC_FLAGS_PARAM
+                                                   _EXC_MASKS_PARAM
+                                                   _EXC_INFO_PARAM);
+     extern void bid64_signaling_less (int *pres, UINT64 * px,
+                                      UINT64 *
+                                      py _EXC_FLAGS_PARAM
+                                      _EXC_MASKS_PARAM
+                                      _EXC_INFO_PARAM);
+     extern void bid64_signaling_less_equal (int *pres, UINT64 * px,
+                                            UINT64 *
+                                            py _EXC_FLAGS_PARAM
+                                            _EXC_MASKS_PARAM
+                                            _EXC_INFO_PARAM);
+     extern void bid64_signaling_less_unordered (int *pres, UINT64 * px,
+                                                UINT64 *
+                                                py _EXC_FLAGS_PARAM
+                                                _EXC_MASKS_PARAM
+                                                _EXC_INFO_PARAM);
+     extern void bid64_signaling_not_greater (int *pres, UINT64 * px,
+                                             UINT64 *
+                                             py _EXC_FLAGS_PARAM
+                                             _EXC_MASKS_PARAM
+                                             _EXC_INFO_PARAM);
+     extern void bid64_signaling_not_less (int *pres, UINT64 * px,
+                                          UINT64 *
+                                          py _EXC_FLAGS_PARAM
+                                          _EXC_MASKS_PARAM
+                                          _EXC_INFO_PARAM);
+
+     extern void bid128_quiet_equal (int *pres, UINT128 * px,
+                                    UINT128 *
+                                    py _EXC_FLAGS_PARAM
+                                    _EXC_MASKS_PARAM _EXC_INFO_PARAM);
+     extern void bid128_quiet_greater (int *pres, UINT128 * px,
+                                      UINT128 *
+                                      py _EXC_FLAGS_PARAM
+                                      _EXC_MASKS_PARAM
+                                      _EXC_INFO_PARAM);
+     extern void bid128_quiet_greater_equal (int *pres, UINT128 * px,
+                                            UINT128 *
+                                            py _EXC_FLAGS_PARAM
+                                            _EXC_MASKS_PARAM
+                                            _EXC_INFO_PARAM);
+     extern void bid128_quiet_greater_unordered (int *pres,
+                                                UINT128 * px,
+                                                UINT128 *
+                                                py _EXC_FLAGS_PARAM
+                                                _EXC_MASKS_PARAM
+                                                _EXC_INFO_PARAM);
+     extern void bid128_quiet_less (int *pres, UINT128 * px,
+                                   UINT128 *
+                                   py _EXC_FLAGS_PARAM _EXC_MASKS_PARAM
+                                   _EXC_INFO_PARAM);
+     extern void bid128_quiet_less_equal (int *pres, UINT128 * px,
+                                         UINT128 *
+                                         py _EXC_FLAGS_PARAM
+                                         _EXC_MASKS_PARAM
+                                         _EXC_INFO_PARAM);
+     extern void bid128_quiet_less_unordered (int *pres, UINT128 * px,
+                                             UINT128 *
+                                             py _EXC_FLAGS_PARAM
+                                             _EXC_MASKS_PARAM
+                                             _EXC_INFO_PARAM);
+     extern void bid128_quiet_not_equal (int *pres, UINT128 * px,
+                                        UINT128 *
+                                        py _EXC_FLAGS_PARAM
+                                        _EXC_MASKS_PARAM
+                                        _EXC_INFO_PARAM);
+     extern void bid128_quiet_not_greater (int *pres, UINT128 * px,
+                                          UINT128 *
+                                          py _EXC_FLAGS_PARAM
+                                          _EXC_MASKS_PARAM
+                                          _EXC_INFO_PARAM);
+     extern void bid128_quiet_not_less (int *pres, UINT128 * px,
+                                       UINT128 *
+                                       py _EXC_FLAGS_PARAM
+                                       _EXC_MASKS_PARAM
+                                       _EXC_INFO_PARAM);
+     extern void bid128_quiet_ordered (int *pres, UINT128 * px,
+                                      UINT128 *
+                                      py _EXC_FLAGS_PARAM
+                                      _EXC_MASKS_PARAM
+                                      _EXC_INFO_PARAM);
+     extern void bid128_quiet_unordered (int *pres, UINT128 * px,
+                                        UINT128 *
+                                        py _EXC_FLAGS_PARAM
+                                        _EXC_MASKS_PARAM
+                                        _EXC_INFO_PARAM);
+     extern void bid128_signaling_greater (int *pres, UINT128 * px,
+                                          UINT128 *
+                                          py _EXC_FLAGS_PARAM
+                                          _EXC_MASKS_PARAM
+                                          _EXC_INFO_PARAM);
+     extern void bid128_signaling_greater_equal (int *pres,
+                                                UINT128 * px,
+                                                UINT128 *
+                                                py _EXC_FLAGS_PARAM
+                                                _EXC_MASKS_PARAM
+                                                _EXC_INFO_PARAM);
+     extern void bid128_signaling_greater_unordered (int *pres,
+                                                    UINT128 * px,
+                                                    UINT128 *
+                                                    py _EXC_FLAGS_PARAM
+                                                    _EXC_MASKS_PARAM
+                                                    _EXC_INFO_PARAM);
+     extern void bid128_signaling_less (int *pres, UINT128 * px,
+                                       UINT128 *
+                                       py _EXC_FLAGS_PARAM
+                                       _EXC_MASKS_PARAM
+                                       _EXC_INFO_PARAM);
+     extern void bid128_signaling_less_equal (int *pres, UINT128 * px,
+                                             UINT128 *
+                                             py _EXC_FLAGS_PARAM
+                                             _EXC_MASKS_PARAM
+                                             _EXC_INFO_PARAM);
+     extern void bid128_signaling_less_unordered (int *pres,
+                                                 UINT128 * px,
+                                                 UINT128 *
+                                                 py _EXC_FLAGS_PARAM
+                                                 _EXC_MASKS_PARAM
+                                                 _EXC_INFO_PARAM);
+     extern void bid128_signaling_not_greater (int *pres, UINT128 * px,
+                                              UINT128 *
+                                              py _EXC_FLAGS_PARAM
+                                              _EXC_MASKS_PARAM
+                                              _EXC_INFO_PARAM);
+     extern void bid128_signaling_not_less (int *pres, UINT128 * px,
+                                           UINT128 *
+                                           py _EXC_FLAGS_PARAM
+                                           _EXC_MASKS_PARAM
+                                           _EXC_INFO_PARAM);
+
+     extern void bid64_round_integral_exact (UINT64 * pres, UINT64 * px
+                                            _RND_MODE_PARAM
+                                            _EXC_FLAGS_PARAM
+                                            _EXC_MASKS_PARAM
+                                            _EXC_INFO_PARAM);
+     extern void bid64_round_integral_nearest_even (UINT64 * pres,
+                                                   UINT64 *
+                                                   px _EXC_FLAGS_PARAM
+                                                   _EXC_MASKS_PARAM
+                                                   _EXC_INFO_PARAM);
+     extern void bid64_round_integral_negative (UINT64 * pres,
+                                               UINT64 *
+                                               px _EXC_FLAGS_PARAM
+                                               _EXC_MASKS_PARAM
+                                               _EXC_INFO_PARAM);
+     extern void bid64_round_integral_positive (UINT64 * pres,
+                                               UINT64 *
+                                               px _EXC_FLAGS_PARAM
+                                               _EXC_MASKS_PARAM
+                                               _EXC_INFO_PARAM);
+     extern void bid64_round_integral_zero (UINT64 * pres,
+                                           UINT64 *
+                                           px _EXC_FLAGS_PARAM
+                                           _EXC_MASKS_PARAM
+                                           _EXC_INFO_PARAM);
+     extern void bid64_round_integral_nearest_away (UINT64 * pres,
+                                                   UINT64 *
+                                                   px _EXC_FLAGS_PARAM
+                                                   _EXC_MASKS_PARAM
+                                                   _EXC_INFO_PARAM);
+
+     extern void bid128_round_integral_exact (UINT128 * pres,
+                                             UINT128 *
+                                             px _RND_MODE_PARAM
+                                             _EXC_FLAGS_PARAM
+                                             _EXC_MASKS_PARAM
+                                             _EXC_INFO_PARAM);
+     extern void bid128_round_integral_nearest_even (UINT128 * pres,
+                                                    UINT128 *
+                                                    px _EXC_FLAGS_PARAM
+                                                    _EXC_MASKS_PARAM
+                                                    _EXC_INFO_PARAM);
+     extern void bid128_round_integral_negative (UINT128 * pres,
+                                                UINT128 *
+                                                px _EXC_FLAGS_PARAM
+                                                _EXC_MASKS_PARAM
+                                                _EXC_INFO_PARAM);
+     extern void bid128_round_integral_positive (UINT128 * pres,
+                                                UINT128 *
+                                                px _EXC_FLAGS_PARAM
+                                                _EXC_MASKS_PARAM
+                                                _EXC_INFO_PARAM);
+     extern void bid128_round_integral_zero (UINT128 * pres,
+                                            UINT128 *
+                                            px _EXC_FLAGS_PARAM
+                                            _EXC_MASKS_PARAM
+                                            _EXC_INFO_PARAM);
+     extern void bid128_round_integral_nearest_away (UINT128 * pres,
+                                                    UINT128 *
+                                                    px _EXC_FLAGS_PARAM
+                                                    _EXC_MASKS_PARAM
+                                                    _EXC_INFO_PARAM);
+
+     extern void bid64_nextup (UINT64 * pres, UINT64 * px
+                              _EXC_FLAGS_PARAM _EXC_MASKS_PARAM
+                              _EXC_INFO_PARAM);
+     extern void bid64_nextdown (UINT64 * pres,
+                                UINT64 *
+                                px _EXC_FLAGS_PARAM _EXC_MASKS_PARAM
+                                _EXC_INFO_PARAM);
+     extern void bid64_nextafter (UINT64 * pres, UINT64 * px,
+                                 UINT64 *
+                                 py _EXC_FLAGS_PARAM _EXC_MASKS_PARAM
+                                 _EXC_INFO_PARAM);
+
+     extern void bid128_nextup (UINT128 * pres, UINT128 * px
+                               _EXC_FLAGS_PARAM _EXC_MASKS_PARAM
+                               _EXC_INFO_PARAM);
+     extern void bid128_nextdown (UINT128 * pres,
+                                 UINT128 *
+                                 px _EXC_FLAGS_PARAM _EXC_MASKS_PARAM
+                                 _EXC_INFO_PARAM);
+     extern void bid128_nextafter (UINT128 * pres, UINT128 * px,
+                                  UINT128 *
+                                  py _EXC_FLAGS_PARAM _EXC_MASKS_PARAM
+                                  _EXC_INFO_PARAM);
+
+     extern void bid64_minnum (UINT64 * pres, UINT64 * px, UINT64 * py
+                              _EXC_FLAGS_PARAM);
+     extern void bid64_minnum_mag (UINT64 * pres, UINT64 * px,
+                                  UINT64 * py _EXC_FLAGS_PARAM);
+     extern void bid64_maxnum (UINT64 * pres, UINT64 * px, UINT64 * py
+                              _EXC_FLAGS_PARAM);
+     extern void bid64_maxnum_mag (UINT64 * pres, UINT64 * px,
+                                  UINT64 * py _EXC_FLAGS_PARAM);
+
+     extern void bid128_minnum (UINT128 * pres, UINT128 * px,
+                               UINT128 * py _EXC_FLAGS_PARAM);
+     extern void bid128_minnum_mag (UINT128 * pres, UINT128 * px,
+                                   UINT128 * py _EXC_FLAGS_PARAM);
+     extern void bid128_maxnum (UINT128 * pres, UINT128 * px,
+                               UINT128 * py _EXC_FLAGS_PARAM);
+     extern void bid128_maxnum_mag (UINT128 * pres, UINT128 * px,
+                                   UINT128 * py _EXC_FLAGS_PARAM);
+
+     extern void bid64_from_int32 (UINT64 * pres, int *px
+                                  _EXC_MASKS_PARAM _EXC_INFO_PARAM);
+     extern void bid64_from_uint32 (UINT64 * pres, unsigned int *px
+                                   _EXC_MASKS_PARAM _EXC_INFO_PARAM);
+     extern void bid64_from_int64 (UINT64 * pres, SINT64 * px
+                                  _RND_MODE_PARAM _EXC_FLAGS_PARAM
+                                  _EXC_MASKS_PARAM _EXC_INFO_PARAM);
+     extern void bid64_from_uint64 (UINT64 * pres,
+                                   UINT64 *
+                                   px _RND_MODE_PARAM _EXC_FLAGS_PARAM
+                                   _EXC_MASKS_PARAM _EXC_INFO_PARAM);
+     extern void bid128_from_int32 (UINT128 * pres,
+                                   int *px _EXC_MASKS_PARAM
+                                   _EXC_INFO_PARAM);
+     extern void bid128_from_uint32 (UINT128 * pres,
+                                    unsigned int *px _EXC_MASKS_PARAM
+                                    _EXC_INFO_PARAM);
+     extern void bid128_from_int64 (UINT128 * pres,
+                                   SINT64 *
+                                   px _EXC_MASKS_PARAM
+                                   _EXC_INFO_PARAM);
+     extern void bid128_from_uint64 (UINT128 * pres,
+                                    UINT64 *
+                                    px _EXC_MASKS_PARAM
+                                    _EXC_INFO_PARAM);
+
+     extern void bid64_isSigned (int *pres, UINT64 * px
+                                _EXC_MASKS_PARAM _EXC_INFO_PARAM);
+     extern void bid64_isNormal (int *pres, UINT64 * px
+                                _EXC_MASKS_PARAM _EXC_INFO_PARAM);
+     extern void bid64_isSubnormal (int *pres, UINT64 * px
+                                   _EXC_MASKS_PARAM _EXC_INFO_PARAM);
+     extern void bid64_isFinite (int *pres, UINT64 * px
+                                _EXC_MASKS_PARAM _EXC_INFO_PARAM);
+     extern void bid64_isZero (int *pres, UINT64 * px
+                              _EXC_MASKS_PARAM _EXC_INFO_PARAM);
+     extern void bid64_isInf (int *pres, UINT64 * px
+                             _EXC_MASKS_PARAM _EXC_INFO_PARAM);
+     extern void bid64_isSignaling (int *pres, UINT64 * px
+                                   _EXC_MASKS_PARAM _EXC_INFO_PARAM);
+     extern void bid64_isCanonical (int *pres, UINT64 * px
+                                   _EXC_MASKS_PARAM _EXC_INFO_PARAM);
+     extern void bid64_isNaN (int *pres, UINT64 * px
+                             _EXC_MASKS_PARAM _EXC_INFO_PARAM);
+     extern void bid64_copy (UINT64 * pres, UINT64 * px
+                            _EXC_MASKS_PARAM _EXC_INFO_PARAM);
+     extern void bid64_negate (UINT64 * pres, UINT64 * px
+                              _EXC_MASKS_PARAM _EXC_INFO_PARAM);
+     extern void bid64_abs (UINT64 * pres, UINT64 * px
+                           _EXC_MASKS_PARAM _EXC_INFO_PARAM);
+     extern void bid64_copySign (UINT64 * pres, UINT64 * px, UINT64 * py
+                                _EXC_MASKS_PARAM _EXC_INFO_PARAM);
+     extern void bid64_class (int *pres, UINT64 * px
+                             _EXC_MASKS_PARAM _EXC_INFO_PARAM);
+     extern void bid64_sameQuantum (int *pres, UINT64 * px, UINT64 * py
+                                   _EXC_MASKS_PARAM _EXC_INFO_PARAM);
+     extern void bid64_totalOrder (int *pres, UINT64 * px, UINT64 * py
+                                  _EXC_MASKS_PARAM _EXC_INFO_PARAM);
+     extern void bid64_totalOrderMag (int *pres, UINT64 * px,
+                                     UINT64 *
+                                     py _EXC_MASKS_PARAM
+                                     _EXC_INFO_PARAM);
+     extern void bid64_radix (int *pres,
+                             UINT64 *
+                             px _EXC_MASKS_PARAM _EXC_INFO_PARAM);
+
+     extern void bid128_isSigned (int *pres, UINT128 * px
+                                 _EXC_MASKS_PARAM _EXC_INFO_PARAM);
+     extern void bid128_isNormal (int *pres, UINT128 * px
+                                 _EXC_MASKS_PARAM _EXC_INFO_PARAM);
+     extern void bid128_isSubnormal (int *pres, UINT128 * px
+                                    _EXC_MASKS_PARAM _EXC_INFO_PARAM);
+     extern void bid128_isFinite (int *pres, UINT128 * px
+                                 _EXC_MASKS_PARAM _EXC_INFO_PARAM);
+     extern void bid128_isZero (int *pres, UINT128 * px
+                               _EXC_MASKS_PARAM _EXC_INFO_PARAM);
+     extern void bid128_isInf (int *pres, UINT128 * px
+                              _EXC_MASKS_PARAM _EXC_INFO_PARAM);
+     extern void bid128_isSignaling (int *pres, UINT128 * px
+                                    _EXC_MASKS_PARAM _EXC_INFO_PARAM);
+     extern void bid128_isCanonical (int *pres, UINT128 * px
+                                    _EXC_MASKS_PARAM _EXC_INFO_PARAM);
+     extern void bid128_isNaN (int *pres, UINT128 * px
+                              _EXC_MASKS_PARAM _EXC_INFO_PARAM);
+     extern void bid128_copy (UINT128 * pres, UINT128 * px
+                             _EXC_MASKS_PARAM _EXC_INFO_PARAM);
+     extern void bid128_negate (UINT128 * pres, UINT128 * px
+                               _EXC_MASKS_PARAM _EXC_INFO_PARAM);
+     extern void bid128_abs (UINT128 * pres, UINT128 * px
+                            _EXC_MASKS_PARAM _EXC_INFO_PARAM);
+     extern void bid128_copySign (UINT128 * pres, UINT128 * px,
+                                 UINT128 *
+                                 py _EXC_MASKS_PARAM _EXC_INFO_PARAM);
+     extern void bid128_class (int *pres,
+                              UINT128 *
+                              px _EXC_MASKS_PARAM _EXC_INFO_PARAM);
+     extern void bid128_sameQuantum (int *pres, UINT128 * px,
+                                    UINT128 *
+                                    py _EXC_MASKS_PARAM
+                                    _EXC_INFO_PARAM);
+     extern void bid128_totalOrder (int *pres, UINT128 * px,
+                                   UINT128 *
+                                   py _EXC_MASKS_PARAM
+                                   _EXC_INFO_PARAM);
+     extern void bid128_totalOrderMag (int *pres, UINT128 * px,
+                                      UINT128 *
+                                      py _EXC_MASKS_PARAM
+                                      _EXC_INFO_PARAM);
+     extern void bid128_radix (int *pres,
+                              UINT128 *
+                              px _EXC_MASKS_PARAM _EXC_INFO_PARAM);
+
+     extern void bid64_rem (UINT64 * pres, UINT64 * px, UINT64 * py
+                           _EXC_FLAGS_PARAM
+                           _EXC_MASKS_PARAM _EXC_INFO_PARAM);
+     extern void bid64_logb (int * pres, UINT64 * px
+                            _EXC_FLAGS_PARAM _EXC_MASKS_PARAM
+                            _EXC_INFO_PARAM);
+     extern void bid64_scalb (UINT64 * pres, UINT64 * px,
+                             int *pn _RND_MODE_PARAM _EXC_FLAGS_PARAM
+                             _EXC_MASKS_PARAM _EXC_INFO_PARAM);
+
+     extern void bid128_rem (UINT128 * pres, UINT128 * px, UINT128 * py
+                            _EXC_FLAGS_PARAM
+                            _EXC_MASKS_PARAM _EXC_INFO_PARAM);
+     extern void bid128_logb (int * pres, UINT128 * px
+                             _EXC_FLAGS_PARAM
+                             _EXC_MASKS_PARAM _EXC_INFO_PARAM);
+     extern void bid128_scalb (UINT128 * pres, UINT128 * px,
+                              int *pn _RND_MODE_PARAM _EXC_FLAGS_PARAM
+                              _EXC_MASKS_PARAM _EXC_INFO_PARAM);
+
+     extern void bid32_to_bid64 (UINT64 * pres,
+                                UINT32 *
+                                px _EXC_FLAGS_PARAM _EXC_MASKS_PARAM
+                                _EXC_INFO_PARAM);
+     extern void bid32_to_bid128 (UINT128 * pres,
+                                 UINT32 *
+                                 px _EXC_FLAGS_PARAM _EXC_MASKS_PARAM
+                                 _EXC_INFO_PARAM);
+     extern void bid64_to_bid128 (UINT128 * pres,
+                                 UINT64 *
+                                 px _EXC_FLAGS_PARAM _EXC_MASKS_PARAM
+                                 _EXC_INFO_PARAM);
+     extern void bid64_to_bid32 (UINT32 * pres,
+                                UINT64 *
+                                px _RND_MODE_PARAM _EXC_FLAGS_PARAM
+                                _EXC_MASKS_PARAM _EXC_INFO_PARAM);
+     extern void bid128_to_bid32 (UINT32 * pres,
+                                 UINT128 *
+                                 px _RND_MODE_PARAM _EXC_FLAGS_PARAM
+                                 _EXC_MASKS_PARAM _EXC_INFO_PARAM);
+     extern void bid128_to_bid64 (UINT64 * pres,
+                                 UINT128 *
+                                 px _RND_MODE_PARAM _EXC_FLAGS_PARAM
+                                 _EXC_MASKS_PARAM _EXC_INFO_PARAM);
+
+     extern void bid64_from_string (UINT64 * pres, char *ps
+                                   _RND_MODE_PARAM _EXC_FLAGS_PARAM
+                                   _EXC_MASKS_PARAM _EXC_INFO_PARAM);
+     extern void bid64_to_string (char *ps, UINT64 * px
+                                 _EXC_FLAGS_PARAM
+                                 _EXC_MASKS_PARAM _EXC_INFO_PARAM);
+     extern void bid128_from_string (UINT128 * pres, char *ps
+                                    _RND_MODE_PARAM _EXC_FLAGS_PARAM
+                                    _EXC_MASKS_PARAM _EXC_INFO_PARAM);
+     extern void bid128_to_string (char *str, UINT128 * px
+                                  _EXC_FLAGS_PARAM
+                                  _EXC_MASKS_PARAM _EXC_INFO_PARAM);
+
+     extern void bid64_quantize (UINT64 * pres, UINT64 * px,
+                                UINT64 *
+                                py _RND_MODE_PARAM _EXC_FLAGS_PARAM
+                                _EXC_MASKS_PARAM _EXC_INFO_PARAM);
+
+     extern void bid128_quantize (UINT128 * pres, UINT128 * px,
+                                 UINT128 *
+                                 py _RND_MODE_PARAM _EXC_FLAGS_PARAM
+                                 _EXC_MASKS_PARAM _EXC_INFO_PARAM);
+
+     extern void bid128_to_binary32 (float *pres, UINT128 * px
+                                    _RND_MODE_PARAM _EXC_FLAGS_PARAM
+                                    _EXC_MASKS_PARAM _EXC_INFO_PARAM);
+
+     extern void bid128_to_binary64 (double *pres, UINT128 * px
+                                    _RND_MODE_PARAM _EXC_FLAGS_PARAM
+                                    _EXC_MASKS_PARAM _EXC_INFO_PARAM);
+
+     extern void bid128_to_binary80 (BINARY80 * pres, UINT128 * px
+                                    _RND_MODE_PARAM _EXC_FLAGS_PARAM
+                                    _EXC_MASKS_PARAM _EXC_INFO_PARAM);
+
+     extern void bid128_to_binary128 (BINARY128 * pres, UINT128 * px
+                                     _RND_MODE_PARAM _EXC_FLAGS_PARAM
+                                     _EXC_MASKS_PARAM _EXC_INFO_PARAM);
+
+     extern void binary128_to_bid32 (UINT32 * pres, BINARY128 * px
+                                    _RND_MODE_PARAM _EXC_FLAGS_PARAM
+                                    _EXC_MASKS_PARAM _EXC_INFO_PARAM);
+
+     extern void binary128_to_bid64 (UINT64 * pres, BINARY128 * px
+                                    _RND_MODE_PARAM _EXC_FLAGS_PARAM
+                                    _EXC_MASKS_PARAM _EXC_INFO_PARAM);
+
+     extern void binary128_to_bid128 (UINT128 * pres, BINARY128 * px
+                                     _RND_MODE_PARAM _EXC_FLAGS_PARAM
+                                     _EXC_MASKS_PARAM _EXC_INFO_PARAM);
+
+     extern void bid64_to_binary32 (float *pres, UINT64 * px
+                                   _RND_MODE_PARAM _EXC_FLAGS_PARAM
+                                   _EXC_MASKS_PARAM _EXC_INFO_PARAM);
+
+     extern void bid64_to_binary64 (double *pres, UINT64 * px
+                                   _RND_MODE_PARAM _EXC_FLAGS_PARAM
+                                   _EXC_MASKS_PARAM _EXC_INFO_PARAM);
+
+     extern void bid64_to_binary80 (BINARY80 * pres, UINT64 * px
+                                   _RND_MODE_PARAM _EXC_FLAGS_PARAM
+                                   _EXC_MASKS_PARAM _EXC_INFO_PARAM);
+
+     extern void bid64_to_binary128 (BINARY128 * pres, UINT64 * px
+                                    _RND_MODE_PARAM _EXC_FLAGS_PARAM
+                                    _EXC_MASKS_PARAM _EXC_INFO_PARAM);
+
+     extern void binary64_to_bid32 (UINT32 * pres, double *px
+                                   _RND_MODE_PARAM _EXC_FLAGS_PARAM
+                                   _EXC_MASKS_PARAM _EXC_INFO_PARAM);
+
+     extern void binary64_to_bid64 (UINT64 * pres, double *px
+                                   _RND_MODE_PARAM _EXC_FLAGS_PARAM
+                                   _EXC_MASKS_PARAM _EXC_INFO_PARAM);
+
+     extern void binary64_to_bid128 (UINT128 * pres, double *px
+                                    _RND_MODE_PARAM _EXC_FLAGS_PARAM
+                                    _EXC_MASKS_PARAM _EXC_INFO_PARAM);
+
+     extern void bid32_to_binary32 (float *pres, UINT32 * px
+                                   _RND_MODE_PARAM _EXC_FLAGS_PARAM
+                                   _EXC_MASKS_PARAM _EXC_INFO_PARAM);
+
+     extern void bid32_to_binary64 (double *pres, UINT32 * px
+                                   _RND_MODE_PARAM _EXC_FLAGS_PARAM
+                                   _EXC_MASKS_PARAM _EXC_INFO_PARAM);
+
+     extern void bid32_to_binary80 (BINARY80 * pres, UINT32 * px
+                                   _RND_MODE_PARAM _EXC_FLAGS_PARAM
+                                   _EXC_MASKS_PARAM _EXC_INFO_PARAM);
+
+     extern void bid32_to_binary128 (BINARY128 * pres, UINT32 * px
+                                    _RND_MODE_PARAM _EXC_FLAGS_PARAM
+                                    _EXC_MASKS_PARAM _EXC_INFO_PARAM);
+
+     extern void binary32_to_bid32 (UINT32 * pres, float *px
+                                   _RND_MODE_PARAM _EXC_FLAGS_PARAM
+                                   _EXC_MASKS_PARAM _EXC_INFO_PARAM);
+
+     extern void binary32_to_bid64 (UINT64 * pres, float *px
+                                   _RND_MODE_PARAM _EXC_FLAGS_PARAM
+                                   _EXC_MASKS_PARAM _EXC_INFO_PARAM);
+
+     extern void binary32_to_bid128 (UINT128 * pres, float *px
+                                    _RND_MODE_PARAM _EXC_FLAGS_PARAM
+                                    _EXC_MASKS_PARAM _EXC_INFO_PARAM);
+
+     extern void binary80_to_bid32 (UINT32 * pres, BINARY80 * px
+                                   _RND_MODE_PARAM _EXC_FLAGS_PARAM
+                                   _EXC_MASKS_PARAM _EXC_INFO_PARAM);
+
+     extern void binary80_to_bid64 (UINT64 * pres, BINARY80 * px
+                                   _RND_MODE_PARAM _EXC_FLAGS_PARAM
+                                   _EXC_MASKS_PARAM _EXC_INFO_PARAM);
+
+     extern void binary80_to_bid128 (UINT128 * pres, BINARY80 * px
+                                    _RND_MODE_PARAM _EXC_FLAGS_PARAM
+                                    _EXC_MASKS_PARAM _EXC_INFO_PARAM);
+
+     extern void is754 (int *retval);
+
+     extern void is754R (int *retval);
+
+     extern void signalException (_IDEC_flags *
+                                 pflagsmask _EXC_FLAGS_PARAM);
+
+     extern void lowerFlags (_IDEC_flags * pflagsmask _EXC_FLAGS_PARAM);
+
+     extern void testFlags (_IDEC_flags * praised,
+                           _IDEC_flags * pflagsmask _EXC_FLAGS_PARAM);
+
+     extern void testSavedFlags (_IDEC_flags * praised,
+                                _IDEC_flags * psavedflags,
+                                _IDEC_flags * pflagsmask);
+
+     extern void restoreFlags (_IDEC_flags * pflagsvalues,
+                              _IDEC_flags *
+                              pflagsmask _EXC_FLAGS_PARAM);
+
+     extern void saveFlags (_IDEC_flags * pflagsvalues,
+                           _IDEC_flags * pflagsmask _EXC_FLAGS_PARAM);
+
+     void getDecimalRoundingDirection (_IDEC_round *
+                                      rounding_mode _RND_MODE_PARAM);
+
+     void setDecimalRoundingDirection (_IDEC_round *
+                                      rounding_mode _RND_MODE_PARAM);
+
+#else
+
+     extern UINT32 bid_to_dpd32 (UINT32 px);
+     extern UINT64 bid_to_dpd64 (UINT64 px);
+     extern UINT128 bid_to_dpd128 (UINT128 px);
+     extern UINT32 dpd_to_bid32 (UINT32 px);
+     extern UINT64 dpd_to_bid64 (UINT64 px);
+     extern UINT128 dpd_to_bid128 (UINT128 px);
+
+     extern UINT128 bid128dd_add (UINT64 x, UINT64 y
+                                 _RND_MODE_PARAM _EXC_FLAGS_PARAM
+                                 _EXC_MASKS_PARAM _EXC_INFO_PARAM);
+     extern UINT128 bid128dq_add (UINT64 x, UINT128 y
+                                 _RND_MODE_PARAM _EXC_FLAGS_PARAM
+                                 _EXC_MASKS_PARAM _EXC_INFO_PARAM);
+     extern UINT128 bid128qd_add (UINT128 x, UINT64 y
+                                 _RND_MODE_PARAM _EXC_FLAGS_PARAM
+                                 _EXC_MASKS_PARAM _EXC_INFO_PARAM);
+     extern UINT128 bid128_add (UINT128 x, UINT128 y
+                               _RND_MODE_PARAM _EXC_FLAGS_PARAM
+                               _EXC_MASKS_PARAM _EXC_INFO_PARAM);
+     extern UINT128 bid128dd_sub (UINT64 x, UINT64 y
+                                 _RND_MODE_PARAM _EXC_FLAGS_PARAM
+                                 _EXC_MASKS_PARAM _EXC_INFO_PARAM);
+     extern UINT128 bid128dq_sub (UINT64 x, UINT128 y
+                                 _RND_MODE_PARAM _EXC_FLAGS_PARAM
+                                 _EXC_MASKS_PARAM _EXC_INFO_PARAM);
+     extern UINT128 bid128qd_sub (UINT128 x, UINT64 y
+                                 _RND_MODE_PARAM _EXC_FLAGS_PARAM
+                                 _EXC_MASKS_PARAM _EXC_INFO_PARAM);
+     extern UINT128 bid128_sub (UINT128 x,
+                               UINT128 y _RND_MODE_PARAM
+                               _EXC_FLAGS_PARAM _EXC_MASKS_PARAM
+                               _EXC_INFO_PARAM);
+     extern UINT128 bid128dd_mul (UINT64 x, UINT64 y
+                                 _RND_MODE_PARAM _EXC_FLAGS_PARAM
+                                 _EXC_MASKS_PARAM _EXC_INFO_PARAM);
+     extern UINT128 bid128dq_mul (UINT64 x, UINT128 y
+                                 _RND_MODE_PARAM _EXC_FLAGS_PARAM
+                                 _EXC_MASKS_PARAM _EXC_INFO_PARAM);
+     extern UINT128 bid128qd_mul (UINT128 x, UINT64 y
+                                 _RND_MODE_PARAM _EXC_FLAGS_PARAM
+                                 _EXC_MASKS_PARAM _EXC_INFO_PARAM);
+     extern UINT128 bid128_mul (UINT128 x, UINT128 y
+                               _RND_MODE_PARAM _EXC_FLAGS_PARAM
+                               _EXC_MASKS_PARAM _EXC_INFO_PARAM);
+     extern UINT128 bid128_div (UINT128 x,
+                               UINT128 y _RND_MODE_PARAM
+                               _EXC_FLAGS_PARAM _EXC_MASKS_PARAM
+                               _EXC_INFO_PARAM);
+     extern UINT128 bid128dd_div (UINT64 x, UINT64 y
+                                 _RND_MODE_PARAM _EXC_FLAGS_PARAM
+                                 _EXC_MASKS_PARAM _EXC_INFO_PARAM);
+     extern UINT128 bid128dq_div (UINT64 x, UINT128 y
+                                 _RND_MODE_PARAM _EXC_FLAGS_PARAM
+                                 _EXC_MASKS_PARAM _EXC_INFO_PARAM);
+     extern UINT128 bid128qd_div (UINT128 x, UINT64 y
+                                 _RND_MODE_PARAM _EXC_FLAGS_PARAM
+                                 _EXC_MASKS_PARAM _EXC_INFO_PARAM);
+     extern UINT128 bid128_fma (UINT128 x, UINT128 y, UINT128 z
+                               _RND_MODE_PARAM _EXC_FLAGS_PARAM
+                               _EXC_MASKS_PARAM _EXC_INFO_PARAM);
+     extern UINT128 bid128ddd_fma (UINT64 x, UINT64 y, UINT64 z
+                                  _RND_MODE_PARAM _EXC_FLAGS_PARAM
+                                  _EXC_MASKS_PARAM _EXC_INFO_PARAM);
+     extern UINT128 bid128ddq_fma (UINT64 x, UINT64 y, UINT128 z
+                                  _RND_MODE_PARAM _EXC_FLAGS_PARAM
+                                  _EXC_MASKS_PARAM _EXC_INFO_PARAM);
+     extern UINT128 bid128dqd_fma (UINT64 x, UINT128 y, UINT64 z
+                                  _RND_MODE_PARAM _EXC_FLAGS_PARAM
+                                  _EXC_MASKS_PARAM _EXC_INFO_PARAM);
+     extern UINT128 bid128dqq_fma (UINT64 x, UINT128 y,
+                                  UINT128 z
+                                  _RND_MODE_PARAM _EXC_FLAGS_PARAM
+                                  _EXC_MASKS_PARAM _EXC_INFO_PARAM);
+     extern UINT128 bid128qdd_fma (UINT128 x, UINT64 y, UINT64 z
+                                  _RND_MODE_PARAM _EXC_FLAGS_PARAM
+                                  _EXC_MASKS_PARAM _EXC_INFO_PARAM);
+     extern UINT128 bid128qdq_fma (UINT128 x, UINT64 y,
+                                  UINT128 z
+                                  _RND_MODE_PARAM _EXC_FLAGS_PARAM
+                                  _EXC_MASKS_PARAM _EXC_INFO_PARAM);
+     extern UINT128 bid128qqd_fma (UINT128 x, UINT128 y,
+                                  UINT64 z
+                                  _RND_MODE_PARAM _EXC_FLAGS_PARAM
+                                  _EXC_MASKS_PARAM _EXC_INFO_PARAM);
+     // Note: bid128qqq_fma is represented by bid128_fma
+     // Note: bid64ddd_fma is represented by bid64_fma
+     extern UINT64 bid64ddq_fma (UINT64 x, UINT64 y,
+                                UINT128 z
+                                _RND_MODE_PARAM _EXC_FLAGS_PARAM
+                                _EXC_MASKS_PARAM _EXC_INFO_PARAM);
+     extern UINT64 bid64dqd_fma (UINT64 x, UINT128 y,
+                                UINT64 z
+                                _RND_MODE_PARAM _EXC_FLAGS_PARAM
+                                _EXC_MASKS_PARAM _EXC_INFO_PARAM);
+     extern UINT64 bid64dqq_fma (UINT64 x, UINT128 y,
+                                UINT128 z
+                                _RND_MODE_PARAM _EXC_FLAGS_PARAM
+                                _EXC_MASKS_PARAM _EXC_INFO_PARAM);
+     extern UINT64 bid64qdd_fma (UINT128 x, UINT64 y,
+                                UINT64 z
+                                _RND_MODE_PARAM _EXC_FLAGS_PARAM
+                                _EXC_MASKS_PARAM _EXC_INFO_PARAM);
+     extern UINT64 bid64qdq_fma (UINT128 x, UINT64 y,
+                                UINT128 z
+                                _RND_MODE_PARAM _EXC_FLAGS_PARAM
+                                _EXC_MASKS_PARAM _EXC_INFO_PARAM);
+     extern UINT64 bid64qqd_fma (UINT128 x, UINT128 y,
+                                UINT64 z
+                                _RND_MODE_PARAM _EXC_FLAGS_PARAM
+                                _EXC_MASKS_PARAM _EXC_INFO_PARAM);
+     extern UINT64 bid64qqq_fma (UINT128 x, UINT128 y,
+                                UINT128 z
+                                _RND_MODE_PARAM _EXC_FLAGS_PARAM
+                                _EXC_MASKS_PARAM _EXC_INFO_PARAM);
+
+     extern UINT128 bid128_sqrt (UINT128 x _RND_MODE_PARAM
+                                _EXC_FLAGS_PARAM _EXC_MASKS_PARAM
+                                _EXC_INFO_PARAM);
+     extern UINT128 bid128d_sqrt (UINT64 x
+                                 _RND_MODE_PARAM _EXC_FLAGS_PARAM
+                                 _EXC_MASKS_PARAM _EXC_INFO_PARAM);
+
+     extern UINT64 bid64_add (UINT64 x, UINT64 y
+                             _RND_MODE_PARAM _EXC_FLAGS_PARAM
+                             _EXC_MASKS_PARAM _EXC_INFO_PARAM);
+     extern UINT64 bid64dq_add (UINT64 x, UINT128 y
+                               _RND_MODE_PARAM _EXC_FLAGS_PARAM
+                               _EXC_MASKS_PARAM _EXC_INFO_PARAM);
+     extern UINT64 bid64qd_add (UINT128 x, UINT64 y
+                               _RND_MODE_PARAM _EXC_FLAGS_PARAM
+                               _EXC_MASKS_PARAM _EXC_INFO_PARAM);
+     extern UINT64 bid64qq_add (UINT128 x, UINT128 y
+                               _RND_MODE_PARAM _EXC_FLAGS_PARAM
+                               _EXC_MASKS_PARAM _EXC_INFO_PARAM);
+     extern UINT64 bid64_sub (UINT64 x,
+                             UINT64 y _RND_MODE_PARAM
+                             _EXC_FLAGS_PARAM _EXC_MASKS_PARAM
+                             _EXC_INFO_PARAM);
+     extern UINT64 bid64dq_sub (UINT64 x, UINT128 y
+                               _RND_MODE_PARAM _EXC_FLAGS_PARAM
+                               _EXC_MASKS_PARAM _EXC_INFO_PARAM);
+     extern UINT64 bid64qd_sub (UINT128 x, UINT64 y
+                               _RND_MODE_PARAM _EXC_FLAGS_PARAM
+                               _EXC_MASKS_PARAM _EXC_INFO_PARAM);
+     extern UINT64 bid64qq_sub (UINT128 x, UINT128 y
+                               _RND_MODE_PARAM _EXC_FLAGS_PARAM
+                               _EXC_MASKS_PARAM _EXC_INFO_PARAM);
+     extern UINT64 bid64_mul (UINT64 x, UINT64 y
+                             _RND_MODE_PARAM _EXC_FLAGS_PARAM
+                             _EXC_MASKS_PARAM _EXC_INFO_PARAM);
+     extern UINT64 bid64dq_mul (UINT64 x, UINT128 y
+                               _RND_MODE_PARAM _EXC_FLAGS_PARAM
+                               _EXC_MASKS_PARAM _EXC_INFO_PARAM);
+     extern UINT64 bid64qd_mul (UINT128 x, UINT64 y
+                               _RND_MODE_PARAM _EXC_FLAGS_PARAM
+                               _EXC_MASKS_PARAM _EXC_INFO_PARAM);
+     extern UINT64 bid64qq_mul (UINT128 x, UINT128 y
+                               _RND_MODE_PARAM _EXC_FLAGS_PARAM
+                               _EXC_MASKS_PARAM _EXC_INFO_PARAM);
+     extern UINT64 bid64_div (UINT64 x,
+                             UINT64 y _RND_MODE_PARAM
+                             _EXC_FLAGS_PARAM _EXC_MASKS_PARAM
+                             _EXC_INFO_PARAM);
+     extern UINT64 bid64dq_div (UINT64 x, UINT128 y
+                               _RND_MODE_PARAM _EXC_FLAGS_PARAM
+                               _EXC_MASKS_PARAM _EXC_INFO_PARAM);
+     extern UINT64 bid64qd_div (UINT128 x, UINT64 y
+                               _RND_MODE_PARAM _EXC_FLAGS_PARAM
+                               _EXC_MASKS_PARAM _EXC_INFO_PARAM);
+     extern UINT64 bid64qq_div (UINT128 x, UINT128 y
+                               _RND_MODE_PARAM _EXC_FLAGS_PARAM
+                               _EXC_MASKS_PARAM _EXC_INFO_PARAM);
+     extern UINT64 bid64_fma (UINT64 x, UINT64 y,
+                             UINT64 z _RND_MODE_PARAM
+                             _EXC_FLAGS_PARAM _EXC_MASKS_PARAM
+                             _EXC_INFO_PARAM);
+     extern UINT64 bid64_sqrt (UINT64 x _RND_MODE_PARAM
+                              _EXC_FLAGS_PARAM _EXC_MASKS_PARAM
+                              _EXC_INFO_PARAM);
+     extern UINT64 bid64q_sqrt (UINT128 x
+                               _RND_MODE_PARAM _EXC_FLAGS_PARAM
+                               _EXC_MASKS_PARAM _EXC_INFO_PARAM);
+
+     extern char bid128_to_int8_rnint (UINT128 x
+                                      _EXC_FLAGS_PARAM
+                                      _EXC_MASKS_PARAM
+                                      _EXC_INFO_PARAM);
+     extern char bid128_to_int8_xrnint (UINT128 x
+                                       _EXC_FLAGS_PARAM
+                                       _EXC_MASKS_PARAM
+                                       _EXC_INFO_PARAM);
+     extern char bid128_to_int8_rninta (UINT128 x
+                                       _EXC_FLAGS_PARAM
+                                       _EXC_MASKS_PARAM
+                                       _EXC_INFO_PARAM);
+     extern char bid128_to_int8_xrninta (UINT128 x
+                                        _EXC_FLAGS_PARAM
+                                        _EXC_MASKS_PARAM
+                                        _EXC_INFO_PARAM);
+     extern char bid128_to_int8_int (UINT128 x _EXC_FLAGS_PARAM
+                                    _EXC_MASKS_PARAM _EXC_INFO_PARAM);
+     extern char bid128_to_int8_xint (UINT128 x _EXC_FLAGS_PARAM
+                                     _EXC_MASKS_PARAM _EXC_INFO_PARAM);
+     extern char bid128_to_int8_floor (UINT128 x
+                                      _EXC_FLAGS_PARAM
+                                      _EXC_MASKS_PARAM
+                                      _EXC_INFO_PARAM);
+     extern char bid128_to_int8_xfloor (UINT128 x
+                                       _EXC_FLAGS_PARAM
+                                       _EXC_MASKS_PARAM
+                                       _EXC_INFO_PARAM);
+     extern char bid128_to_int8_ceil (UINT128 x _EXC_FLAGS_PARAM
+                                     _EXC_MASKS_PARAM _EXC_INFO_PARAM);
+     extern char bid128_to_int8_xceil (UINT128 x
+                                      _EXC_FLAGS_PARAM
+                                      _EXC_MASKS_PARAM
+                                      _EXC_INFO_PARAM);
+     extern short bid128_to_int16_rnint (UINT128 x
+                                        _EXC_FLAGS_PARAM
+                                        _EXC_MASKS_PARAM
+                                        _EXC_INFO_PARAM);
+     extern short bid128_to_int16_xrnint (UINT128 x
+                                         _EXC_FLAGS_PARAM
+                                         _EXC_MASKS_PARAM
+                                         _EXC_INFO_PARAM);
+     extern short bid128_to_int16_rninta (UINT128 x
+                                         _EXC_FLAGS_PARAM
+                                         _EXC_MASKS_PARAM
+                                         _EXC_INFO_PARAM);
+     extern short bid128_to_int16_xrninta (UINT128 x
+                                          _EXC_FLAGS_PARAM
+                                          _EXC_MASKS_PARAM
+                                          _EXC_INFO_PARAM);
+     extern short bid128_to_int16_int (UINT128 x _EXC_FLAGS_PARAM
+                                      _EXC_MASKS_PARAM
+                                      _EXC_INFO_PARAM);
+     extern short bid128_to_int16_xint (UINT128 x _EXC_FLAGS_PARAM
+                                       _EXC_MASKS_PARAM
+                                       _EXC_INFO_PARAM);
+     extern short bid128_to_int16_floor (UINT128 x
+                                        _EXC_FLAGS_PARAM
+                                        _EXC_MASKS_PARAM
+                                        _EXC_INFO_PARAM);
+     extern short bid128_to_int16_xfloor (UINT128 x
+                                         _EXC_FLAGS_PARAM
+                                         _EXC_MASKS_PARAM
+                                         _EXC_INFO_PARAM);
+     extern short bid128_to_int16_ceil (UINT128 x _EXC_FLAGS_PARAM
+                                       _EXC_MASKS_PARAM
+                                       _EXC_INFO_PARAM);
+     extern short bid128_to_int16_xceil (UINT128 x
+                                        _EXC_FLAGS_PARAM
+                                        _EXC_MASKS_PARAM
+                                        _EXC_INFO_PARAM);
+     extern unsigned char bid128_to_uint8_rnint (UINT128 x
+                                                _EXC_FLAGS_PARAM
+                                                _EXC_MASKS_PARAM
+                                                _EXC_INFO_PARAM);
+     extern unsigned char bid128_to_uint8_xrnint (UINT128 x
+                                                 _EXC_FLAGS_PARAM
+                                                 _EXC_MASKS_PARAM
+                                                 _EXC_INFO_PARAM);
+     extern unsigned char bid128_to_uint8_rninta (UINT128 x
+                                                 _EXC_FLAGS_PARAM
+                                                 _EXC_MASKS_PARAM
+                                                 _EXC_INFO_PARAM);
+     extern unsigned char bid128_to_uint8_xrninta (UINT128 x
+                                                  _EXC_FLAGS_PARAM
+                                                  _EXC_MASKS_PARAM
+                                                  _EXC_INFO_PARAM);
+     extern unsigned char bid128_to_uint8_int (UINT128 x
+                                              _EXC_FLAGS_PARAM
+                                              _EXC_MASKS_PARAM
+                                              _EXC_INFO_PARAM);
+     extern unsigned char bid128_to_uint8_xint (UINT128 x
+                                               _EXC_FLAGS_PARAM
+                                               _EXC_MASKS_PARAM
+                                               _EXC_INFO_PARAM);
+     extern unsigned char bid128_to_uint8_floor (UINT128 x
+                                                _EXC_FLAGS_PARAM
+                                                _EXC_MASKS_PARAM
+                                                _EXC_INFO_PARAM);
+     extern unsigned char bid128_to_uint8_xfloor (UINT128 x
+                                                 _EXC_FLAGS_PARAM
+                                                 _EXC_MASKS_PARAM
+                                                 _EXC_INFO_PARAM);
+     extern unsigned char bid128_to_uint8_ceil (UINT128 x
+                                               _EXC_FLAGS_PARAM
+                                               _EXC_MASKS_PARAM
+                                               _EXC_INFO_PARAM);
+     extern unsigned char bid128_to_uint8_xceil (UINT128 x
+                                                _EXC_FLAGS_PARAM
+                                                _EXC_MASKS_PARAM
+                                                _EXC_INFO_PARAM);
+     extern unsigned short bid128_to_uint16_rnint (UINT128 x
+                                                  _EXC_FLAGS_PARAM
+                                                  _EXC_MASKS_PARAM
+                                                  _EXC_INFO_PARAM);
+     extern unsigned short bid128_to_uint16_xrnint (UINT128 x
+                                                   _EXC_FLAGS_PARAM
+                                                   _EXC_MASKS_PARAM
+                                                   _EXC_INFO_PARAM);
+     extern unsigned short bid128_to_uint16_rninta (UINT128 x
+                                                   _EXC_FLAGS_PARAM
+                                                   _EXC_MASKS_PARAM
+                                                   _EXC_INFO_PARAM);
+     extern unsigned short bid128_to_uint16_xrninta (UINT128 x
+                                                    _EXC_FLAGS_PARAM
+                                                    _EXC_MASKS_PARAM
+                                                    _EXC_INFO_PARAM);
+     extern unsigned short bid128_to_uint16_int (UINT128 x
+                                                _EXC_FLAGS_PARAM
+                                                _EXC_MASKS_PARAM
+                                                _EXC_INFO_PARAM);
+     extern unsigned short bid128_to_uint16_xint (UINT128 x
+                                                 _EXC_FLAGS_PARAM
+                                                 _EXC_MASKS_PARAM
+                                                 _EXC_INFO_PARAM);
+     extern unsigned short bid128_to_uint16_floor (UINT128 x
+                                                  _EXC_FLAGS_PARAM
+                                                  _EXC_MASKS_PARAM
+                                                  _EXC_INFO_PARAM);
+     extern unsigned short bid128_to_uint16_xfloor (UINT128 x
+                                                   _EXC_FLAGS_PARAM
+                                                   _EXC_MASKS_PARAM
+                                                   _EXC_INFO_PARAM);
+     extern unsigned short bid128_to_uint16_ceil (UINT128 x
+                                                 _EXC_FLAGS_PARAM
+                                                 _EXC_MASKS_PARAM
+                                                 _EXC_INFO_PARAM);
+     extern unsigned short bid128_to_uint16_xceil (UINT128 x
+                                                  _EXC_FLAGS_PARAM
+                                                  _EXC_MASKS_PARAM
+                                                  _EXC_INFO_PARAM);
+     extern int bid128_to_int32_rnint (UINT128 x _EXC_FLAGS_PARAM
+                                      _EXC_MASKS_PARAM
+                                      _EXC_INFO_PARAM);
+     extern int bid128_to_int32_xrnint (UINT128 x _EXC_FLAGS_PARAM
+                                       _EXC_MASKS_PARAM
+                                       _EXC_INFO_PARAM);
+     extern int bid128_to_int32_rninta (UINT128 x _EXC_FLAGS_PARAM
+                                       _EXC_MASKS_PARAM
+                                       _EXC_INFO_PARAM);
+     extern int bid128_to_int32_xrninta (UINT128 x _EXC_FLAGS_PARAM
+                                        _EXC_MASKS_PARAM
+                                        _EXC_INFO_PARAM);
+     extern int bid128_to_int32_int (UINT128 x _EXC_FLAGS_PARAM
+                                    _EXC_MASKS_PARAM _EXC_INFO_PARAM);
+     extern int bid128_to_int32_xint (UINT128 x _EXC_FLAGS_PARAM
+                                     _EXC_MASKS_PARAM _EXC_INFO_PARAM);
+     extern int bid128_to_int32_floor (UINT128 x _EXC_FLAGS_PARAM
+                                      _EXC_MASKS_PARAM
+                                      _EXC_INFO_PARAM);
+     extern int bid128_to_int32_xfloor (UINT128 x _EXC_FLAGS_PARAM
+                                       _EXC_MASKS_PARAM
+                                       _EXC_INFO_PARAM);
+     extern int bid128_to_int32_ceil (UINT128 x _EXC_FLAGS_PARAM
+                                     _EXC_MASKS_PARAM _EXC_INFO_PARAM);
+     extern int bid128_to_int32_xceil (UINT128 x _EXC_FLAGS_PARAM
+                                      _EXC_MASKS_PARAM
+                                      _EXC_INFO_PARAM);
+     extern unsigned int bid128_to_uint32_rnint (UINT128 x
+                                                _EXC_FLAGS_PARAM
+                                                _EXC_MASKS_PARAM
+                                                _EXC_INFO_PARAM);
+     extern unsigned int bid128_to_uint32_xrnint (UINT128 x
+                                                 _EXC_FLAGS_PARAM
+                                                 _EXC_MASKS_PARAM
+                                                 _EXC_INFO_PARAM);
+     extern unsigned int bid128_to_uint32_rninta (UINT128 x
+                                                 _EXC_FLAGS_PARAM
+                                                 _EXC_MASKS_PARAM
+                                                 _EXC_INFO_PARAM);
+     extern unsigned int bid128_to_uint32_xrninta (UINT128 x
+                                                  _EXC_FLAGS_PARAM
+                                                  _EXC_MASKS_PARAM
+                                                  _EXC_INFO_PARAM);
+     extern unsigned int bid128_to_uint32_int (UINT128 x
+                                              _EXC_FLAGS_PARAM
+                                              _EXC_MASKS_PARAM
+                                              _EXC_INFO_PARAM);
+     extern unsigned int bid128_to_uint32_xint (UINT128 x
+                                               _EXC_FLAGS_PARAM
+                                               _EXC_MASKS_PARAM
+                                               _EXC_INFO_PARAM);
+     extern unsigned int bid128_to_uint32_floor (UINT128 x
+                                                _EXC_FLAGS_PARAM
+                                                _EXC_MASKS_PARAM
+                                                _EXC_INFO_PARAM);
+     extern unsigned int bid128_to_uint32_xfloor (UINT128 x
+                                                 _EXC_FLAGS_PARAM
+                                                 _EXC_MASKS_PARAM
+                                                 _EXC_INFO_PARAM);
+     extern unsigned int bid128_to_uint32_ceil (UINT128 x
+                                               _EXC_FLAGS_PARAM
+                                               _EXC_MASKS_PARAM
+                                               _EXC_INFO_PARAM);
+     extern unsigned int bid128_to_uint32_xceil (UINT128 x
+                                                _EXC_FLAGS_PARAM
+                                                _EXC_MASKS_PARAM
+                                                _EXC_INFO_PARAM);
+     extern SINT64 bid128_to_int64_rnint (UINT128 x _EXC_FLAGS_PARAM
+                                         _EXC_MASKS_PARAM
+                                         _EXC_INFO_PARAM);
+     extern SINT64 bid128_to_int64_xrnint (UINT128 x _EXC_FLAGS_PARAM
+                                          _EXC_MASKS_PARAM
+                                          _EXC_INFO_PARAM);
+     extern SINT64 bid128_to_int64_rninta (UINT128 x _EXC_FLAGS_PARAM
+                                          _EXC_MASKS_PARAM
+                                          _EXC_INFO_PARAM);
+     extern SINT64 bid128_to_int64_xrninta (UINT128 x _EXC_FLAGS_PARAM
+                                           _EXC_MASKS_PARAM
+                                           _EXC_INFO_PARAM);
+     extern SINT64 bid128_to_int64_int (UINT128 x _EXC_FLAGS_PARAM
+                                       _EXC_MASKS_PARAM
+                                       _EXC_INFO_PARAM);
+     extern SINT64 bid128_to_int64_xint (UINT128 x _EXC_FLAGS_PARAM
+                                        _EXC_MASKS_PARAM
+                                        _EXC_INFO_PARAM);
+     extern SINT64 bid128_to_int64_floor (UINT128 x _EXC_FLAGS_PARAM
+                                         _EXC_MASKS_PARAM
+                                         _EXC_INFO_PARAM);
+     extern SINT64 bid128_to_int64_xfloor (UINT128 x _EXC_FLAGS_PARAM
+                                          _EXC_MASKS_PARAM
+                                          _EXC_INFO_PARAM);
+     extern SINT64 bid128_to_int64_ceil (UINT128 x _EXC_FLAGS_PARAM
+                                        _EXC_MASKS_PARAM
+                                        _EXC_INFO_PARAM);
+     extern SINT64 bid128_to_int64_xceil (UINT128 x _EXC_FLAGS_PARAM
+                                         _EXC_MASKS_PARAM
+                                         _EXC_INFO_PARAM);
+     extern UINT64 bid128_to_uint64_rnint (UINT128 x _EXC_FLAGS_PARAM
+                                          _EXC_MASKS_PARAM
+                                          _EXC_INFO_PARAM);
+     extern UINT64 bid128_to_uint64_xrnint (UINT128 x _EXC_FLAGS_PARAM
+                                           _EXC_MASKS_PARAM
+                                           _EXC_INFO_PARAM);
+     extern UINT64 bid128_to_uint64_rninta (UINT128 x _EXC_FLAGS_PARAM
+                                           _EXC_MASKS_PARAM
+                                           _EXC_INFO_PARAM);
+     extern UINT64 bid128_to_uint64_xrninta (UINT128 x _EXC_FLAGS_PARAM
+                                            _EXC_MASKS_PARAM
+                                            _EXC_INFO_PARAM);
+     extern UINT64 bid128_to_uint64_int (UINT128 x _EXC_FLAGS_PARAM
+                                        _EXC_MASKS_PARAM
+                                        _EXC_INFO_PARAM);
+     extern UINT64 bid128_to_uint64_xint (UINT128 x _EXC_FLAGS_PARAM
+                                         _EXC_MASKS_PARAM
+                                         _EXC_INFO_PARAM);
+     extern UINT64 bid128_to_uint64_floor (UINT128 x _EXC_FLAGS_PARAM
+                                          _EXC_MASKS_PARAM
+                                          _EXC_INFO_PARAM);
+     extern UINT64 bid128_to_uint64_xfloor (UINT128 x _EXC_FLAGS_PARAM
+                                           _EXC_MASKS_PARAM
+                                           _EXC_INFO_PARAM);
+     extern UINT64 bid128_to_uint64_ceil (UINT128 x _EXC_FLAGS_PARAM
+                                         _EXC_MASKS_PARAM
+                                         _EXC_INFO_PARAM);
+     extern UINT64 bid128_to_uint64_xceil (UINT128 x _EXC_FLAGS_PARAM
+                                          _EXC_MASKS_PARAM
+                                          _EXC_INFO_PARAM);
+     extern int bid64_to_int32_rnint (UINT64 x _EXC_FLAGS_PARAM
+                                     _EXC_MASKS_PARAM _EXC_INFO_PARAM);
+     extern int bid64_to_int32_xrnint (UINT64 x _EXC_FLAGS_PARAM
+                                      _EXC_MASKS_PARAM
+                                      _EXC_INFO_PARAM);
+     extern int bid64_to_int32_rninta (UINT64 x _EXC_FLAGS_PARAM
+                                      _EXC_MASKS_PARAM
+                                      _EXC_INFO_PARAM);
+     extern int bid64_to_int32_xrninta (UINT64 x _EXC_FLAGS_PARAM
+                                       _EXC_MASKS_PARAM
+                                       _EXC_INFO_PARAM);
+     extern int bid64_to_int32_int (UINT64 x _EXC_FLAGS_PARAM
+                                   _EXC_MASKS_PARAM _EXC_INFO_PARAM);
+     extern int bid64_to_int32_xint (UINT64 x _EXC_FLAGS_PARAM
+                                    _EXC_MASKS_PARAM _EXC_INFO_PARAM);
+     extern int bid64_to_int32_floor (UINT64 x _EXC_FLAGS_PARAM
+                                     _EXC_MASKS_PARAM _EXC_INFO_PARAM);
+     extern int bid64_to_int32_xfloor (UINT64 x _EXC_FLAGS_PARAM
+                                      _EXC_MASKS_PARAM
+                                      _EXC_INFO_PARAM);
+     extern int bid64_to_int32_ceil (UINT64 x _EXC_FLAGS_PARAM
+                                    _EXC_MASKS_PARAM _EXC_INFO_PARAM);
+     extern int bid64_to_int32_xceil (UINT64 x _EXC_FLAGS_PARAM
+                                     _EXC_MASKS_PARAM _EXC_INFO_PARAM);
+     extern char bid64_to_int8_rnint (UINT64 x _EXC_FLAGS_PARAM
+                                     _EXC_MASKS_PARAM _EXC_INFO_PARAM);
+     extern char bid64_to_int8_xrnint (UINT64 x _EXC_FLAGS_PARAM
+                                      _EXC_MASKS_PARAM
+                                      _EXC_INFO_PARAM);
+     extern char bid64_to_int8_rninta (UINT64 x _EXC_FLAGS_PARAM
+                                      _EXC_MASKS_PARAM
+                                      _EXC_INFO_PARAM);
+     extern char bid64_to_int8_xrninta (UINT64 x _EXC_FLAGS_PARAM
+                                       _EXC_MASKS_PARAM
+                                       _EXC_INFO_PARAM);
+     extern char bid64_to_int8_int (UINT64 x _EXC_FLAGS_PARAM
+                                   _EXC_MASKS_PARAM _EXC_INFO_PARAM);
+     extern char bid64_to_int8_xint (UINT64 x _EXC_FLAGS_PARAM
+                                    _EXC_MASKS_PARAM _EXC_INFO_PARAM);
+     extern char bid64_to_int8_floor (UINT64 x _EXC_FLAGS_PARAM
+                                     _EXC_MASKS_PARAM _EXC_INFO_PARAM);
+     extern char bid64_to_int8_xfloor (UINT64 x _EXC_FLAGS_PARAM
+                                      _EXC_MASKS_PARAM
+                                      _EXC_INFO_PARAM);
+     extern char bid64_to_int8_ceil (UINT64 x _EXC_FLAGS_PARAM
+                                    _EXC_MASKS_PARAM _EXC_INFO_PARAM);
+     extern char bid64_to_int8_xceil (UINT64 x _EXC_FLAGS_PARAM
+                                     _EXC_MASKS_PARAM _EXC_INFO_PARAM);
+     extern short bid64_to_int16_rnint (UINT64 x _EXC_FLAGS_PARAM
+                                       _EXC_MASKS_PARAM
+                                       _EXC_INFO_PARAM);
+     extern short bid64_to_int16_xrnint (UINT64 x _EXC_FLAGS_PARAM
+                                        _EXC_MASKS_PARAM
+                                        _EXC_INFO_PARAM);
+     extern short bid64_to_int16_rninta (UINT64 x _EXC_FLAGS_PARAM
+                                        _EXC_MASKS_PARAM
+                                        _EXC_INFO_PARAM);
+     extern short bid64_to_int16_xrninta (UINT64 x _EXC_FLAGS_PARAM
+                                         _EXC_MASKS_PARAM
+                                         _EXC_INFO_PARAM);
+     extern short bid64_to_int16_int (UINT64 x _EXC_FLAGS_PARAM
+                                     _EXC_MASKS_PARAM _EXC_INFO_PARAM);
+     extern short bid64_to_int16_xint (UINT64 x _EXC_FLAGS_PARAM
+                                      _EXC_MASKS_PARAM
+                                      _EXC_INFO_PARAM);
+     extern short bid64_to_int16_floor (UINT64 x _EXC_FLAGS_PARAM
+                                       _EXC_MASKS_PARAM
+                                       _EXC_INFO_PARAM);
+     extern short bid64_to_int16_xfloor (UINT64 x _EXC_FLAGS_PARAM
+                                        _EXC_MASKS_PARAM
+                                        _EXC_INFO_PARAM);
+     extern short bid64_to_int16_ceil (UINT64 x _EXC_FLAGS_PARAM
+                                      _EXC_MASKS_PARAM
+                                      _EXC_INFO_PARAM);
+     extern short bid64_to_int16_xceil (UINT64 x _EXC_FLAGS_PARAM
+                                       _EXC_MASKS_PARAM
+                                       _EXC_INFO_PARAM);
+     extern unsigned char bid64_to_uint8_rnint (UINT64 x
+                                               _EXC_FLAGS_PARAM
+                                               _EXC_MASKS_PARAM
+                                               _EXC_INFO_PARAM);
+     extern unsigned char bid64_to_uint8_xrnint (UINT64 x
+                                                _EXC_FLAGS_PARAM
+                                                _EXC_MASKS_PARAM
+                                                _EXC_INFO_PARAM);
+     extern unsigned char bid64_to_uint8_rninta (UINT64 x
+                                                _EXC_FLAGS_PARAM
+                                                _EXC_MASKS_PARAM
+                                                _EXC_INFO_PARAM);
+     extern unsigned char bid64_to_uint8_xrninta (UINT64 x
+                                                 _EXC_FLAGS_PARAM
+                                                 _EXC_MASKS_PARAM
+                                                 _EXC_INFO_PARAM);
+     extern unsigned char bid64_to_uint8_int (UINT64 x _EXC_FLAGS_PARAM
+                                             _EXC_MASKS_PARAM
+                                             _EXC_INFO_PARAM);
+     extern unsigned char bid64_to_uint8_xint (UINT64 x _EXC_FLAGS_PARAM
+                                              _EXC_MASKS_PARAM
+                                              _EXC_INFO_PARAM);
+     extern unsigned char bid64_to_uint8_floor (UINT64 x
+                                               _EXC_FLAGS_PARAM
+                                               _EXC_MASKS_PARAM
+                                               _EXC_INFO_PARAM);
+     extern unsigned char bid64_to_uint8_xfloor (UINT64 x
+                                                _EXC_FLAGS_PARAM
+                                                _EXC_MASKS_PARAM
+                                                _EXC_INFO_PARAM);
+     extern unsigned char bid64_to_uint8_ceil (UINT64 x _EXC_FLAGS_PARAM
+                                              _EXC_MASKS_PARAM
+                                              _EXC_INFO_PARAM);
+     extern unsigned char bid64_to_uint8_xceil (UINT64 x
+                                               _EXC_FLAGS_PARAM
+                                               _EXC_MASKS_PARAM
+                                               _EXC_INFO_PARAM);
+     extern unsigned short bid64_to_uint16_rnint (UINT64 x
+                                                 _EXC_FLAGS_PARAM
+                                                 _EXC_MASKS_PARAM
+                                                 _EXC_INFO_PARAM);
+     extern unsigned short bid64_to_uint16_xrnint (UINT64 x
+                                                  _EXC_FLAGS_PARAM
+                                                  _EXC_MASKS_PARAM
+                                                  _EXC_INFO_PARAM);
+     extern unsigned short bid64_to_uint16_rninta (UINT64 x
+                                                  _EXC_FLAGS_PARAM
+                                                  _EXC_MASKS_PARAM
+                                                  _EXC_INFO_PARAM);
+     extern unsigned short bid64_to_uint16_xrninta (UINT64 x
+                                                   _EXC_FLAGS_PARAM
+                                                   _EXC_MASKS_PARAM
+                                                   _EXC_INFO_PARAM);
+     extern unsigned short bid64_to_uint16_int (UINT64 x
+                                               _EXC_FLAGS_PARAM
+                                               _EXC_MASKS_PARAM
+                                               _EXC_INFO_PARAM);
+     extern unsigned short bid64_to_uint16_xint (UINT64 x
+                                                _EXC_FLAGS_PARAM
+                                                _EXC_MASKS_PARAM
+                                                _EXC_INFO_PARAM);
+     extern unsigned short bid64_to_uint16_floor (UINT64 x
+                                                 _EXC_FLAGS_PARAM
+                                                 _EXC_MASKS_PARAM
+                                                 _EXC_INFO_PARAM);
+     extern unsigned short bid64_to_uint16_xfloor (UINT64 x
+                                                  _EXC_FLAGS_PARAM
+                                                  _EXC_MASKS_PARAM
+                                                  _EXC_INFO_PARAM);
+     extern unsigned short bid64_to_uint16_ceil (UINT64 x
+                                                _EXC_FLAGS_PARAM
+                                                _EXC_MASKS_PARAM
+                                                _EXC_INFO_PARAM);
+     extern unsigned short bid64_to_uint16_xceil (UINT64 x
+                                                 _EXC_FLAGS_PARAM
+                                                 _EXC_MASKS_PARAM
+                                                 _EXC_INFO_PARAM);
+     extern unsigned int bid64_to_uint32_rnint (UINT64 x
+                                               _EXC_FLAGS_PARAM
+                                               _EXC_MASKS_PARAM
+                                               _EXC_INFO_PARAM);
+     extern unsigned int bid64_to_uint32_xrnint (UINT64 x
+                                                _EXC_FLAGS_PARAM
+                                                _EXC_MASKS_PARAM
+                                                _EXC_INFO_PARAM);
+     extern unsigned int bid64_to_uint32_rninta (UINT64 x
+                                                _EXC_FLAGS_PARAM
+                                                _EXC_MASKS_PARAM
+                                                _EXC_INFO_PARAM);
+     extern unsigned int bid64_to_uint32_xrninta (UINT64 x
+                                                 _EXC_FLAGS_PARAM
+                                                 _EXC_MASKS_PARAM
+                                                 _EXC_INFO_PARAM);
+     extern unsigned int bid64_to_uint32_int (UINT64 x _EXC_FLAGS_PARAM
+                                             _EXC_MASKS_PARAM
+                                             _EXC_INFO_PARAM);
+     extern unsigned int bid64_to_uint32_xint (UINT64 x _EXC_FLAGS_PARAM
+                                              _EXC_MASKS_PARAM
+                                              _EXC_INFO_PARAM);
+     extern unsigned int bid64_to_uint32_floor (UINT64 x
+                                               _EXC_FLAGS_PARAM
+                                               _EXC_MASKS_PARAM
+                                               _EXC_INFO_PARAM);
+     extern unsigned int bid64_to_uint32_xfloor (UINT64 x
+                                                _EXC_FLAGS_PARAM
+                                                _EXC_MASKS_PARAM
+                                                _EXC_INFO_PARAM);
+     extern unsigned int bid64_to_uint32_ceil (UINT64 x _EXC_FLAGS_PARAM
+                                              _EXC_MASKS_PARAM
+                                              _EXC_INFO_PARAM);
+     extern unsigned int bid64_to_uint32_xceil (UINT64 x
+                                               _EXC_FLAGS_PARAM
+                                               _EXC_MASKS_PARAM
+                                               _EXC_INFO_PARAM);
+     extern SINT64 bid64_to_int64_rnint (UINT64 x _EXC_FLAGS_PARAM
+                                        _EXC_MASKS_PARAM
+                                        _EXC_INFO_PARAM);
+     extern SINT64 bid64_to_int64_xrnint (UINT64 x _EXC_FLAGS_PARAM
+                                         _EXC_MASKS_PARAM
+                                         _EXC_INFO_PARAM);
+     extern SINT64 bid64_to_int64_rninta (UINT64 x _EXC_FLAGS_PARAM
+                                         _EXC_MASKS_PARAM
+                                         _EXC_INFO_PARAM);
+     extern SINT64 bid64_to_int64_xrninta (UINT64 x _EXC_FLAGS_PARAM
+                                          _EXC_MASKS_PARAM
+                                          _EXC_INFO_PARAM);
+     extern SINT64 bid64_to_int64_int (UINT64 x _EXC_FLAGS_PARAM
+                                      _EXC_MASKS_PARAM
+                                      _EXC_INFO_PARAM);
+     extern SINT64 bid64_to_int64_xint (UINT64 x _EXC_FLAGS_PARAM
+                                       _EXC_MASKS_PARAM
+                                       _EXC_INFO_PARAM);
+     extern SINT64 bid64_to_int64_floor (UINT64 x _EXC_FLAGS_PARAM
+                                        _EXC_MASKS_PARAM
+                                        _EXC_INFO_PARAM);
+     extern SINT64 bid64_to_int64_xfloor (UINT64 x _EXC_FLAGS_PARAM
+                                         _EXC_MASKS_PARAM
+                                         _EXC_INFO_PARAM);
+     extern SINT64 bid64_to_int64_ceil (UINT64 x _EXC_FLAGS_PARAM
+                                       _EXC_MASKS_PARAM
+                                       _EXC_INFO_PARAM);
+     extern SINT64 bid64_to_int64_xceil (UINT64 x _EXC_FLAGS_PARAM
+                                        _EXC_MASKS_PARAM
+                                        _EXC_INFO_PARAM);
+     extern UINT64 bid64_to_uint64_rnint (UINT64 x _EXC_FLAGS_PARAM
+                                         _EXC_MASKS_PARAM
+                                         _EXC_INFO_PARAM);
+     extern UINT64 bid64_to_uint64_xrnint (UINT64 x _EXC_FLAGS_PARAM
+                                          _EXC_MASKS_PARAM
+                                          _EXC_INFO_PARAM);
+     extern UINT64 bid64_to_uint64_rninta (UINT64 x _EXC_FLAGS_PARAM
+                                          _EXC_MASKS_PARAM
+                                          _EXC_INFO_PARAM);
+     extern UINT64 bid64_to_uint64_xrninta (UINT64 x _EXC_FLAGS_PARAM
+                                           _EXC_MASKS_PARAM
+                                           _EXC_INFO_PARAM);
+     extern UINT64 bid64_to_uint64_int (UINT64 x _EXC_FLAGS_PARAM
+                                       _EXC_MASKS_PARAM
+                                       _EXC_INFO_PARAM);
+     extern UINT64 bid64_to_uint64_xint (UINT64 x _EXC_FLAGS_PARAM
+                                        _EXC_MASKS_PARAM
+                                        _EXC_INFO_PARAM);
+     extern UINT64 bid64_to_uint64_floor (UINT64 x _EXC_FLAGS_PARAM
+                                         _EXC_MASKS_PARAM
+                                         _EXC_INFO_PARAM);
+     extern UINT64 bid64_to_uint64_xfloor (UINT64 x _EXC_FLAGS_PARAM
+                                          _EXC_MASKS_PARAM
+                                          _EXC_INFO_PARAM);
+     extern UINT64 bid64_to_uint64_ceil (UINT64 x _EXC_FLAGS_PARAM
+                                        _EXC_MASKS_PARAM
+                                        _EXC_INFO_PARAM);
+     extern UINT64 bid64_to_uint64_xceil (UINT64 x _EXC_FLAGS_PARAM
+                                         _EXC_MASKS_PARAM
+                                         _EXC_INFO_PARAM);
+
+     extern int bid64_quiet_equal (UINT64 x, UINT64 y
+                                  _EXC_FLAGS_PARAM _EXC_MASKS_PARAM
+                                  _EXC_INFO_PARAM);
+     extern int bid64_quiet_greater (UINT64 x,
+                                    UINT64 y _EXC_FLAGS_PARAM
+                                    _EXC_MASKS_PARAM _EXC_INFO_PARAM);
+     extern int bid64_quiet_greater_equal (UINT64 x,
+                                          UINT64 y _EXC_FLAGS_PARAM
+                                          _EXC_MASKS_PARAM
+                                          _EXC_INFO_PARAM);
+     extern int bid64_quiet_greater_unordered (UINT64 x,
+                                              UINT64 y _EXC_FLAGS_PARAM
+                                              _EXC_MASKS_PARAM
+                                              _EXC_INFO_PARAM);
+     extern int bid64_quiet_less (UINT64 x,
+                                 UINT64 y _EXC_FLAGS_PARAM
+                                 _EXC_MASKS_PARAM _EXC_INFO_PARAM);
+     extern int bid64_quiet_less_equal (UINT64 x,
+                                       UINT64 y _EXC_FLAGS_PARAM
+                                       _EXC_MASKS_PARAM
+                                       _EXC_INFO_PARAM);
+     extern int bid64_quiet_less_unordered (UINT64 x,
+                                           UINT64 y _EXC_FLAGS_PARAM
+                                           _EXC_MASKS_PARAM
+                                           _EXC_INFO_PARAM);
+     extern int bid64_quiet_not_equal (UINT64 x,
+                                      UINT64 y _EXC_FLAGS_PARAM
+                                      _EXC_MASKS_PARAM
+                                      _EXC_INFO_PARAM);
+     extern int bid64_quiet_not_greater (UINT64 x,
+                                        UINT64 y _EXC_FLAGS_PARAM
+                                        _EXC_MASKS_PARAM
+                                        _EXC_INFO_PARAM);
+     extern int bid64_quiet_not_less (UINT64 x,
+                                     UINT64 y _EXC_FLAGS_PARAM
+                                     _EXC_MASKS_PARAM _EXC_INFO_PARAM);
+     extern int bid64_quiet_ordered (UINT64 x,
+                                    UINT64 y _EXC_FLAGS_PARAM
+                                    _EXC_MASKS_PARAM _EXC_INFO_PARAM);
+     extern int bid64_quiet_unordered (UINT64 x,
+                                      UINT64 y _EXC_FLAGS_PARAM
+                                      _EXC_MASKS_PARAM
+                                      _EXC_INFO_PARAM);
+     extern int bid64_signaling_greater (UINT64 x,
+                                        UINT64 y _EXC_FLAGS_PARAM
+                                        _EXC_MASKS_PARAM
+                                        _EXC_INFO_PARAM);
+     extern int bid64_signaling_greater_equal (UINT64 x,
+                                              UINT64 y _EXC_FLAGS_PARAM
+                                              _EXC_MASKS_PARAM
+                                              _EXC_INFO_PARAM);
+     extern int bid64_signaling_greater_unordered (UINT64 x,
+                                                  UINT64 y
+                                                  _EXC_FLAGS_PARAM
+                                                  _EXC_MASKS_PARAM
+                                                  _EXC_INFO_PARAM);
+     extern int bid64_signaling_less (UINT64 x,
+                                     UINT64 y _EXC_FLAGS_PARAM
+                                     _EXC_MASKS_PARAM _EXC_INFO_PARAM);
+     extern int bid64_signaling_less_equal (UINT64 x,
+                                           UINT64 y _EXC_FLAGS_PARAM
+                                           _EXC_MASKS_PARAM
+                                           _EXC_INFO_PARAM);
+     extern int bid64_signaling_less_unordered (UINT64 x,
+                                               UINT64 y
+                                               _EXC_FLAGS_PARAM
+                                               _EXC_MASKS_PARAM
+                                               _EXC_INFO_PARAM);
+     extern int bid64_signaling_not_greater (UINT64 x,
+                                            UINT64 y _EXC_FLAGS_PARAM
+                                            _EXC_MASKS_PARAM
+                                            _EXC_INFO_PARAM);
+     extern int bid64_signaling_not_less (UINT64 x,
+                                         UINT64 y _EXC_FLAGS_PARAM
+                                         _EXC_MASKS_PARAM
+                                         _EXC_INFO_PARAM);
+
+     extern int bid128_quiet_equal (UINT128 x, UINT128 y
+                                   _EXC_FLAGS_PARAM _EXC_MASKS_PARAM
+                                   _EXC_INFO_PARAM);
+     extern int bid128_quiet_greater (UINT128 x,
+                                     UINT128 y _EXC_FLAGS_PARAM
+                                     _EXC_MASKS_PARAM _EXC_INFO_PARAM);
+     extern int bid128_quiet_greater_equal (UINT128 x,
+                                           UINT128 y _EXC_FLAGS_PARAM
+                                           _EXC_MASKS_PARAM
+                                           _EXC_INFO_PARAM);
+     extern int bid128_quiet_greater_unordered (UINT128 x,
+                                               UINT128 y
+                                               _EXC_FLAGS_PARAM
+                                               _EXC_MASKS_PARAM
+                                               _EXC_INFO_PARAM);
+     extern int bid128_quiet_less (UINT128 x,
+                                  UINT128 y _EXC_FLAGS_PARAM
+                                  _EXC_MASKS_PARAM _EXC_INFO_PARAM);
+     extern int bid128_quiet_less_equal (UINT128 x,
+                                        UINT128 y _EXC_FLAGS_PARAM
+                                        _EXC_MASKS_PARAM
+                                        _EXC_INFO_PARAM);
+     extern int bid128_quiet_less_unordered (UINT128 x,
+                                            UINT128 y _EXC_FLAGS_PARAM
+                                            _EXC_MASKS_PARAM
+                                            _EXC_INFO_PARAM);
+     extern int bid128_quiet_not_equal (UINT128 x,
+                                       UINT128 y _EXC_FLAGS_PARAM
+                                       _EXC_MASKS_PARAM
+                                       _EXC_INFO_PARAM);
+     extern int bid128_quiet_not_greater (UINT128 x,
+                                         UINT128 y _EXC_FLAGS_PARAM
+                                         _EXC_MASKS_PARAM
+                                         _EXC_INFO_PARAM);
+     extern int bid128_quiet_not_less (UINT128 x,
+                                      UINT128 y _EXC_FLAGS_PARAM
+                                      _EXC_MASKS_PARAM
+                                      _EXC_INFO_PARAM);
+     extern int bid128_quiet_ordered (UINT128 x,
+                                     UINT128 y _EXC_FLAGS_PARAM
+                                     _EXC_MASKS_PARAM _EXC_INFO_PARAM);
+     extern int bid128_quiet_unordered (UINT128 x,
+                                       UINT128 y _EXC_FLAGS_PARAM
+                                       _EXC_MASKS_PARAM
+                                       _EXC_INFO_PARAM);
+     extern int bid128_signaling_greater (UINT128 x,
+                                         UINT128 y _EXC_FLAGS_PARAM
+                                         _EXC_MASKS_PARAM
+                                         _EXC_INFO_PARAM);
+     extern int bid128_signaling_greater_equal (UINT128 x,
+                                               UINT128 y
+                                               _EXC_FLAGS_PARAM
+                                               _EXC_MASKS_PARAM
+                                               _EXC_INFO_PARAM);
+     extern int bid128_signaling_greater_unordered (UINT128 x,
+                                                   UINT128 y
+                                                   _EXC_FLAGS_PARAM
+                                                   _EXC_MASKS_PARAM
+                                                   _EXC_INFO_PARAM);
+     extern int bid128_signaling_less (UINT128 x,
+                                      UINT128 y _EXC_FLAGS_PARAM
+                                      _EXC_MASKS_PARAM
+                                      _EXC_INFO_PARAM);
+     extern int bid128_signaling_less_equal (UINT128 x,
+                                            UINT128 y _EXC_FLAGS_PARAM
+                                            _EXC_MASKS_PARAM
+                                            _EXC_INFO_PARAM);
+     extern int bid128_signaling_less_unordered (UINT128 x,
+                                                UINT128 y
+                                                _EXC_FLAGS_PARAM
+                                                _EXC_MASKS_PARAM
+                                                _EXC_INFO_PARAM);
+     extern int bid128_signaling_not_greater (UINT128 x,
+                                             UINT128 y _EXC_FLAGS_PARAM
+                                             _EXC_MASKS_PARAM
+                                             _EXC_INFO_PARAM);
+     extern int bid128_signaling_not_less (UINT128 x,
+                                          UINT128 y _EXC_FLAGS_PARAM
+                                          _EXC_MASKS_PARAM
+                                          _EXC_INFO_PARAM);
+
+     extern UINT64 bid64_round_integral_exact (UINT64 x
+                                              _RND_MODE_PARAM
+                                              _EXC_FLAGS_PARAM
+                                              _EXC_MASKS_PARAM
+                                              _EXC_INFO_PARAM);
+     extern UINT64 bid64_round_integral_nearest_even (UINT64 x
+                                                     _EXC_FLAGS_PARAM
+                                                     _EXC_MASKS_PARAM
+                                                     _EXC_INFO_PARAM);
+     extern UINT64 bid64_round_integral_negative (UINT64 x
+                                                 _EXC_FLAGS_PARAM
+                                                 _EXC_MASKS_PARAM
+                                                 _EXC_INFO_PARAM);
+     extern UINT64 bid64_round_integral_positive (UINT64 x
+                                                 _EXC_FLAGS_PARAM
+                                                 _EXC_MASKS_PARAM
+                                                 _EXC_INFO_PARAM);
+     extern UINT64 bid64_round_integral_zero (UINT64 x _EXC_FLAGS_PARAM
+                                             _EXC_MASKS_PARAM
+                                             _EXC_INFO_PARAM);
+     extern UINT64 bid64_round_integral_nearest_away (UINT64 x
+                                                     _EXC_FLAGS_PARAM
+                                                     _EXC_MASKS_PARAM
+                                                     _EXC_INFO_PARAM);
+
+     extern UINT128 bid128_round_integral_exact (UINT128 x
+                                                _RND_MODE_PARAM
+                                                _EXC_FLAGS_PARAM
+                                                _EXC_MASKS_PARAM
+                                                _EXC_INFO_PARAM);
+     extern UINT128 bid128_round_integral_nearest_even (UINT128 x
+                                                       _EXC_FLAGS_PARAM
+                                                       _EXC_MASKS_PARAM
+                                                       _EXC_INFO_PARAM);
+     extern UINT128 bid128_round_integral_negative (UINT128 x
+                                                   _EXC_FLAGS_PARAM
+                                                   _EXC_MASKS_PARAM
+                                                   _EXC_INFO_PARAM);
+     extern UINT128 bid128_round_integral_positive (UINT128 x
+                                                   _EXC_FLAGS_PARAM
+                                                   _EXC_MASKS_PARAM
+                                                   _EXC_INFO_PARAM);
+     extern UINT128 bid128_round_integral_zero (UINT128 x
+                                               _EXC_FLAGS_PARAM
+                                               _EXC_MASKS_PARAM
+                                               _EXC_INFO_PARAM);
+     extern UINT128 bid128_round_integral_nearest_away (UINT128 x
+                                                       _EXC_FLAGS_PARAM
+                                                       _EXC_MASKS_PARAM
+                                                       _EXC_INFO_PARAM);
+
+     extern UINT64 bid64_nextup (UINT64 x
+                                _EXC_FLAGS_PARAM _EXC_MASKS_PARAM
+                                _EXC_INFO_PARAM);
+     extern UINT64 bid64_nextdown (UINT64 x _EXC_FLAGS_PARAM
+                                  _EXC_MASKS_PARAM _EXC_INFO_PARAM);
+     extern UINT64 bid64_nextafter (UINT64 x,
+                                   UINT64 y _EXC_FLAGS_PARAM
+                                   _EXC_MASKS_PARAM _EXC_INFO_PARAM);
+
+     extern UINT128 bid128_nextup (UINT128 x
+                                  _EXC_FLAGS_PARAM _EXC_MASKS_PARAM
+                                  _EXC_INFO_PARAM);
+     extern UINT128 bid128_nextdown (UINT128 x _EXC_FLAGS_PARAM
+                                    _EXC_MASKS_PARAM _EXC_INFO_PARAM);
+     extern UINT128 bid128_nextafter (UINT128 x,
+                                     UINT128 y _EXC_FLAGS_PARAM
+                                     _EXC_MASKS_PARAM _EXC_INFO_PARAM);
+
+     extern UINT64 bid64_minnum (UINT64 x, UINT64 y _EXC_FLAGS_PARAM);
+     extern UINT64 bid64_minnum_mag (UINT64 x,
+                                    UINT64 y _EXC_FLAGS_PARAM);
+     extern UINT64 bid64_maxnum (UINT64 x, UINT64 y _EXC_FLAGS_PARAM);
+     extern UINT64 bid64_maxnum_mag (UINT64 x,
+                                    UINT64 y _EXC_FLAGS_PARAM);
+
+     extern UINT128 bid128_minnum (UINT128 x,
+                                  UINT128 y _EXC_FLAGS_PARAM);
+     extern UINT128 bid128_minnum_mag (UINT128 x,
+                                      UINT128 y _EXC_FLAGS_PARAM);
+     extern UINT128 bid128_maxnum (UINT128 x,
+                                  UINT128 y _EXC_FLAGS_PARAM);
+     extern UINT128 bid128_maxnum_mag (UINT128 x,
+                                      UINT128 y _EXC_FLAGS_PARAM);
+
+     extern UINT64 bid64_from_int32 (int x _EXC_MASKS_PARAM
+                                    _EXC_INFO_PARAM);
+     extern UINT64 bid64_from_uint32 (unsigned int x _EXC_MASKS_PARAM
+                                     _EXC_INFO_PARAM);
+     extern UINT64 bid64_from_int64 (SINT64 x _RND_MODE_PARAM
+                                    _EXC_FLAGS_PARAM _EXC_MASKS_PARAM
+                                    _EXC_INFO_PARAM);
+     extern UINT64 bid64_from_uint64 (UINT64 _RND_MODE_PARAM
+                                     _EXC_FLAGS_PARAM _EXC_MASKS_PARAM
+                                     _EXC_INFO_PARAM);
+     extern UINT128 bid128_from_int32 (int x _EXC_MASKS_PARAM
+                                      _EXC_INFO_PARAM);
+     extern UINT128 bid128_from_uint32 (unsigned int x _EXC_MASKS_PARAM
+                                       _EXC_INFO_PARAM);
+     extern UINT128 bid128_from_int64 (SINT64 x _EXC_MASKS_PARAM
+                                      _EXC_INFO_PARAM);
+     extern UINT128 bid128_from_uint64 (UINT64 x _EXC_MASKS_PARAM
+                                       _EXC_INFO_PARAM);
+
+     extern int bid64_isSigned (UINT64 x _EXC_MASKS_PARAM
+                               _EXC_INFO_PARAM);
+     extern int bid64_isNormal (UINT64 x _EXC_MASKS_PARAM
+                               _EXC_INFO_PARAM);
+     extern int bid64_isSubnormal (UINT64 x _EXC_MASKS_PARAM
+                                  _EXC_INFO_PARAM);
+     extern int bid64_isFinite (UINT64 x _EXC_MASKS_PARAM
+                               _EXC_INFO_PARAM);
+     extern int bid64_isZero (UINT64 x _EXC_MASKS_PARAM
+                             _EXC_INFO_PARAM);
+     extern int bid64_isInf (UINT64 x _EXC_MASKS_PARAM _EXC_INFO_PARAM);
+     extern int bid64_isSignaling (UINT64 x _EXC_MASKS_PARAM
+                                  _EXC_INFO_PARAM);
+     extern int bid64_isCanonical (UINT64 x _EXC_MASKS_PARAM
+                                  _EXC_INFO_PARAM);
+     extern int bid64_isNaN (UINT64 x _EXC_MASKS_PARAM _EXC_INFO_PARAM);
+     extern UINT64 bid64_copy (UINT64 x _EXC_MASKS_PARAM
+                              _EXC_INFO_PARAM);
+     extern UINT64 bid64_negate (UINT64 x _EXC_MASKS_PARAM
+                                _EXC_INFO_PARAM);
+     extern UINT64 bid64_abs (UINT64 x _EXC_MASKS_PARAM
+                             _EXC_INFO_PARAM);
+     extern UINT64 bid64_copySign (UINT64 x,
+                                  UINT64 y _EXC_MASKS_PARAM
+                                  _EXC_INFO_PARAM);
+     extern int bid64_class (UINT64 x _EXC_MASKS_PARAM _EXC_INFO_PARAM);
+     extern int bid64_sameQuantum (UINT64 x, UINT64 y
+                                  _EXC_MASKS_PARAM _EXC_INFO_PARAM);
+     extern int bid64_totalOrder (UINT64 x, UINT64 y
+                                 _EXC_MASKS_PARAM _EXC_INFO_PARAM);
+     extern int bid64_totalOrderMag (UINT64 x, UINT64 y
+                                    _EXC_MASKS_PARAM _EXC_INFO_PARAM);
+     extern int bid64_radix (UINT64 x _EXC_MASKS_PARAM _EXC_INFO_PARAM);
+
+     extern int bid128_isSigned (UINT128 x _EXC_MASKS_PARAM
+                                _EXC_INFO_PARAM);
+     extern int bid128_isNormal (UINT128 x _EXC_MASKS_PARAM
+                                _EXC_INFO_PARAM);
+     extern int bid128_isSubnormal (UINT128 x _EXC_MASKS_PARAM
+                                   _EXC_INFO_PARAM);
+     extern int bid128_isFinite (UINT128 x _EXC_MASKS_PARAM
+                                _EXC_INFO_PARAM);
+     extern int bid128_isZero (UINT128 x _EXC_MASKS_PARAM
+                              _EXC_INFO_PARAM);
+     extern int bid128_isInf (UINT128 x _EXC_MASKS_PARAM
+                             _EXC_INFO_PARAM);
+     extern int bid128_isSignaling (UINT128 x _EXC_MASKS_PARAM
+                                   _EXC_INFO_PARAM);
+     extern int bid128_isCanonical (UINT128 x _EXC_MASKS_PARAM
+                                   _EXC_INFO_PARAM);
+     extern int bid128_isNaN (UINT128 x _EXC_MASKS_PARAM
+                             _EXC_INFO_PARAM);
+     extern UINT128 bid128_copy (UINT128 x _EXC_MASKS_PARAM
+                                _EXC_INFO_PARAM);
+     extern UINT128 bid128_negate (UINT128 x _EXC_MASKS_PARAM
+                                  _EXC_INFO_PARAM);
+     extern UINT128 bid128_abs (UINT128 x _EXC_MASKS_PARAM
+                               _EXC_INFO_PARAM);
+     extern UINT128 bid128_copySign (UINT128 x,
+                                    UINT128 y _EXC_MASKS_PARAM
+                                    _EXC_INFO_PARAM);
+     extern int bid128_class (UINT128 x _EXC_MASKS_PARAM
+                             _EXC_INFO_PARAM);
+     extern int bid128_sameQuantum (UINT128 x,
+                                   UINT128 y _EXC_MASKS_PARAM
+                                   _EXC_INFO_PARAM);
+     extern int bid128_totalOrder (UINT128 x,
+                                  UINT128 y _EXC_MASKS_PARAM
+                                  _EXC_INFO_PARAM);
+     extern int bid128_totalOrderMag (UINT128 x,
+                                     UINT128 y _EXC_MASKS_PARAM
+                                     _EXC_INFO_PARAM);
+     extern int bid128_radix (UINT128 x _EXC_MASKS_PARAM
+                             _EXC_INFO_PARAM);
+
+     extern UINT64 bid64_rem (UINT64 x, UINT64 y
+                             _EXC_FLAGS_PARAM
+                             _EXC_MASKS_PARAM _EXC_INFO_PARAM);
+     extern int bid64_logb (UINT64 x _EXC_FLAGS_PARAM
+                              _EXC_MASKS_PARAM _EXC_INFO_PARAM);
+     extern UINT64 bid64_scalb (UINT64 x,
+                               int n _RND_MODE_PARAM _EXC_FLAGS_PARAM
+                               _EXC_MASKS_PARAM _EXC_INFO_PARAM);
+
+     extern UINT128 bid128_rem (UINT128 x, UINT128 y
+                               _EXC_FLAGS_PARAM
+                               _EXC_MASKS_PARAM _EXC_INFO_PARAM);
+     extern int bid128_logb (UINT128 x
+                                _EXC_FLAGS_PARAM _EXC_MASKS_PARAM
+                                _EXC_INFO_PARAM);
+     extern UINT128 bid128_scalb (UINT128 x,
+                                 int n _RND_MODE_PARAM _EXC_FLAGS_PARAM
+                                 _EXC_MASKS_PARAM _EXC_INFO_PARAM);
+
+     extern UINT64 bid32_to_bid64 (UINT32 x _EXC_FLAGS_PARAM
+                                  _EXC_MASKS_PARAM _EXC_INFO_PARAM);
+     extern UINT128 bid32_to_bid128 (UINT32 x _EXC_FLAGS_PARAM
+                                    _EXC_MASKS_PARAM _EXC_INFO_PARAM);
+     extern UINT128 bid64_to_bid128 (UINT64 x _EXC_FLAGS_PARAM
+                                    _EXC_MASKS_PARAM _EXC_INFO_PARAM);
+     extern UINT32 bid64_to_bid32 (UINT64 x
+                                  _RND_MODE_PARAM _EXC_FLAGS_PARAM
+                                  _EXC_MASKS_PARAM _EXC_INFO_PARAM);
+     extern UINT32 bid128_to_bid32 (UINT128 x _RND_MODE_PARAM
+                                   _EXC_FLAGS_PARAM
+                                   _EXC_MASKS_PARAM _EXC_INFO_PARAM);
+     extern UINT64 bid128_to_bid64 (UINT128 x _RND_MODE_PARAM
+                                   _EXC_FLAGS_PARAM
+                                   _EXC_MASKS_PARAM _EXC_INFO_PARAM);
+
+     extern void bid64_to_string (char *ps, UINT64 x
+                                 _EXC_FLAGS_PARAM
+                                 _EXC_MASKS_PARAM _EXC_INFO_PARAM);
+     extern UINT64 bid64_from_string (char *ps
+                                     _RND_MODE_PARAM _EXC_FLAGS_PARAM
+                                     _EXC_MASKS_PARAM _EXC_INFO_PARAM);
+     extern void bid128_to_string (char *str, UINT128 x
+                                  _EXC_FLAGS_PARAM
+                                  _EXC_MASKS_PARAM _EXC_INFO_PARAM);
+     extern UINT128 bid128_from_string (char *ps
+                                       _RND_MODE_PARAM _EXC_FLAGS_PARAM
+                                       _EXC_MASKS_PARAM
+                                       _EXC_INFO_PARAM);
+
+     extern UINT64 bid64_quantize (UINT64 x, UINT64 y
+                                  _RND_MODE_PARAM _EXC_FLAGS_PARAM
+                                  _EXC_MASKS_PARAM _EXC_INFO_PARAM);
+
+     extern UINT128 bid128_quantize (UINT128 x, UINT128 y
+                                    _RND_MODE_PARAM
+                                    _EXC_FLAGS_PARAM
+                                    _EXC_MASKS_PARAM _EXC_INFO_PARAM);
+
+
+     extern UINT32 binary128_to_bid32 (BINARY128 x
+                                      _RND_MODE_PARAM
+                                      _EXC_FLAGS_PARAM
+                                      _EXC_MASKS_PARAM
+                                      _EXC_INFO_PARAM);
+
+     extern UINT64 binary128_to_bid64 (BINARY128 x
+                                      _RND_MODE_PARAM
+                                      _EXC_FLAGS_PARAM
+                                      _EXC_MASKS_PARAM
+                                      _EXC_INFO_PARAM);
+
+     extern UINT128 binary128_to_bid128 (BINARY128 x
+                                        _RND_MODE_PARAM
+                                        _EXC_FLAGS_PARAM
+                                        _EXC_MASKS_PARAM
+                                        _EXC_INFO_PARAM);
+
+     extern UINT32 binary64_to_bid32 (double x
+                                     _RND_MODE_PARAM
+                                     _EXC_FLAGS_PARAM
+                                     _EXC_MASKS_PARAM _EXC_INFO_PARAM);
+
+     extern UINT64 binary64_to_bid64 (double x
+                                     _RND_MODE_PARAM
+                                     _EXC_FLAGS_PARAM
+                                     _EXC_MASKS_PARAM _EXC_INFO_PARAM);
+
+     extern UINT128 binary64_to_bid128 (double x
+                                       _RND_MODE_PARAM
+                                       _EXC_FLAGS_PARAM
+                                       _EXC_MASKS_PARAM
+                                       _EXC_INFO_PARAM);
+
+     extern UINT32 binary80_to_bid32 (BINARY80 x
+                                     _RND_MODE_PARAM
+                                     _EXC_FLAGS_PARAM
+                                     _EXC_MASKS_PARAM _EXC_INFO_PARAM);
+
+     extern UINT64 binary80_to_bid64 (BINARY80 x
+                                     _RND_MODE_PARAM
+                                     _EXC_FLAGS_PARAM
+                                     _EXC_MASKS_PARAM _EXC_INFO_PARAM);
+
+     extern UINT128 binary80_to_bid128 (BINARY80 x
+                                       _RND_MODE_PARAM
+                                       _EXC_FLAGS_PARAM
+                                       _EXC_MASKS_PARAM
+                                       _EXC_INFO_PARAM);
+
+     extern UINT32 binary32_to_bid32 (float x
+                                     _RND_MODE_PARAM
+                                     _EXC_FLAGS_PARAM
+                                     _EXC_MASKS_PARAM _EXC_INFO_PARAM);
+
+     extern UINT64 binary32_to_bid64 (float x
+                                     _RND_MODE_PARAM
+                                     _EXC_FLAGS_PARAM
+                                     _EXC_MASKS_PARAM _EXC_INFO_PARAM);
+
+     extern UINT128 binary32_to_bid128 (float x
+                                       _RND_MODE_PARAM
+                                       _EXC_FLAGS_PARAM
+                                       _EXC_MASKS_PARAM
+                                       _EXC_INFO_PARAM);
+
+     extern float bid128_to_binary32 (UINT128 x
+                                     _RND_MODE_PARAM _EXC_FLAGS_PARAM
+                                     _EXC_MASKS_PARAM _EXC_INFO_PARAM);
+
+     extern double bid128_to_binary64 (UINT128 x
+                                      _RND_MODE_PARAM _EXC_FLAGS_PARAM
+                                      _EXC_MASKS_PARAM
+                                      _EXC_INFO_PARAM);
+
+     extern BINARY80 bid128_to_binary80 (UINT128 x
+                                        _RND_MODE_PARAM
+                                        _EXC_FLAGS_PARAM
+                                        _EXC_MASKS_PARAM
+                                        _EXC_INFO_PARAM);
+
+     extern BINARY128 bid128_to_binary128 (UINT128 x
+                                          _RND_MODE_PARAM
+                                          _EXC_FLAGS_PARAM
+                                          _EXC_MASKS_PARAM
+                                          _EXC_INFO_PARAM);
+
+     extern float bid64_to_binary32 (UINT64 x
+                                    _RND_MODE_PARAM _EXC_FLAGS_PARAM
+                                    _EXC_MASKS_PARAM _EXC_INFO_PARAM);
+
+     extern double bid64_to_binary64 (UINT64 x
+                                     _RND_MODE_PARAM _EXC_FLAGS_PARAM
+                                     _EXC_MASKS_PARAM _EXC_INFO_PARAM);
+
+     extern BINARY80 bid64_to_binary80 (UINT64 x
+                                       _RND_MODE_PARAM
+                                       _EXC_FLAGS_PARAM
+                                       _EXC_MASKS_PARAM
+                                       _EXC_INFO_PARAM);
+
+     extern BINARY128 bid64_to_binary128 (UINT64 x
+                                         _RND_MODE_PARAM
+                                         _EXC_FLAGS_PARAM
+                                         _EXC_MASKS_PARAM
+                                         _EXC_INFO_PARAM);
+
+     extern float bid32_to_binary32 (UINT32 x
+                                    _RND_MODE_PARAM _EXC_FLAGS_PARAM
+                                    _EXC_MASKS_PARAM _EXC_INFO_PARAM);
+
+     extern double bid32_to_binary64 (UINT32 x
+                                     _RND_MODE_PARAM _EXC_FLAGS_PARAM
+                                     _EXC_MASKS_PARAM _EXC_INFO_PARAM);
+
+     extern BINARY80 bid32_to_binary80 (UINT32 x
+                                       _RND_MODE_PARAM
+                                       _EXC_FLAGS_PARAM
+                                       _EXC_MASKS_PARAM
+                                       _EXC_INFO_PARAM);
+
+     extern BINARY128 bid32_to_binary128 (UINT32 x
+                                         _RND_MODE_PARAM
+                                         _EXC_FLAGS_PARAM
+                                         _EXC_MASKS_PARAM
+                                         _EXC_INFO_PARAM);
+
+     extern int is754 (void);
+
+     extern int is754R (void);
+
+     extern void signalException (_IDEC_flags flagsmask
+                                 _EXC_FLAGS_PARAM);
+
+     extern void lowerFlags (_IDEC_flags flagsmask _EXC_FLAGS_PARAM);
+
+     extern _IDEC_flags testFlags (_IDEC_flags flagsmask
+                                  _EXC_FLAGS_PARAM);
+
+     extern _IDEC_flags testSavedFlags (_IDEC_flags savedflags,
+                                       _IDEC_flags flagsmask);
+
+     extern void restoreFlags (_IDEC_flags flagsvalues,
+                              _IDEC_flags flagsmask _EXC_FLAGS_PARAM);
+
+     extern _IDEC_flags saveFlags (_IDEC_flags flagsmask
+                                  _EXC_FLAGS_PARAM);
+
+#if !DECIMAL_GLOBAL_ROUNDING
+     _IDEC_round getDecimalRoundingDirection (_IDEC_round rnd_mode);
+#else
+     _IDEC_round getDecimalRoundingDirection (void);
+#endif
+
+#if !DECIMAL_GLOBAL_ROUNDING
+     _IDEC_round setDecimalRoundingDirection (_IDEC_round
+                                             rounding_mode
+                                             _RND_MODE_PARAM);
+#else
+     void setDecimalRoundingDirection (_IDEC_round rounding_mode);
+#endif
+
+#endif
+
+// Internal Functions
+
+     extern void
+       round64_2_18 (int q,
+                    int x,
+                    UINT64 C,
+                    UINT64 * ptr_Cstar,
+                    int *delta_exp,
+                    int *ptr_is_midpoint_lt_even,
+                    int *ptr_is_midpoint_gt_even,
+                    int *ptr_is_inexact_lt_midpoint,
+                    int *ptr_is_inexact_gt_midpoint);
+
+     extern void
+       round128_19_38 (int q,
+                      int x,
+                      UINT128 C,
+                      UINT128 * ptr_Cstar,
+                      int *delta_exp,
+                      int *ptr_is_midpoint_lt_even,
+                      int *ptr_is_midpoint_gt_even,
+                      int *ptr_is_inexact_lt_midpoint,
+                      int *ptr_is_inexact_gt_midpoint);
+
+     extern void
+       round192_39_57 (int q,
+                      int x,
+                      UINT192 C,
+                      UINT192 * ptr_Cstar,
+                      int *delta_exp,
+                      int *ptr_is_midpoint_lt_even,
+                      int *ptr_is_midpoint_gt_even,
+                      int *ptr_is_inexact_lt_midpoint,
+                      int *ptr_is_inexact_gt_midpoint);
+
+     extern void
+       round256_58_76 (int q,
+                      int x,
+                      UINT256 C,
+                      UINT256 * ptr_Cstar,
+                      int *delta_exp,
+                      int *ptr_is_midpoint_lt_even,
+                      int *ptr_is_midpoint_gt_even,
+                      int *ptr_is_inexact_lt_midpoint,
+                      int *ptr_is_inexact_gt_midpoint);
+
+#endif
+
+// Prototypes for Internal Functions
+
+     extern UINT32 bid_to_bid32 (UINT32);
+     extern UINT64 bid_to_bid64 (UINT64);
+     extern UINT128 bid_to_bid128 (UINT128);
+     extern UINT32 bid32_canonize (UINT32);
+     extern UINT64 bid64_canonize (UINT64);
+     extern UINT128 bid128_canonize (UINT128);