OK for trunk? Thanks.
H.J. --- Update soft-fp from glibc with: commit 69da3c9e87e0a692e79db0615a53782e4198dbf0 Author: H.J. Lu <hjl.to...@gmail.com> Date: Mon Jan 7 09:04:29 2019 -0800 quad.h have #if _FP_W_TYPE_SIZE < 64 union _FP_UNION_Q { Use 4 _FP_W_TYPEs } #else union _FP_UNION_Q { Use 2 _FP_W_TYPEs } #endif Replace #if (2 * _FP_W_TYPE_SIZE) < _FP_FRACBITS_Q with #if _FP_W_TYPE_SIZE < 64 to check whether 4 or 2 _FP_W_TYPEs are used for IEEE quad precision. Tested with build-many-glibcs.py. * soft-fp/extenddftf2.c: Use "_FP_W_TYPE_SIZE < 64" to check if 4_FP_W_TYPEs are used for IEEE quad precision. * soft-fp/extendhftf2.c: Likewise. * soft-fp/extendsftf2.c: Likewise. * soft-fp/extendxftf2.c: Likewise. * soft-fp/trunctfdf2.c: Likewise. * soft-fp/trunctfhf2.c: Likewise. * soft-fp/trunctfsf2.c: Likewise. * soft-fp/trunctfxf2.c: Likewise. * config/rs6000/ibm-ldouble.c: Likewise. --- libgcc/config/rs6000/ibm-ldouble.c | 4 ++-- libgcc/soft-fp/extenddftf2.c | 2 +- libgcc/soft-fp/extendhftf2.c | 2 +- libgcc/soft-fp/extendsftf2.c | 2 +- libgcc/soft-fp/extendxftf2.c | 2 +- libgcc/soft-fp/trunctfdf2.c | 2 +- libgcc/soft-fp/trunctfhf2.c | 2 +- libgcc/soft-fp/trunctfsf2.c | 2 +- libgcc/soft-fp/trunctfxf2.c | 2 +- 9 files changed, 10 insertions(+), 10 deletions(-) diff --git a/libgcc/config/rs6000/ibm-ldouble.c b/libgcc/config/rs6000/ibm-ldouble.c index f9118d8fc39..0e1c443af01 100644 --- a/libgcc/config/rs6000/ibm-ldouble.c +++ b/libgcc/config/rs6000/ibm-ldouble.c @@ -407,7 +407,7 @@ fmsub (double a, double b, double c) FP_UNPACK_RAW_D (C, c); /* Extend double to quad. */ -#if (2 * _FP_W_TYPE_SIZE) < _FP_FRACBITS_Q +#if _FP_W_TYPE_SIZE < 64 FP_EXTEND(Q,D,4,2,X,A); FP_EXTEND(Q,D,4,2,Y,B); FP_EXTEND(Q,D,4,2,Z,C); @@ -436,7 +436,7 @@ fmsub (double a, double b, double c) FP_SUB_Q(V,U,Z); /* Truncate quad to double. */ -#if (2 * _FP_W_TYPE_SIZE) < _FP_FRACBITS_Q +#if _FP_W_TYPE_SIZE < 64 V_f[3] &= 0x0007ffff; FP_TRUNC(D,Q,2,4,R,V); #else diff --git a/libgcc/soft-fp/extenddftf2.c b/libgcc/soft-fp/extenddftf2.c index 31c7263efa5..ea40d47e3f2 100644 --- a/libgcc/soft-fp/extenddftf2.c +++ b/libgcc/soft-fp/extenddftf2.c @@ -43,7 +43,7 @@ __extenddftf2 (DFtype a) FP_INIT_EXCEPTIONS; FP_UNPACK_RAW_D (A, a); -#if (2 * _FP_W_TYPE_SIZE) < _FP_FRACBITS_Q +#if _FP_W_TYPE_SIZE < 64 FP_EXTEND (Q, D, 4, 2, R, A); #else FP_EXTEND (Q, D, 2, 1, R, A); diff --git a/libgcc/soft-fp/extendhftf2.c b/libgcc/soft-fp/extendhftf2.c index 7f1f89ed66f..f42db71d198 100644 --- a/libgcc/soft-fp/extendhftf2.c +++ b/libgcc/soft-fp/extendhftf2.c @@ -41,7 +41,7 @@ __extendhftf2 (HFtype a) FP_INIT_EXCEPTIONS; FP_UNPACK_RAW_H (A, a); -#if (2 * _FP_W_TYPE_SIZE) < _FP_FRACBITS_Q +#if _FP_W_TYPE_SIZE < 64 FP_EXTEND (Q, H, 4, 1, R, A); #else FP_EXTEND (Q, H, 2, 1, R, A); diff --git a/libgcc/soft-fp/extendsftf2.c b/libgcc/soft-fp/extendsftf2.c index e3f2e950bf1..618ab098faa 100644 --- a/libgcc/soft-fp/extendsftf2.c +++ b/libgcc/soft-fp/extendsftf2.c @@ -43,7 +43,7 @@ __extendsftf2 (SFtype a) FP_INIT_EXCEPTIONS; FP_UNPACK_RAW_S (A, a); -#if (2 * _FP_W_TYPE_SIZE) < _FP_FRACBITS_Q +#if _FP_W_TYPE_SIZE < 64 FP_EXTEND (Q, S, 4, 1, R, A); #else FP_EXTEND (Q, S, 2, 1, R, A); diff --git a/libgcc/soft-fp/extendxftf2.c b/libgcc/soft-fp/extendxftf2.c index 2d12da1dde6..5ea58d981c7 100644 --- a/libgcc/soft-fp/extendxftf2.c +++ b/libgcc/soft-fp/extendxftf2.c @@ -41,7 +41,7 @@ __extendxftf2 (XFtype a) FP_INIT_TRAPPING_EXCEPTIONS; FP_UNPACK_RAW_E (A, a); -#if (2 * _FP_W_TYPE_SIZE) < _FP_FRACBITS_Q +#if _FP_W_TYPE_SIZE < 64 FP_EXTEND (Q, E, 4, 4, R, A); #else FP_EXTEND (Q, E, 2, 2, R, A); diff --git a/libgcc/soft-fp/trunctfdf2.c b/libgcc/soft-fp/trunctfdf2.c index c0d1d34841a..0a52987f815 100644 --- a/libgcc/soft-fp/trunctfdf2.c +++ b/libgcc/soft-fp/trunctfdf2.c @@ -42,7 +42,7 @@ __trunctfdf2 (TFtype a) FP_INIT_ROUNDMODE; FP_UNPACK_SEMIRAW_Q (A, a); -#if (2 * _FP_W_TYPE_SIZE) < _FP_FRACBITS_Q +#if _FP_W_TYPE_SIZE < 64 FP_TRUNC (D, Q, 2, 4, R, A); #else FP_TRUNC (D, Q, 1, 2, R, A); diff --git a/libgcc/soft-fp/trunctfhf2.c b/libgcc/soft-fp/trunctfhf2.c index 8eddd14b2f4..156fab231e5 100644 --- a/libgcc/soft-fp/trunctfhf2.c +++ b/libgcc/soft-fp/trunctfhf2.c @@ -40,7 +40,7 @@ __trunctfhf2 (TFtype a) FP_INIT_ROUNDMODE; FP_UNPACK_SEMIRAW_Q (A, a); -#if (2 * _FP_W_TYPE_SIZE) < _FP_FRACBITS_Q +#if _FP_W_TYPE_SIZE < 64 FP_TRUNC (H, Q, 1, 4, R, A); #else FP_TRUNC (H, Q, 1, 2, R, A); diff --git a/libgcc/soft-fp/trunctfsf2.c b/libgcc/soft-fp/trunctfsf2.c index 4b04d698d24..e37976e2064 100644 --- a/libgcc/soft-fp/trunctfsf2.c +++ b/libgcc/soft-fp/trunctfsf2.c @@ -42,7 +42,7 @@ __trunctfsf2 (TFtype a) FP_INIT_ROUNDMODE; FP_UNPACK_SEMIRAW_Q (A, a); -#if (2 * _FP_W_TYPE_SIZE) < _FP_FRACBITS_Q +#if _FP_W_TYPE_SIZE < 64 FP_TRUNC (S, Q, 1, 4, R, A); #else FP_TRUNC (S, Q, 1, 2, R, A); diff --git a/libgcc/soft-fp/trunctfxf2.c b/libgcc/soft-fp/trunctfxf2.c index 391de243ce3..12b6717351b 100644 --- a/libgcc/soft-fp/trunctfxf2.c +++ b/libgcc/soft-fp/trunctfxf2.c @@ -41,7 +41,7 @@ __trunctfxf2 (TFtype a) FP_INIT_ROUNDMODE; FP_UNPACK_SEMIRAW_Q (A, a); -#if (2 * _FP_W_TYPE_SIZE) < _FP_FRACBITS_Q +#if _FP_W_TYPE_SIZE < 64 FP_TRUNC (E, Q, 4, 4, R, A); #else FP_TRUNC (E, Q, 2, 2, R, A); -- 2.20.1