From: Michael Meissner <meissner@linux.ibm.com>
To: gcc-patches@gcc.gnu.org,
Michael Meissner <meissner@linux.ibm.com>,
Segher Boessenkool <segher@kernel.crashing.org>,
"Kewen.Lin" <linkw@linux.ibm.com>,
David Edelsohn <dje.gcc@gmail.com>,
Peter Bergner <bergner@linux.ibm.com>,
Will Schmidt <will_schmidt@vnet.ibm.com>
Subject: [PATCH 0/3] Improvements to __ibm128 on PowerPC
Date: Thu, 18 Aug 2022 17:28:48 -0400 [thread overview]
Message-ID: <Yv6vELPxsr5ywncp@toto.the-meissners.org> (raw)
The following 3 patches improve __ibm128 on the PowerPC GCC compiler:
The first patch allows the use of the __ibm128 keyword on non-VSX systems.
Originally, the __ibm128 keyword was only enabled when the IEEE 128-bit
floating point is enabled. Sometime back in the GCC 12 development period,
Segher asked that the __ibm128 keyword be allowed in older systems that don't
support IEEE 128-bit. This patch allows __ibm128 to be used if either IEEE
128-bit is enabled or long double used the IBM 128-bit format.
The second patch fixes PR target/105334. This PR complains that the __ibm128
keyword is not defined on a system that uses IEEE 128-bit long double, but the
user used the -msoft-float option. This patch removes the checks for hardware
floating point support in IBM 128-bit long double support, and also enables the
__ibm128 keyword. The existing test gcc.target/powerpc/pr105334.c will now
pass on a system using IEEE 128-bit long double.
The third patch uses the 'w' suffix for __ibm128 constants. It turns out we
had documented using the 'w' suffix for __ibm128, but we had never implemented
it.
I have tested these patches on the following systems:
1) LE Power10 using --with-cpu=power10 --with-long-double-format=ieee
2) LE Power10 using --with-cpu=power9 --with-long-double-format=ibm
3) LE Power10 using --with-cpu=power8 --with-long-double-format=ibm
4) LE Power10 using --with-cpu=power10 --with-long-double-format=ibm
5) LE Power9 using --with-cpu=power9 --with-long-double-format=ibm
6) BE Power8 using --with-cpu=power8 --with-long-double-format=ibm
7) BE Power8 using --with-cpu=power5 --with-long-double-format=ibm
There were no regressions in the build or in the tests. On the power10 with
long double using the IEEE 128-bit format, pr105334.c now runs where it
previously failed.
Can I check these patches into the trunk?
Did we want to back port these changes to older GCC's?
--
Michael Meissner, IBM
PO Box 98, Ayer, Massachusetts, USA, 01432
email: meissner@linux.ibm.com
next reply other threads:[~2022-08-18 21:28 UTC|newest]
Thread overview: 4+ messages / expand[flat|nested] mbox.gz Atom feed top
2022-08-18 21:28 Michael Meissner [this message]
2022-08-18 21:39 ` [PATCH 1/3] Allow __ibm128 even if IEEE 128-bit floating point is not supported Michael Meissner
2022-08-18 21:41 ` [PATCH 2/3] Allow __ibm128 with -msoft-float (PR target/105334) Michael Meissner
2022-08-18 21:42 ` [PATCH 3/3] Add 'w' suffix for __ibm128 constants Michael Meissner
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=Yv6vELPxsr5ywncp@toto.the-meissners.org \
--to=meissner@linux.ibm.com \
--cc=bergner@linux.ibm.com \
--cc=dje.gcc@gmail.com \
--cc=gcc-patches@gcc.gnu.org \
--cc=linkw@linux.ibm.com \
--cc=segher@kernel.crashing.org \
--cc=will_schmidt@vnet.ibm.com \
/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).