diff options
author | Paul E. Murphy <murphyp@linux.vnet.ibm.com> | 2020-02-07 14:08:20 -0600 |
---|---|---|
committer | Paul E. Murphy <murphyp@linux.vnet.ibm.com> | 2020-04-06 10:23:58 -0500 |
commit | 8e72163b16bfe874a415a558f78911e5d05c5f22 (patch) | |
tree | bdee08bdcd994aad9027f1239a1f8612d71e40f3 | |
parent | 6f82d05034178eee756dfe09472948130748ad39 (diff) | |
download | glibc-8e72163b16bfe874a415a558f78911e5d05c5f22.tar.gz glibc-8e72163b16bfe874a415a558f78911e5d05c5f22.tar.xz glibc-8e72163b16bfe874a415a558f78911e5d05c5f22.zip |
powerpc64le: workaround ieee long double / _Float128 stdc++ bug
-mabi=ieeelongdouble triggers the stdc++ libraries _Float128 support, which then breaks if algorithm is included. For now, explicitly disable _Float128 for such tests. I have opened up GCC BZ 94080 to track this. Reviewed-by: Tulio Magno Quites Machado Filho <tuliom@linux.ibm.com>
-rw-r--r-- | sysdeps/powerpc/powerpc64/le/Makefile | 11 |
1 files changed, 11 insertions, 0 deletions
diff --git a/sysdeps/powerpc/powerpc64/le/Makefile b/sysdeps/powerpc/powerpc64/le/Makefile index 441a8a14e5..96834d3e2b 100644 --- a/sysdeps/powerpc/powerpc64/le/Makefile +++ b/sysdeps/powerpc/powerpc64/le/Makefile @@ -140,3 +140,14 @@ $(foreach suf,$(all-object-suffixes), $(ldbl-ibm128-files)) \ $(foreach r,$(ldbl-128ibm-routines) $(ldbl-tests), \ $(objpfx)$(r)$(suf)): \ sysdep-CFLAGS := $(filter-out -mabi=ieeelongdouble,$(sysdep-CFLAGS)) + +# TODO: a bug in stdc++ will fail if -mabi=ieeelongdouble and -mfloat128 +# are both enabled. The latter is enabled by default in GCC 8+. This is +# tracked via GCC BZ 94080. +ifeq ($(subdir),support) +CFLAGS-links-dso-program.cc += -mno-float128 +endif +ifeq ($(subdir),nptl) +CFLAGS-tst-thread_local1.cc += -mno-float128 +CFLAGS-tst-minstack-throw.cc += -mno-float128 +endif |