From: "Gabriel F. T. Gomes" <gabriel@inconstante.net.br>
To: <libc-alpha@sourceware.org>
Subject: [PATCH v2 27/30] Avoid compat symbols for totalorder in powerpc64le IEEE long double
Date: Fri, 25 Oct 2019 12:34:07 -0300 [thread overview]
Message-ID: <20191025153410.15405-28-gabriel@inconstante.net.br> (raw)
In-Reply-To: <20191025153410.15405-1-gabriel@inconstante.net.br>
From: "Gabriel F. T. Gomes" <gabrielftg@linux.ibm.com>
Changes since v1:
- Added comment on the redefinition of libm_alias_float128_other_r_ldbl.
-- 8< --
On powerpc64le, the libm_alias_float128_other_r_ldbl macro is
used to create an alias between totalorderf128 and __totalorderlieee128,
as well as between the totalordermagf128 and __totalordermaglieee128.
However, the totalorder* and totalordermag* functions changed their
parameter type since commit ID 42760d764649 and got compat symbols for
their old versions. With this change, the aforementioned macro would
create two conflicting aliases for __totalorderlieee128 and
__totalordermaglieee128.
This patch avoids the creation of the alias between the IEEE long double
symbols (__totalorderl*ieee128) and the compat symbols, because the IEEE
long double functions have never been exported thus don't need such
compat symbol.
---
sysdeps/ieee754/ldbl-128/s_totalorderl.c | 9 +++++++++
sysdeps/ieee754/ldbl-128/s_totalordermagl.c | 9 +++++++++
2 files changed, 18 insertions(+)
diff --git a/sysdeps/ieee754/ldbl-128/s_totalorderl.c b/sysdeps/ieee754/ldbl-128/s_totalorderl.c
index 098bd2bcab..f9db06c025 100644
--- a/sysdeps/ieee754/ldbl-128/s_totalorderl.c
+++ b/sysdeps/ieee754/ldbl-128/s_totalorderl.c
@@ -74,6 +74,15 @@ __totalorder_compatl (_Float128 x, _Float128 y)
{
return __totalorderl (&x, &y);
}
+/* On platforms that reuse the _Float128 implementation for IEEE long
+ double (powerpc64le), the libm_alias_float128_other_r_ldbl macro
+ (which is called by the libm_alias_ldouble macro) is used to create
+ aliases between *f128 (_Float128 API) and __*ieee128 functions.
+ However, this compat version of totalorderl is older than the
+ availability of __ieee*128 symbols, thus, the compat alias is not
+ required, nor desired. */
+#undef libm_alias_float128_other_r_ldbl
+#define libm_alias_float128_other_r_ldbl(from, to, r)
#undef do_symbol
#define do_symbol(orig_name, name, aliasname) \
strong_alias (orig_name, name) \
diff --git a/sysdeps/ieee754/ldbl-128/s_totalordermagl.c b/sysdeps/ieee754/ldbl-128/s_totalordermagl.c
index b31788c77c..45b17ed4dd 100644
--- a/sysdeps/ieee754/ldbl-128/s_totalordermagl.c
+++ b/sysdeps/ieee754/ldbl-128/s_totalordermagl.c
@@ -68,6 +68,15 @@ __totalordermag_compatl (_Float128 x, _Float128 y)
{
return __totalordermagl (&x, &y);
}
+/* On platforms that reuse the _Float128 implementation for IEEE long
+ double (powerpc64le), the libm_alias_float128_other_r_ldbl macro
+ (which is called by the libm_alias_ldouble macro) is used to create
+ aliases between *f128 (_Float128 API) and __*ieee128 functions.
+ However, this compat version of totalordermagl is older than the
+ availability of __ieee*128 symbols, thus, the compat alias is not
+ required, nor desired. */
+#undef libm_alias_float128_other_r_ldbl
+#define libm_alias_float128_other_r_ldbl(from, to, r)
#undef do_symbol
#define do_symbol(orig_name, name, aliasname) \
strong_alias (orig_name, name) \
--
2.21.0
next prev parent reply other threads:[~2019-10-25 15:39 UTC|newest]
Thread overview: 72+ messages / expand[flat|nested] mbox.gz Atom feed top
2019-10-25 15:33 [PATCH v2 00/30] Add IEEE long double <-> string functions for powerpc64le Gabriel F. T. Gomes
2019-10-25 15:33 ` [PATCH v2 01/30] ldbl-128ibm-compat: Add regular character printing functions Gabriel F. T. Gomes
2019-10-29 15:42 ` Paul E Murphy
2019-10-30 16:10 ` Gabriel F. T. Gomes
2019-10-25 15:33 ` [PATCH v2 02/30] ldbl-128ibm-compat: Add wide " Gabriel F. T. Gomes
2019-11-04 15:08 ` Paul E Murphy
2019-11-04 18:10 ` Gabriel F. T. Gomes
2019-11-04 20:11 ` Paul E Murphy
2019-10-25 15:33 ` [PATCH v2 03/30] ldbl-128ibm-compat: Add regular character, fortified " Gabriel F. T. Gomes
2019-11-04 15:43 ` Paul E Murphy
2019-11-05 19:37 ` Gabriel F. T. Gomes
2019-11-08 16:44 ` Paul E Murphy
2019-10-25 15:33 ` [PATCH v2 04/30] ldbl-128ibm-compat: Add wide " Gabriel F. T. Gomes
2019-11-04 16:07 ` Paul E Murphy
2019-10-25 15:33 ` [PATCH v2 05/30] ldbl-128ibm-compat: Test double values Gabriel F. T. Gomes
2019-11-04 16:15 ` Paul E Murphy
2019-10-25 15:33 ` [PATCH v2 06/30] ldbl-128ibm-compat: Test positional arguments Gabriel F. T. Gomes
2019-11-04 16:55 ` Paul E Murphy
2019-11-06 17:28 ` Gabriel F. T. Gomes
2019-10-25 15:33 ` [PATCH v2 07/30] ldbl-128ibm-compat: Add regular character scanning functions Gabriel F. T. Gomes
2019-11-14 21:36 ` Paul E Murphy
2019-10-25 15:33 ` [PATCH v2 08/30] ldbl-128ibm-compat: Add wide " Gabriel F. T. Gomes
2019-11-04 17:46 ` Paul E Murphy
2019-11-11 14:33 ` Gabriel F. T. Gomes
2019-11-22 22:34 ` Gabriel F. T. Gomes
2019-10-25 15:33 ` [PATCH v2 09/30] ldbl-128ibm-compat: Add argp_error and argp_failure Gabriel F. T. Gomes
2019-11-08 19:57 ` Paul E Murphy
2019-10-25 15:33 ` [PATCH v2 10/30] ldbl-128ibm-compat: Add err.h functions Gabriel F. T. Gomes
2019-11-08 20:22 ` Paul E Murphy
2019-11-13 14:24 ` Gabriel F. T. Gomes
2019-11-27 19:10 ` Gabriel F. T. Gomes
2019-10-25 15:33 ` [PATCH v2 11/30] ldbl-128ibm-compat: Add error.h functions Gabriel F. T. Gomes
2019-11-08 22:21 ` Paul E Murphy
2019-10-25 15:33 ` [PATCH v2 12/30] ldbl-128ibm-compat: Reuse tests for err.h and " Gabriel F. T. Gomes
2019-11-08 22:25 ` Paul E Murphy
2019-10-25 15:33 ` [PATCH v2 13/30] ldbl-128ibm-compat: Add ISO C99 versions of scanf functions Gabriel F. T. Gomes
2019-11-08 23:25 ` Paul E Murphy
2019-11-21 13:43 ` Gabriel F. T. Gomes
2019-11-22 22:48 ` Gabriel F. T. Gomes
2019-11-27 19:12 ` Gabriel F. T. Gomes
2019-10-25 15:33 ` [PATCH v2 14/30] ldbl-128ibm-compat: Add obstack printing functions Gabriel F. T. Gomes
2019-11-08 23:42 ` Paul E Murphy
2019-11-27 19:11 ` Gabriel F. T. Gomes
2019-10-25 15:33 ` [PATCH v2 15/30] ldbl-128ibm-compat: Add syslog functions Gabriel F. T. Gomes
2019-11-14 17:47 ` Paul E Murphy
2019-11-14 18:25 ` Florian Weimer
2019-11-27 19:11 ` Gabriel F. T. Gomes
2019-10-25 15:33 ` [PATCH v2 16/30] ldbl-128ibm-compat: Add strfmon_l with IEEE long double format Gabriel F. T. Gomes
2019-11-14 18:03 ` Paul E Murphy
2019-11-27 17:43 ` Gabriel F. T. Gomes
2019-12-03 16:57 ` Gabriel F. T. Gomes
2019-10-25 15:33 ` [PATCH v2 17/30] ldbl-128ibm-compat: Add tests for strfmon and strfmon_l Gabriel F. T. Gomes
2019-11-14 18:11 ` Paul E Murphy
2019-12-03 16:57 ` Gabriel F. T. Gomes
2019-10-25 15:33 ` [PATCH v2 18/30] ldbl-128ibm-compat: Add tests for strfroml, strtold, and wcstold Gabriel F. T. Gomes
2019-11-14 18:25 ` Paul E Murphy
2019-11-27 17:47 ` Gabriel F. T. Gomes
2019-12-03 16:58 ` Gabriel F. T. Gomes
2019-10-25 15:33 ` [PATCH v2 19/30] Refactor *cvt functions implementation (1/5) Gabriel F. T. Gomes
2019-10-25 15:34 ` [PATCH v2 20/30] Refactor *cvt functions implementation (2/5) Gabriel F. T. Gomes
2019-10-25 15:34 ` [PATCH v2 21/30] Refactor *cvt functions implementation (3/5) Gabriel F. T. Gomes
2019-10-25 15:34 ` [PATCH v2 22/30] Refactor *cvt functions implementation (4/5) Gabriel F. T. Gomes
2019-10-25 15:34 ` [PATCH v2 23/30] Refactor *cvt functions implementation (5/5) Gabriel F. T. Gomes
2019-11-14 23:12 ` Paul E Murphy
2019-11-27 17:42 ` Gabriel F. T. Gomes
2019-10-25 15:34 ` [PATCH v2 24/30] ldbl-128ibm-compat: Add *cvt functions Gabriel F. T. Gomes
2019-10-25 15:34 ` [PATCH v2 25/30] Do not redirect calls to __GI_* symbols, when redirecting to *ieee128 Gabriel F. T. Gomes
2019-10-25 15:34 ` [PATCH v2 26/30] ldbl-128ibm-compat: Compiler flags for stdio functions Gabriel F. T. Gomes
2019-10-25 15:34 ` Gabriel F. T. Gomes [this message]
2019-10-25 15:34 ` [PATCH v2 28/30] ldbl-128ibm-compat: Do not mix -mabi=*longdouble and -mlong-double-128 Gabriel F. T. Gomes
2019-10-25 15:34 ` [PATCH v2 29/30] powerpc64le: Require a compiler with -mno-gnu-attribute Gabriel F. T. Gomes
2019-10-25 15:34 ` [PATCH v2 30/30] RFC: powerpc64le: Enable support for IEEE long double Gabriel F. T. Gomes
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
List information: https://www.gnu.org/software/libc/involved.html
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=20191025153410.15405-28-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).