| /* DO NOT EDIT THIS FILE. |
| |
| It has been auto-edited by fixincludes from: |
| |
| "fixinc/tests/inc/bits/floatn.h" |
| |
| This had to be done to correct non-standard usages in the |
| original, manufacturer supplied header file. */ |
| |
| |
| |
| #if defined( GLIBC_CXX_FLOATN_1_CHECK ) |
| # if !__GNUC_PREREQ (7, 0) || (defined __cplusplus && !__GNUC_PREREQ (13, 0)) |
| /* The literal suffix f128 exists only since GCC 7.0. */ |
| # define __f128(x) x##l |
| # else |
| # define __f128(x) x##f128 |
| # endif |
| # if !__GNUC_PREREQ (7, 0) || (defined __cplusplus && !__GNUC_PREREQ (13, 0)) |
| /* The literal suffix (f128) exist for powerpc only since GCC 7.0. */ |
| # if __LDBL_MANT_DIG__ == 113 |
| # define __f128(x) x##l |
| # else |
| # define __f128(x) x##q |
| # endif |
| # else |
| # define __f128(x) x##f128 |
| # endif |
| # if !__GNUC_PREREQ (7, 0) || (defined __cplusplus && !__GNUC_PREREQ (13, 0)) |
| # ifdef __NO_LONG_DOUBLE_MATH |
| # define __f64(x) x##l |
| # else |
| # define __f64(x) x |
| # endif |
| # else |
| # define __f64(x) x##f64 |
| # endif |
| #endif /* GLIBC_CXX_FLOATN_1_CHECK */ |
| |
| |
| #if defined( GLIBC_CXX_FLOATN_2_CHECK ) |
| # if !__GNUC_PREREQ (7, 0) || (defined __cplusplus && !__GNUC_PREREQ (13, 0)) |
| typedef float _Float16 __attribute__ ((__mode__ (__HF__))); |
| # endif |
| # if !__GNUC_PREREQ (7, 0) || (defined __cplusplus && !__GNUC_PREREQ (13, 0)) |
| typedef __float128 _Float128; |
| # endif |
| # if 0 |
| # elif !__GNUC_PREREQ (7, 0) || (defined __cplusplus && !__GNUC_PREREQ (13, 0)) |
| typedef __float128 _Float128; |
| # endif |
| #endif /* GLIBC_CXX_FLOATN_2_CHECK */ |
| |
| |
| #if defined( GLIBC_CXX_FLOATN_3_CHECK ) |
| # if !__GNUC_PREREQ (7, 0) || (defined __cplusplus && !__GNUC_PREREQ (13, 0)) |
| # define __CFLOAT128 _Complex long double |
| # else |
| # define __CFLOAT128 _Complex _Float128 |
| # endif |
| # if !__GNUC_PREREQ (7, 0) || (defined __cplusplus && !__GNUC_PREREQ (13, 0)) |
| /* Add a typedef for older GCC compilers which don't natively support |
| _Complex _Float128. */ |
| typedef _Complex float __cfloat128 __attribute__ ((__mode__ (__TC__))); |
| # define __CFLOAT128 __cfloat128 |
| # else |
| # define __CFLOAT128 _Complex _Float128 |
| # endif |
| # if !__GNUC_PREREQ (7, 0) || (defined __cplusplus && !__GNUC_PREREQ (13, 0)) |
| # ifdef __NO_LONG_DOUBLE_MATH |
| # define __CFLOAT64 _Complex long double |
| # else |
| # define __CFLOAT64 _Complex double |
| # endif |
| # else |
| # define __CFLOAT64 _Complex _Float64 |
| # endif |
| #endif /* GLIBC_CXX_FLOATN_3_CHECK */ |
| |
| |
| #if defined( GLIBC_CXX_FLOATN_4_CHECK ) |
| # if __LDBL_MANT_DIG__ == 113 && defined __cplusplus && !__GNUC_PREREQ (13, 0) |
| typedef long double _Float128; |
| # define __CFLOAT128 _Complex long double |
| # endif |
| #endif /* GLIBC_CXX_FLOATN_4_CHECK */ |
| |
| |
| #if defined( GLIBC_CXX_FLOATN_5_CHECK ) |
| # if !__GNUC_PREREQ (7, 0) || (defined __cplusplus && !__GNUC_PREREQ (13, 0)) |
| # error "_Float128X supported but no constant suffix" |
| # endif |
| # if !__GNUC_PREREQ (7, 0) || (defined __cplusplus && !__GNUC_PREREQ (13, 0)) |
| # error "_Float128x supported but no type" |
| # endif |
| #endif /* GLIBC_CXX_FLOATN_5_CHECK */ |