This is the mail archive of the gcc-bugs@gcc.gnu.org mailing list for the GCC project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

[Bug bootstrap/69709] [6 Regression] profiled bootstrap error on s390x-linux-gnu with r233194


https://gcc.gnu.org/bugzilla/show_bug.cgi?id=69709

--- Comment #14 from Andreas Krebbel <krebbel at gcc dot gnu.org> ---
Author: krebbel
Date: Fri Feb 26 18:03:51 2016
New Revision: 233752

URL: https://gcc.gnu.org/viewcvs?rev=233752&root=gcc&view=rev
Log:
S/390: PR69709 Fix risbg splitter

This fixes a wrong code generation problem with the splitters introduced
with that patch: https://gcc.gnu.org/ml/gcc-patches/2015-07/msg01840.html

The target operand is used as temporary.  This fails if it matches the
source of the left shift which is read after writing the temporary.

Thanks to Dominik for debugging it and thanks to Richard for the fix!

Bootstrapped and regtested on s390x with-arch=z13.

Bye,

-Andreas-

gcc/ChangeLog:

2016-02-26  Richard Henderson  <rth@redhat.com>

        PR target/69709
        * config/s390/s390.md (risbg and risbgn splitters): Allocate new
        pseudo in case the target rtx matches the source of the left
        shift.

gcc/testsuite/ChangeLog:

2016-02-26  Andreas Krebbel  <krebbel@linux.vnet.ibm.com>

        PR target/69709
        * gcc.target/s390/pr69709.c: New test.


Added:
    trunk/gcc/testsuite/gcc.target/s390/pr69709.c
Modified:
    trunk/gcc/ChangeLog
    trunk/gcc/config/s390/s390.md
    trunk/gcc/testsuite/ChangeLog

Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]