diff options
author | Adhemerval Zanella <adhemerval.zanella@linaro.org> | 2022-03-10 14:41:31 -0300 |
---|---|---|
committer | Pranav Kant <prka@google.com> | 2023-09-26 19:02:33 +0000 |
commit | 950a6559add2cf1a547ae93651e3a96880206054 (patch) | |
tree | dbbab213702b4eba576f52c640aa3d21518e380b | |
parent | 3697387eaba3c225239ba2ddd636231033273788 (diff) | |
download | glibc-950a6559add2cf1a547ae93651e3a96880206054.tar.gz glibc-950a6559add2cf1a547ae93651e3a96880206054.tar.xz glibc-950a6559add2cf1a547ae93651e3a96880206054.zip |
math: x86: Avoid the use of __libgcc_cmp_return__ for __gcc_CMPtype
-rw-r--r-- | sysdeps/x86/fpu/sfp-machine.h | 13 |
1 files changed, 11 insertions, 2 deletions
diff --git a/sysdeps/x86/fpu/sfp-machine.h b/sysdeps/x86/fpu/sfp-machine.h index df8906acb4..fcbcf69053 100644 --- a/sysdeps/x86/fpu/sfp-machine.h +++ b/sysdeps/x86/fpu/sfp-machine.h @@ -1,10 +1,19 @@ /* Configure soft-fp for building sqrtf128. Based on sfp-machine.h in libgcc, with soft-float and other irrelevant parts removed. */ +#if defined __x86_64__ && defined __ILP32__ +typedef long long int __gcc_CMPtype; +#else +typedef long int __gcc_CMPtype; +#endif +#if !defined(__clang__) && defined(__GNUC__) /* The type of the result of a floating point comparison. This must match `__libgcc_cmp_return__' in GCC for the target. */ -typedef int __gcc_CMPtype __attribute__ ((mode (__libgcc_cmp_return__))); -#define CMPtype __gcc_CMPtype +typedef int __gcc_CMPtype_GCC __attribute__ ((mode (__libgcc_cmp_return__))); +# define CMPtype __gcc_CMPtype +_Static_assert(sizeof(__gcc_CMPtype) == sizeof(__gcc_CMPtype_GCC), + "sizeof(__gcc_CMPtype) != sizeof(__gcc_CMPtype_GCC)"); +#endif #ifdef __x86_64__ # define _FP_W_TYPE_SIZE 64 |