[Bug target/106355] Linux s390x -O2 argument passing miscompile
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=106355 Marek Polacek changed: What|Removed |Added Status|UNCONFIRMED |RESOLVED CC||mpolacek at gcc dot gnu.org Resolution|--- |FIXED --- Comment #9 from Marek Polacek --- Assuming fixed.
[Bug target/106355] Linux s390x -O2 argument passing miscompile
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=106355 --- Comment #8 from CVS Commits --- The releases/gcc-10 branch has been updated by Stefan Schulze Frielinghaus : https://gcc.gnu.org/g:97509e98d9199ff43916250fc0a20f3d1838d067 commit r10-11059-g97509e98d9199ff43916250fc0a20f3d1838d067 Author: Stefan Schulze Frielinghaus Date: Tue Oct 25 10:38:23 2022 +0200 IBM zSystems: Fix function_ok_for_sibcall [PR106355] For a parameter with BLKmode we cannot use REG_NREGS in order to determine the number of consecutive registers. Streamlined this with the implementation of s390_function_arg. Fix some indentation whitespace, too. gcc/ChangeLog: PR target/106355 * config/s390/s390.c (s390_call_saved_register_used): For a parameter with BLKmode fix determining number of consecutive registers. gcc/testsuite/ChangeLog: * gcc.target/s390/pr106355.h: Common code for new tests. * gcc.target/s390/pr106355-1.c: New test. * gcc.target/s390/pr106355-2.c: New test. * gcc.target/s390/pr106355-3.c: New test. (cherry picked from commit cb994acc08b67f26a54e7c5dc1f4995a2ce24d98)
[Bug target/106355] Linux s390x -O2 argument passing miscompile
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=106355 --- Comment #7 from CVS Commits --- The releases/gcc-11 branch has been updated by Stefan Schulze Frielinghaus : https://gcc.gnu.org/g:5e41c45fef8262caf20fdcf2a04427f16c295881 commit r11-10336-g5e41c45fef8262caf20fdcf2a04427f16c295881 Author: Stefan Schulze Frielinghaus Date: Tue Oct 25 10:37:19 2022 +0200 IBM zSystems: Fix function_ok_for_sibcall [PR106355] For a parameter with BLKmode we cannot use REG_NREGS in order to determine the number of consecutive registers. Streamlined this with the implementation of s390_function_arg. Fix some indentation whitespace, too. gcc/ChangeLog: PR target/106355 * config/s390/s390.c (s390_call_saved_register_used): For a parameter with BLKmode fix determining number of consecutive registers. gcc/testsuite/ChangeLog: * gcc.target/s390/pr106355.h: Common code for new tests. * gcc.target/s390/pr106355-1.c: New test. * gcc.target/s390/pr106355-2.c: New test. * gcc.target/s390/pr106355-3.c: New test. (cherry picked from commit cb994acc08b67f26a54e7c5dc1f4995a2ce24d98)
[Bug target/106355] Linux s390x -O2 argument passing miscompile
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=106355 --- Comment #6 from CVS Commits --- The releases/gcc-12 branch has been updated by Stefan Schulze Frielinghaus : https://gcc.gnu.org/g:0737125ec0e9102e139f8f49130b4666be4cc626 commit r12-8865-g0737125ec0e9102e139f8f49130b4666be4cc626 Author: Stefan Schulze Frielinghaus Date: Wed Oct 19 14:28:22 2022 +0200 IBM zSystems: Fix function_ok_for_sibcall [PR106355] For a parameter with BLKmode we cannot use REG_NREGS in order to determine the number of consecutive registers. Streamlined this with the implementation of s390_function_arg. Fix some indentation whitespace, too. gcc/ChangeLog: PR target/106355 * config/s390/s390.cc (s390_call_saved_register_used): For a parameter with BLKmode fix determining number of consecutive registers. gcc/testsuite/ChangeLog: * gcc.target/s390/pr106355.h: Common code for new tests. * gcc.target/s390/pr106355-1.c: New test. * gcc.target/s390/pr106355-2.c: New test. * gcc.target/s390/pr106355-3.c: New test. (cherry picked from commit cb994acc08b67f26a54e7c5dc1f4995a2ce24d98)
[Bug target/106355] Linux s390x -O2 argument passing miscompile
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=106355 --- Comment #5 from CVS Commits --- The master branch has been updated by Stefan Schulze Frielinghaus : https://gcc.gnu.org/g:cb994acc08b67f26a54e7c5dc1f4995a2ce24d98 commit r13-3377-gcb994acc08b67f26a54e7c5dc1f4995a2ce24d98 Author: Stefan Schulze Frielinghaus Date: Wed Oct 19 14:28:22 2022 +0200 IBM zSystems: Fix function_ok_for_sibcall [PR106355] For a parameter with BLKmode we cannot use REG_NREGS in order to determine the number of consecutive registers. Streamlined this with the implementation of s390_function_arg. Fix some indentation whitespace, too. gcc/ChangeLog: PR target/106355 * config/s390/s390.cc (s390_call_saved_register_used): For a parameter with BLKmode fix determining number of consecutive registers. gcc/testsuite/ChangeLog: * gcc.target/s390/pr106355.h: Common code for new tests. * gcc.target/s390/pr106355-1.c: New test. * gcc.target/s390/pr106355-2.c: New test. * gcc.target/s390/pr106355-3.c: New test.
[Bug target/106355] Linux s390x -O2 argument passing miscompile
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=106355 --- Comment #4 from Stefan Schulze Frielinghaus --- The problem is with sibling call optimization where parameters with BLKmode are not handled correctly. I will prepare a patch and submit it shortly.
[Bug target/106355] Linux s390x -O2 argument passing miscompile
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=106355 Dan Horák changed: What|Removed |Added CC||jakub at gcc dot gnu.org --- Comment #3 from Dan Horák --- adding Jakub as this affect Fedora ...
[Bug target/106355] Linux s390x -O2 argument passing miscompile
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=106355 --- Comment #2 from Stephan Bergmann --- (In reply to Richard Biener from comment #1) > Did you see whether this is changed behavior from GCC 11? I didn't check that myself, but the Debian LibreOffice maintainer claims that he sees the same symptoms when building with some GCC 11 (against some GCC 12 libstdc++, though). (It appears that this issue only happened to start to hit builds of LibreOffice after some recent code changes in LibreOffice, so we don't have any historic data on which versions of GCC would not have had this issue.)
[Bug target/106355] Linux s390x -O2 argument passing miscompile
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=106355 Richard Biener changed: What|Removed |Added CC||krebbel at gcc dot gnu.org, ||rguenth at gcc dot gnu.org --- Comment #1 from Richard Biener --- Did you see whether this is changed behavior from GCC 11?