PowerPC: Add -mno-gnu-attributes to ibm-ldouble.o. I have split all of these patches into separate patches to hopefully get them into the tree.
This patch is split off from the patch adding __float128 <-> Decimal conversions. This patch is needed to prevent the linker from issuing a warning when the long double format is IEEE 128-bit. I have tested this patch with bootstrap builds on a little endian power9 system running Linux. With the other patches, I have built two full bootstrap builds using this patch and the patches after this patch. One build used the current default for long double (IBM extended double) and the other build switched the default to IEEE 128-bit. I used the Advance Toolchain AT 14.0 compiler as the library used by this compiler. There are no regressions between the tests. There are 3 fortran benchmarks (ieee/large_2.f90, default_format_2.f90, and default_format_denormal_2.f90) that now pass. Can I install this into the trunk? We have gotten some requests to back port these changes to GCC 10.x. At the moment, I am not planning to do the back port, but I may need to in the future. libgcc/ 2020-10-22 Michael Meissner <meiss...@linux.ibm.com> * config/rs6000/t-float128: Compile ibm-ldouble.o with -mno-gnu-attributes. --- libgcc/config/rs6000/t-float128 | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/libgcc/config/rs6000/t-float128 b/libgcc/config/rs6000/t-float128 index d5413445189..c2cb3e2b705 100644 --- a/libgcc/config/rs6000/t-float128 +++ b/libgcc/config/rs6000/t-float128 @@ -69,6 +69,11 @@ $(fp128_ppc_obj) : INTERNAL_CFLAGS += $(FP128_CFLAGS_SW) $(fp128_obj) : $(fp128_includes) $(fp128_obj) : $(srcdir)/config/rs6000/quad-float128.h + +# Turn off gnu attributes to allow using the IBM extended double support for +# __ibm128 if long double uses the IEEE 128-bit representation. +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 $@"; \ -- 2.22.0 -- Michael Meissner, IBM IBM, M/S 2506R, 550 King Street, Littleton, MA 01460-6245, USA email: meiss...@linux.ibm.com, phone: +1 (978) 899-4797