* [Bug target/113950] PowerPC, ICE with -O1 or higher compiling __builtin_vsx_splat_2di test case
2024-02-15 23:43 [Bug target/113950] New: PowerPC, ICE with -O1 or higher compiling __builtin_vsx_splat_2di test case carll at gcc dot gnu.org
@ 2024-02-16 0:00 ` bergner at gcc dot gnu.org
2024-02-23 1:35 ` bergner at gcc dot gnu.org
` (7 subsequent siblings)
8 siblings, 0 replies; 10+ messages in thread
From: bergner at gcc dot gnu.org @ 2024-02-16 0:00 UTC (permalink / raw)
To: gcc-bugs
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=113950
Peter Bergner <bergner at gcc dot gnu.org> changed:
What |Removed |Added
----------------------------------------------------------------------------
Last reconfirmed| |2024-02-16
Ever confirmed|0 |1
Status|UNCONFIRMED |NEW
--- Comment #1 from Peter Bergner <bergner at gcc dot gnu.org> ---
Confirmed.
^ permalink raw reply [flat|nested] 10+ messages in thread
* [Bug target/113950] PowerPC, ICE with -O1 or higher compiling __builtin_vsx_splat_2di test case
2024-02-15 23:43 [Bug target/113950] New: PowerPC, ICE with -O1 or higher compiling __builtin_vsx_splat_2di test case carll at gcc dot gnu.org
2024-02-16 0:00 ` [Bug target/113950] " bergner at gcc dot gnu.org
@ 2024-02-23 1:35 ` bergner at gcc dot gnu.org
2024-03-07 14:18 ` cvs-commit at gcc dot gnu.org
` (6 subsequent siblings)
8 siblings, 0 replies; 10+ messages in thread
From: bergner at gcc dot gnu.org @ 2024-02-23 1:35 UTC (permalink / raw)
To: gcc-bugs
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=113950
Peter Bergner <bergner at gcc dot gnu.org> changed:
What |Removed |Added
----------------------------------------------------------------------------
Status|NEW |ASSIGNED
Assignee|unassigned at gcc dot gnu.org |jeevitha at gcc dot gnu.org
CC| |dje at gcc dot gnu.org,
| |linkw at gcc dot gnu.org,
| |meissner at gcc dot gnu.org,
| |segher at gcc dot gnu.org
--- Comment #2 from Peter Bergner <bergner at gcc dot gnu.org> ---
Jeevitha is looking into this for us.
^ permalink raw reply [flat|nested] 10+ messages in thread
* [Bug target/113950] PowerPC, ICE with -O1 or higher compiling __builtin_vsx_splat_2di test case
2024-02-15 23:43 [Bug target/113950] New: PowerPC, ICE with -O1 or higher compiling __builtin_vsx_splat_2di test case carll at gcc dot gnu.org
2024-02-16 0:00 ` [Bug target/113950] " bergner at gcc dot gnu.org
2024-02-23 1:35 ` bergner at gcc dot gnu.org
@ 2024-03-07 14:18 ` cvs-commit at gcc dot gnu.org
2024-03-15 20:36 ` bergner at gcc dot gnu.org
` (5 subsequent siblings)
8 siblings, 0 replies; 10+ messages in thread
From: cvs-commit at gcc dot gnu.org @ 2024-03-07 14:18 UTC (permalink / raw)
To: gcc-bugs
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=113950
--- Comment #3 from GCC Commits <cvs-commit at gcc dot gnu.org> ---
The master branch has been updated by jeevitha <jeevitha@gcc.gnu.org>:
https://gcc.gnu.org/g:fa0468877869f52b05742de6deef582e4dd296fc
commit r14-9362-gfa0468877869f52b05742de6deef582e4dd296fc
Author: Jeevitha <jeevitha@linux.ibm.com>
Date: Thu Mar 7 07:41:38 2024 -0600
rs6000: Don't ICE when compiling the __builtin_vsx_splat_2di [PR113950]
When we expand the __builtin_vsx_splat_2di built-in, we were allowing
immediate
value for second operand which causes an unrecognizable insn ICE. Even
though
the immediate value was forced into a register, it wasn't correctly
assigned
to the second operand. So corrected the assignment of op1 to operands[1].
2024-03-07 Jeevitha Palanisamy <jeevitha@linux.ibm.com>
gcc/
PR target/113950
* config/rs6000/vsx.md (vsx_splat_<mode>): Correct assignment to
operand1
and simplify else if with else.
gcc/testsuite/
PR target/113950
* gcc.target/powerpc/pr113950.c: New testcase.
^ permalink raw reply [flat|nested] 10+ messages in thread
* [Bug target/113950] PowerPC, ICE with -O1 or higher compiling __builtin_vsx_splat_2di test case
2024-02-15 23:43 [Bug target/113950] New: PowerPC, ICE with -O1 or higher compiling __builtin_vsx_splat_2di test case carll at gcc dot gnu.org
` (2 preceding siblings ...)
2024-03-07 14:18 ` cvs-commit at gcc dot gnu.org
@ 2024-03-15 20:36 ` bergner at gcc dot gnu.org
2024-03-21 9:55 ` cvs-commit at gcc dot gnu.org
` (4 subsequent siblings)
8 siblings, 0 replies; 10+ messages in thread
From: bergner at gcc dot gnu.org @ 2024-03-15 20:36 UTC (permalink / raw)
To: gcc-bugs
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=113950
--- Comment #4 from Peter Bergner <bergner at gcc dot gnu.org> ---
The bogus vsx_splat_<mode> code goes all the way back to GCC 8, so we need
backports to the open release branches (GCC 13, 12, 11).
^ permalink raw reply [flat|nested] 10+ messages in thread
* [Bug target/113950] PowerPC, ICE with -O1 or higher compiling __builtin_vsx_splat_2di test case
2024-02-15 23:43 [Bug target/113950] New: PowerPC, ICE with -O1 or higher compiling __builtin_vsx_splat_2di test case carll at gcc dot gnu.org
` (3 preceding siblings ...)
2024-03-15 20:36 ` bergner at gcc dot gnu.org
@ 2024-03-21 9:55 ` cvs-commit at gcc dot gnu.org
2024-05-01 5:58 ` cvs-commit at gcc dot gnu.org
` (3 subsequent siblings)
8 siblings, 0 replies; 10+ messages in thread
From: cvs-commit at gcc dot gnu.org @ 2024-03-21 9:55 UTC (permalink / raw)
To: gcc-bugs
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=113950
--- Comment #5 from GCC Commits <cvs-commit at gcc dot gnu.org> ---
The releases/gcc-13 branch has been updated by jeevitha <jeevitha@gcc.gnu.org>:
https://gcc.gnu.org/g:27eb6e81e6e578da9f9947d3f96c0fa58971fe7f
commit r13-8474-g27eb6e81e6e578da9f9947d3f96c0fa58971fe7f
Author: Jeevitha <jeevitha@linux.ibm.com>
Date: Wed Mar 20 23:34:46 2024 -0500
rs6000: Don't ICE when compiling the __builtin_vsx_splat_2di [PR113950]
When we expand the __builtin_vsx_splat_2di built-in, we were allowing
immediate
value for second operand which causes an unrecognizable insn ICE. Even
though
the immediate value was forced into a register, it wasn't correctly
assigned
to the second operand. So corrected the assignment of op1 to operands[1].
2024-03-07 Jeevitha Palanisamy <jeevitha@linux.ibm.com>
gcc/
PR target/113950
* config/rs6000/vsx.md (vsx_splat_<mode>): Correct assignment to
operand1
and simplify else if with else.
gcc/testsuite/
PR target/113950
* gcc.target/powerpc/pr113950.c: New testcase.
(cherry picked from commit fa0468877869f52b05742de6deef582e4dd296fc)
^ permalink raw reply [flat|nested] 10+ messages in thread
* [Bug target/113950] PowerPC, ICE with -O1 or higher compiling __builtin_vsx_splat_2di test case
2024-02-15 23:43 [Bug target/113950] New: PowerPC, ICE with -O1 or higher compiling __builtin_vsx_splat_2di test case carll at gcc dot gnu.org
` (4 preceding siblings ...)
2024-03-21 9:55 ` cvs-commit at gcc dot gnu.org
@ 2024-05-01 5:58 ` cvs-commit at gcc dot gnu.org
2024-05-16 13:58 ` jeevitha at gcc dot gnu.org
` (2 subsequent siblings)
8 siblings, 0 replies; 10+ messages in thread
From: cvs-commit at gcc dot gnu.org @ 2024-05-01 5:58 UTC (permalink / raw)
To: gcc-bugs
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=113950
--- Comment #6 from GCC Commits <cvs-commit at gcc dot gnu.org> ---
The releases/gcc-12 branch has been updated by jeevitha <jeevitha@gcc.gnu.org>:
https://gcc.gnu.org/g:1b91818e47119863f827b19ae4c6c91af3962cd6
commit r12-10406-g1b91818e47119863f827b19ae4c6c91af3962cd6
Author: Jeevitha <jeevitha@linux.ibm.com>
Date: Sun Apr 28 23:38:41 2024 -0500
rs6000: Don't ICE when compiling the __builtin_vsx_splat_2di [PR113950]
When we expand the __builtin_vsx_splat_2di built-in, we were allowing
immediate
value for second operand which causes an unrecognizable insn ICE. Even
though
the immediate value was forced into a register, it wasn't correctly
assigned
to the second operand. So corrected the assignment of op1 to operands[1].
2024-03-07 Jeevitha Palanisamy <jeevitha@linux.ibm.com>
gcc/
PR target/113950
* config/rs6000/vsx.md (vsx_splat_<mode>): Correct assignment to
operand1
and simplify else if with else.
gcc/testsuite/
PR target/113950
* gcc.target/powerpc/pr113950.c: New testcase.
(cherry picked from commit fa0468877869f52b05742de6deef582e4dd296fc)
^ permalink raw reply [flat|nested] 10+ messages in thread
* [Bug target/113950] PowerPC, ICE with -O1 or higher compiling __builtin_vsx_splat_2di test case
2024-02-15 23:43 [Bug target/113950] New: PowerPC, ICE with -O1 or higher compiling __builtin_vsx_splat_2di test case carll at gcc dot gnu.org
` (5 preceding siblings ...)
2024-05-01 5:58 ` cvs-commit at gcc dot gnu.org
@ 2024-05-16 13:58 ` jeevitha at gcc dot gnu.org
2024-05-16 14:02 ` jeevitha at gcc dot gnu.org
2024-05-16 15:04 ` shivam98.tkg at gmail dot com
8 siblings, 0 replies; 10+ messages in thread
From: jeevitha at gcc dot gnu.org @ 2024-05-16 13:58 UTC (permalink / raw)
To: gcc-bugs
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=113950
--- Comment #7 from Jeevitha <jeevitha at gcc dot gnu.org> ---
In GCC 11, we encountered a different issue that didn't result in an ICE.
The following is the error message in GCC 11:
error: too few arguments to function '__builtin_vsx_splat_2di'
11 | vsll_result = __builtin_vsx_splat_2di (sll_arg1); // ISSUE
The error indicated a shortage of arguments for the built-in function. It
expects two arguments because the function prototype is different in GCC 11
compared to GCC 12, 13, and 14.
I have found that the commit responsible for changing the function prototype
was made by Bill Schmidt (commit hash:
d08236359eb22918ba067489edcec02857109d09). In this commit, he introduced new
built-in functionality, where the function prototype is sourced from
rs6000-builtin-new.def, which includes the following declaration:
const vsll __builtin_vsx_splat_2di (signed long long);
Prior to this commit ie, in gcc11, the function prototype was sourced from
rs6000-builtin.def and included two arguments:
/* 2 argument VSX builtins. */
BU_VSX_2 (SPLAT_2DI, "splat_2di", CONST, vsx_splat_v2di)
These changes are controlled by the setting new_builtins_are_live. Bill made
this change in his commit by adjusting this setting.
Due to the above prototype changes, we are not backporting to GCC 11.
^ permalink raw reply [flat|nested] 10+ messages in thread
* [Bug target/113950] PowerPC, ICE with -O1 or higher compiling __builtin_vsx_splat_2di test case
2024-02-15 23:43 [Bug target/113950] New: PowerPC, ICE with -O1 or higher compiling __builtin_vsx_splat_2di test case carll at gcc dot gnu.org
` (6 preceding siblings ...)
2024-05-16 13:58 ` jeevitha at gcc dot gnu.org
@ 2024-05-16 14:02 ` jeevitha at gcc dot gnu.org
2024-05-16 15:04 ` shivam98.tkg at gmail dot com
8 siblings, 0 replies; 10+ messages in thread
From: jeevitha at gcc dot gnu.org @ 2024-05-16 14:02 UTC (permalink / raw)
To: gcc-bugs
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=113950
Jeevitha <jeevitha at gcc dot gnu.org> changed:
What |Removed |Added
----------------------------------------------------------------------------
Resolution|--- |FIXED
Status|ASSIGNED |RESOLVED
--- Comment #8 from Jeevitha <jeevitha at gcc dot gnu.org> ---
Fixed, and all backports are done.
^ permalink raw reply [flat|nested] 10+ messages in thread
* [Bug target/113950] PowerPC, ICE with -O1 or higher compiling __builtin_vsx_splat_2di test case
2024-02-15 23:43 [Bug target/113950] New: PowerPC, ICE with -O1 or higher compiling __builtin_vsx_splat_2di test case carll at gcc dot gnu.org
` (7 preceding siblings ...)
2024-05-16 14:02 ` jeevitha at gcc dot gnu.org
@ 2024-05-16 15:04 ` shivam98.tkg at gmail dot com
8 siblings, 0 replies; 10+ messages in thread
From: shivam98.tkg at gmail dot com @ 2024-05-16 15:04 UTC (permalink / raw)
To: gcc-bugs
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=113950
--- Comment #9 from Shivam Gupta <shivam98.tkg at gmail dot com> ---
Good explanation 👍
On Thu, 16 May 2024 at 7:32 PM, jeevitha at gcc dot gnu.org via Gcc-bugs <
gcc-bugs@gcc.gnu.org> wrote:
> https://gcc.gnu.org/bugzilla/show_bug.cgi?id=113950
>
> Jeevitha <jeevitha at gcc dot gnu.org> changed:
>
> What |Removed |Added
>
> ----------------------------------------------------------------------------
> Resolution|--- |FIXED
> Status|ASSIGNED |RESOLVED
>
> --- Comment #8 from Jeevitha <jeevitha at gcc dot gnu.org> ---
> Fixed, and all backports are done.
^ permalink raw reply [flat|nested] 10+ messages in thread