From: "Gabriel F. T. Gomes" <gabriel@inconstante.net.br>
To: <libc-alpha@sourceware.org>
Subject: [PATCH v3 09/11] ldbl-128ibm-compat: Do not mix -mabi=*longdouble and -mlong-double-128
Date: Tue, 03 Dec 2019 17:06:00 -0000 [thread overview]
Message-ID: <20191203170540.18428-10-gabriel@inconstante.net.br> (raw)
In-Reply-To: <20191203170540.18428-1-gabriel@inconstante.net.br>
From: "Gabriel F. T. Gomes" <gabrielftg@linux.ibm.com>
No changes since v2.
Changes since v1:
- Do not try to remove -mabi=ieeelongdouble, since it hasn't been
added. The removal is a residue from our initial development.
-- 8< --
Some compiler versions, e.g. GCC 7, complain when -mlong-double-128 is
used together with -mabi=ibmlongdouble or -mabi=ieeelongdouble,
producing the following error message:
cc1: error: â-mabi=ibmlongdoubleâ requires â-mlong-double-128â
This patch removes -mlong-double-128 from the compilation lines that
explicitly request -mabi=*longdouble.
Tested for powerpc64le.
---
sysdeps/ieee754/ldbl-128ibm-compat/Makefile | 14 ++++++++++++++
1 file changed, 14 insertions(+)
diff --git a/sysdeps/ieee754/ldbl-128ibm-compat/Makefile b/sysdeps/ieee754/ldbl-128ibm-compat/Makefile
index 8f6a09091a..7efbd00089 100644
--- a/sysdeps/ieee754/ldbl-128ibm-compat/Makefile
+++ b/sysdeps/ieee754/ldbl-128ibm-compat/Makefile
@@ -258,6 +258,13 @@ ldbl-extra-routines += err \
CFLAGS-ieee128-qefgcvt.c += -mabi=ieeelongdouble -Wno-psabi -mno-gnu-attribute
CFLAGS-ieee128-qefgcvt_r.c += -mabi=ieeelongdouble -Wno-psabi -mno-gnu-attribute
+# Remove -mlong-double-128 because it does not work correctly with
+# -mabi=ibmlongdoule in some GCC versions, e.g. GCC 7.
+$(foreach o,$(all-object-suffixes),$(objpfx)ieee128-qefgcvt$(o)): \
+ sysdep-CFLAGS := $(filter-out -mlong-double-128, $(sysdep-CFLAGS))
+$(foreach o,$(all-object-suffixes),$(objpfx)ieee128-qefgcvt_r$(o)): \
+ sysdep-CFLAGS := $(filter-out -mlong-double-128, $(sysdep-CFLAGS))
+
tests-internal += tst-ibm128-warn tst-ieee128-warn
tests-internal += tst-ibm128-error tst-ieee128-error
tests-internal += tst-ibm128-efgcvt tst-ieee128-efgcvt
@@ -334,5 +341,12 @@ ldbl-ibm128-files := $(objpfx)test-%-ibm128^ \
$(foreach r,$(ldbl-extra-routines),$(objpfx)$(r)^) \
$(foreach r,$(ldbl-extra-routines),$(objpfx)$(r)-internal^)
obj-suf-foreach = $(foreach suf,$(all-object-suffixes),$(subst ^,$(suf),$(1)))
+
+# Remove -mlong-double-128 because it does not work correctly with
+# -mabi=ibmlongdoule in some GCC versions, e.g. GCC 7.
+$(call obj-suf-foreach,$(ldbl-ibm128-files)): \
+ sysdep-CFLAGS := $(filter-out -mlong-double-128, $(sysdep-CFLAGS))
+
+# Explicitly add -mabi=ibm-long-double to required files.
$(call obj-suf-foreach,$(ldbl-ibm128-files)): \
sysdep-CFLAGS += -mabi=ibmlongdouble
--
2.21.0
next prev parent reply other threads:[~2019-12-03 17:06 UTC|newest]
Thread overview: 27+ messages / expand[flat|nested] mbox.gz Atom feed top
2019-12-03 17:05 [PATCH v3 00/11] Add IEEE long double <-> string functions for powerpc64le Gabriel F. T. Gomes
2019-12-03 17:05 ` [PATCH v3 01/11] ldbl-128ibm-compat: Fix selection of GNU and ISO C99 scanf Gabriel F. T. Gomes
2019-12-09 16:46 ` Paul E Murphy
2019-12-09 16:50 ` Zack Weinberg
2019-12-09 17:09 ` Paul E Murphy
2019-12-09 18:16 ` Gabriel F. T. Gomes
2019-12-09 20:31 ` Paul E Murphy
2019-12-12 13:42 ` Gabriel F. T. Gomes
2019-12-03 17:06 ` [PATCH v3 03/11] Refactor *cvt functions implementation (1-4/5) Gabriel F. T. Gomes
2019-12-09 21:25 ` Paul E Murphy
2019-12-13 20:19 ` Gabriel F. T. Gomes
2019-12-03 17:06 ` Gabriel F. T. Gomes [this message]
2019-12-03 17:06 ` [PATCH v3 06/11] Do not redirect calls to __GI_* symbols, when redirecting to *ieee128 Gabriel F. T. Gomes
2019-12-03 17:06 ` [PATCH v3 10/11] powerpc64le: Require a compiler with -mno-gnu-attribute Gabriel F. T. Gomes
2019-12-03 17:06 ` [PATCH v3 04/11] Refactor *cvt functions implementation (5/5) Gabriel F. T. Gomes
2019-12-03 17:06 ` [PATCH v3 05/11] ldbl-128ibm-compat: Add *cvt functions Gabriel F. T. Gomes
2019-12-09 23:13 ` Paul E Murphy
2019-12-13 20:03 ` Gabriel F. T. Gomes
2019-12-03 17:06 ` [PATCH v3 07/11] ldbl-128ibm-compat: Compiler flags for stdio functions Gabriel F. T. Gomes
2019-12-03 17:06 ` [PATCH v3 02/11] ldbl-128ibm-compat: Add ISO C99 versions of scanf functions Gabriel F. T. Gomes
2019-12-09 18:09 ` Paul E Murphy
2019-12-13 21:13 ` Gabriel F. T. Gomes
2019-12-03 17:06 ` [PATCH v3 08/11] Avoid compat symbols for totalorder in powerpc64le IEEE long double Gabriel F. T. Gomes
2019-12-03 17:07 ` [PATCH v3 11/11] RFC: powerpc64le: Enable support for " Gabriel F. T. Gomes
2019-12-09 23:47 ` Paul E Murphy
2019-12-13 22:41 ` Gabriel F. T. Gomes
2019-12-13 23:46 ` Paul E Murphy
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=20191203170540.18428-10-gabriel@inconstante.net.br \
--to=gabriel@inconstante.net.br \
--cc=libc-alpha@sourceware.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).