public inbox for gcc-bugs@sourceware.org
help / color / mirror / Atom feed
* [Bug target/109067] New: Powerpc GCC does not support __ibm128 complex multiply/divide if long double is IEEE 128-bit.
@ 2023-03-08 19:13 meissner at gcc dot gnu.org
2023-03-08 19:41 ` [Bug target/109067] " segher at gcc dot gnu.org
` (4 more replies)
0 siblings, 5 replies; 6+ messages in thread
From: meissner at gcc dot gnu.org @ 2023-03-08 19:13 UTC (permalink / raw)
To: gcc-bugs
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=109067
Bug ID: 109067
Summary: Powerpc GCC does not support __ibm128 complex
multiply/divide if long double is IEEE 128-bit.
Product: gcc
Version: 13.0
Status: UNCONFIRMED
Severity: normal
Priority: P3
Component: target
Assignee: unassigned at gcc dot gnu.org
Reporter: meissner at gcc dot gnu.org
Target Milestone: ---
^ permalink raw reply [flat|nested] 6+ messages in thread
* [Bug target/109067] Powerpc GCC does not support __ibm128 complex multiply/divide if long double is IEEE 128-bit.
2023-03-08 19:13 [Bug target/109067] New: Powerpc GCC does not support __ibm128 complex multiply/divide if long double is IEEE 128-bit meissner at gcc dot gnu.org
@ 2023-03-08 19:41 ` segher at gcc dot gnu.org
2023-03-20 18:48 ` cvs-commit at gcc dot gnu.org
` (3 subsequent siblings)
4 siblings, 0 replies; 6+ messages in thread
From: segher at gcc dot gnu.org @ 2023-03-08 19:41 UTC (permalink / raw)
To: gcc-bugs
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=109067
--- Comment #1 from Segher Boessenkool <segher at gcc dot gnu.org> ---
Do you have a testcase please?
^ permalink raw reply [flat|nested] 6+ messages in thread
* [Bug target/109067] Powerpc GCC does not support __ibm128 complex multiply/divide if long double is IEEE 128-bit.
2023-03-08 19:13 [Bug target/109067] New: Powerpc GCC does not support __ibm128 complex multiply/divide if long double is IEEE 128-bit meissner at gcc dot gnu.org
2023-03-08 19:41 ` [Bug target/109067] " segher at gcc dot gnu.org
@ 2023-03-20 18:48 ` cvs-commit at gcc dot gnu.org
2023-04-11 2:53 ` cvs-commit at gcc dot gnu.org
` (2 subsequent siblings)
4 siblings, 0 replies; 6+ messages in thread
From: cvs-commit at gcc dot gnu.org @ 2023-03-20 18:48 UTC (permalink / raw)
To: gcc-bugs
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=109067
--- Comment #2 from CVS Commits <cvs-commit at gcc dot gnu.org> ---
The master branch has been updated by Michael Meissner <meissner@gcc.gnu.org>:
https://gcc.gnu.org/g:c67f312d20e15e5aa18c587693b4ab7e131596c1
commit r13-6763-gc67f312d20e15e5aa18c587693b4ab7e131596c1
Author: Michael Meissner <meissner@linux.ibm.com>
Date: Mon Mar 20 14:48:06 2023 -0400
Rework 128-bit complex multiply and divide.
This patch reworks how the complex multiply and divide built-in functions
are
done. Previously GCC created built-in declarations for doing long double
complex
multiply and divide when long double is IEEE 128-bit. However, it did not
support __ibm128 complex multiply and divide if long double is IEEE
128-bit.
This code does not create the built-in declaration with the changed name.
Instead, it uses the TARGET_MANGLE_DECL_ASSEMBLER_NAME hook to change the
name
before it is written out to the assembler file like it now does for all of
the
other long double built-in functions.
2023-03-20 Michael Meissner <meissner@linux.ibm.com>
gcc/
PR target/109067
* config/rs6000/rs6000.cc (create_complex_muldiv): Delete.
(init_float128_ieee): Delete code to switch complex multiply and
divide
for long double.
(complex_multiply_builtin_code): New helper function.
(complex_divide_builtin_code): Likewise.
(rs6000_mangle_decl_assembler_name): Add support for mangling the
name
of complex 128-bit multiply and divide built-in functions.
gcc/testsuite/
PR target/109067
* gcc.target/powerpc/divic3-1.c: New test.
* gcc.target/powerpc/divic3-2.c: Likewise.
* gcc.target/powerpc/mulic3-1.c: Likewise.
* gcc.target/powerpc/mulic3-2.c: Likewise.
^ permalink raw reply [flat|nested] 6+ messages in thread
* [Bug target/109067] Powerpc GCC does not support __ibm128 complex multiply/divide if long double is IEEE 128-bit.
2023-03-08 19:13 [Bug target/109067] New: Powerpc GCC does not support __ibm128 complex multiply/divide if long double is IEEE 128-bit meissner at gcc dot gnu.org
2023-03-08 19:41 ` [Bug target/109067] " segher at gcc dot gnu.org
2023-03-20 18:48 ` cvs-commit at gcc dot gnu.org
@ 2023-04-11 2:53 ` cvs-commit at gcc dot gnu.org
2023-04-11 14:14 ` cvs-commit at gcc dot gnu.org
2023-04-11 14:15 ` meissner at gcc dot gnu.org
4 siblings, 0 replies; 6+ messages in thread
From: cvs-commit at gcc dot gnu.org @ 2023-04-11 2:53 UTC (permalink / raw)
To: gcc-bugs
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=109067
--- Comment #3 from CVS Commits <cvs-commit at gcc dot gnu.org> ---
The releases/gcc-12 branch has been updated by Michael Meissner
<meissner@gcc.gnu.org>:
https://gcc.gnu.org/g:908d9c7e6ed4be95d39b7b01056dda365f379947
commit r12-9394-g908d9c7e6ed4be95d39b7b01056dda365f379947
Author: Michael Meissner <meissner@linux.ibm.com>
Date: Mon Apr 10 22:46:34 2023 -0400
Backport from master
2023-04-10 Michael Meissner <meissner@linux.ibm.com>
gcc/
PR target/109067
* config/rs6000/rs6000.cc (create_complex_muldiv): Delete.
(init_float128_ieee): Delete code to switch complex multiply and
divide
for long double. Backport from master, 3/20/2023.
(complex_multiply_builtin_code): New helper function.
(complex_divide_builtin_code): Likewise.
(rs6000_mangle_decl_assembler_name): Add support for mangling the
name
of complex 128-bit multiply and divide built-in functions.
gcc/testsuite/
PR target/109067
* gcc.target/powerpc/divic3-1.c: New test. Backport from master,
3/20/2023.
* gcc.target/powerpc/divic3-2.c: Likewise.
* gcc.target/powerpc/mulic3-1.c: Likewise.
* gcc.target/powerpc/mulic3-2.c: Likewise.
^ permalink raw reply [flat|nested] 6+ messages in thread
* [Bug target/109067] Powerpc GCC does not support __ibm128 complex multiply/divide if long double is IEEE 128-bit.
2023-03-08 19:13 [Bug target/109067] New: Powerpc GCC does not support __ibm128 complex multiply/divide if long double is IEEE 128-bit meissner at gcc dot gnu.org
` (2 preceding siblings ...)
2023-04-11 2:53 ` cvs-commit at gcc dot gnu.org
@ 2023-04-11 14:14 ` cvs-commit at gcc dot gnu.org
2023-04-11 14:15 ` meissner at gcc dot gnu.org
4 siblings, 0 replies; 6+ messages in thread
From: cvs-commit at gcc dot gnu.org @ 2023-04-11 14:14 UTC (permalink / raw)
To: gcc-bugs
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=109067
--- Comment #4 from CVS Commits <cvs-commit at gcc dot gnu.org> ---
The releases/gcc-11 branch has been updated by Michael Meissner
<meissner@gcc.gnu.org>:
https://gcc.gnu.org/g:5a15a78b919c43954fbfcc90f53f34d7e2700c97
commit r11-10618-g5a15a78b919c43954fbfcc90f53f34d7e2700c97
Author: Michael Meissner <meissner@linux.ibm.com>
Date: Tue Apr 11 10:11:53 2023 -0400
Backport from master
2023-04-11 Michael Meissner <meissner@linux.ibm.com>
gcc/
PR target/109067
* config/rs6000/rs6000.c (create_complex_muldiv): Delete.
(init_float128_ieee): Delete code to switch complex multiply and
divide
for long double. Backport from master, 3/20/2023.
(complex_multiply_builtin_code): New helper function.
(complex_divide_builtin_code): Likewise.
(rs6000_mangle_decl_assembler_name): Add support for mangling the
name
of complex 128-bit multiply and divide built-in functions.
gcc/testsuite/
PR target/109067
* gcc.target/powerpc/divic3-1.c: New test. Backport from master,
3/20/2023.
* gcc.target/powerpc/divic3-2.c: Likewise.
* gcc.target/powerpc/mulic3-1.c: Likewise.
* gcc.target/powerpc/mulic3-2.c: Likewise.
^ permalink raw reply [flat|nested] 6+ messages in thread
* [Bug target/109067] Powerpc GCC does not support __ibm128 complex multiply/divide if long double is IEEE 128-bit.
2023-03-08 19:13 [Bug target/109067] New: Powerpc GCC does not support __ibm128 complex multiply/divide if long double is IEEE 128-bit meissner at gcc dot gnu.org
` (3 preceding siblings ...)
2023-04-11 14:14 ` cvs-commit at gcc dot gnu.org
@ 2023-04-11 14:15 ` meissner at gcc dot gnu.org
4 siblings, 0 replies; 6+ messages in thread
From: meissner at gcc dot gnu.org @ 2023-04-11 14:15 UTC (permalink / raw)
To: gcc-bugs
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=109067
Michael Meissner <meissner at gcc dot gnu.org> changed:
What |Removed |Added
----------------------------------------------------------------------------
Status|UNCONFIRMED |RESOLVED
Resolution|--- |FIXED
--- Comment #5 from Michael Meissner <meissner at gcc dot gnu.org> ---
Trunk patched on March 20th, 2023.
Gcc 12 patched on April 10th, 2023.
Gcc 11 patched on April 11th, 2023.
^ permalink raw reply [flat|nested] 6+ messages in thread
end of thread, other threads:[~2023-04-11 14:15 UTC | newest]
Thread overview: 6+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2023-03-08 19:13 [Bug target/109067] New: Powerpc GCC does not support __ibm128 complex multiply/divide if long double is IEEE 128-bit meissner at gcc dot gnu.org
2023-03-08 19:41 ` [Bug target/109067] " segher at gcc dot gnu.org
2023-03-20 18:48 ` cvs-commit at gcc dot gnu.org
2023-04-11 2:53 ` cvs-commit at gcc dot gnu.org
2023-04-11 14:14 ` cvs-commit at gcc dot gnu.org
2023-04-11 14:15 ` meissner at gcc dot gnu.org
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).