On 19.11.18 17:08, Ilya Leoshkevich wrote: > Bootstrapped and regtested on s390x-redhat-linux. > > By the time peephole optimizations run, we've already made up our mind > whether to use base-register or relative addressing for literal pool > entries. LT(G) supports only base-register addressing, and so it is > too late to convert L(G)RL + compare to LT(G). This change should not > make the code worse unless building with e.g. -fno-dce, since comparing > literal pool entries to zero should be optimized away during earlier > passes. > > gcc/ChangeLog: > > 2018-11-19 Ilya Leoshkevich <i...@linux.ibm.com> > > PR target/88083 > * config/s390/s390.md: Skip LT(G) peephole when literal pool is > involved. > * rtl.h (contains_constant_pool_address_p): New function. > * rtlanal.c (contains_constant_pool_address_p): Likewise. > > gcc/testsuite/ChangeLog: > > 2018-11-19 Ilya Leoshkevich <i...@linux.ibm.com> > > PR target/88083 > * gcc.target/s390/pr88083.c: New test.
Ok. Thanks! Andreas