zig

fork of https://codeberg.org/ziglang/zig
Log | Files | Refs | README | LICENSE

floatn.h (2103B) - Raw


      1 /* Macros to control TS 18661-3 glibc features.
      2    Copyright (C) 2017-2025 Free Software Foundation, Inc.
      3    This file is part of the GNU C Library.
      4 
      5    The GNU C Library is free software; you can redistribute it and/or
      6    modify it under the terms of the GNU Lesser General Public
      7    License as published by the Free Software Foundation; either
      8    version 2.1 of the License, or (at your option) any later version.
      9 
     10    The GNU C Library is distributed in the hope that it will be useful,
     11    but WITHOUT ANY WARRANTY; without even the implied warranty of
     12    MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
     13    Lesser General Public License for more details.
     14 
     15    You should have received a copy of the GNU Lesser General Public
     16    License along with the GNU C Library; if not, see
     17    <https://www.gnu.org/licenses/>.  */
     18 
     19 /* Defined to 1 if the current compiler invocation provides a
     20    floating-point type with the IEEE 754 binary128 format, and this glibc
     21    includes corresponding *f128 interfaces for it.  */
     22 #define __HAVE_FLOAT128 0
     23 
     24 /* Defined to 1 if __HAVE_FLOAT128 is 1 and the type is ABI-distinct
     25    from the default float, double and long double types in this glibc.  */
     26 #define __HAVE_DISTINCT_FLOAT128 0
     27 
     28 /* Defined to 1 if the current compiler invocation provides a
     29    floating-point type with the right format for _Float64x, and this
     30    glibc includes corresponding *f64x interfaces for it.  */
     31 #define __HAVE_FLOAT64X 0
     32 
     33 /* Defined to 1 if __HAVE_FLOAT64X is 1 and _Float64x has the format
     34    of long double.  Otherwise, if __HAVE_FLOAT64X is 1, _Float64x has
     35    the format of _Float128, which must be different from that of long
     36    double.  */
     37 #define __HAVE_FLOAT64X_LONG_DOUBLE 0
     38 
     39 #ifndef __ASSEMBLER__
     40 
     41 /* Defined to concatenate the literal suffix to be used with _Float128
     42    types, if __HAVE_FLOAT128 is 1.
     43    E.g.: #define __f128(x) x##f128.  */
     44 # undef __f128
     45 
     46 /* Defined to a complex binary128 type if __HAVE_FLOAT128 is 1.
     47    E.g.: #define __CFLOAT128 _Complex _Float128.  */
     48 # undef __CFLOAT128
     49 
     50 #endif /* !__ASSEMBLER__.  */
     51 
     52 #include <bits/floatn-common.h>