From 6034b9ca2428c073af950db3447bec785216ed05 Mon Sep 17 00:00:00 2001 From: Michael Meissner Date: Tue, 5 May 2020 13:31:03 -0400 Subject: [PATCH] Patch ieee128-lib-patch003b --- libgcc/ChangeLog.meissner | 7 +++++++ libgcc/config/rs6000/t-float128 | 7 +++++++ 2 files changed, 14 insertions(+) diff --git a/libgcc/ChangeLog.meissner b/libgcc/ChangeLog.meissner index 98683f43554..54018d9d33d 100644 --- a/libgcc/ChangeLog.meissner +++ b/libgcc/ChangeLog.meissner @@ -1,3 +1,10 @@ +2020-05-05 Michael Meissner + + (~/patches/ieee128-lib-patch003b) + PR target/94630 + * config/rs6000/t-float128 (ibm-ldouble$(objext)): Add the + -mno-gnu-attribute option. + 2020-05-05 Michael Meissner Clone branch diff --git a/libgcc/config/rs6000/t-float128 b/libgcc/config/rs6000/t-float128 index d5413445189..4d4e80cbadf 100644 --- a/libgcc/config/rs6000/t-float128 +++ b/libgcc/config/rs6000/t-float128 @@ -69,6 +69,13 @@ $(fp128_ppc_obj) : INTERNAL_CFLAGS += $(FP128_CFLAGS_SW) $(fp128_obj) : $(fp128_includes) $(fp128_obj) : $(srcdir)/config/rs6000/quad-float128.h + +# If we are switching the default long double type, we need to use +# -mno-gnu-attribute so that the __ibm128 support functions don't signal a +# linker error since the default long double is now IEEE 128-bit instead of IBM +# 128-bit. +ibm-ldouble$(objext) : INTERNAL_CFLAGS += -mno-gnu-attribute + $(fp128_softfp_src) : $(srcdir)/soft-fp/$(subst -sw,,$(subst kf,tf,$@)) $(fp128_dep) @src="$(srcdir)/soft-fp/$(subst -sw,,$(subst kf,tf,$@))"; \ echo "Create $@"; \