Re: [PATCH v2] S/390: Allow LARL of literal pool entries

2018-11-05 Thread Ilya Leoshkevich
> Am 31.10.2018 um 10:59 schrieb Ulrich Weigand : > > Ilya Leoshkevich wrote: >> Am 30.10.2018 um 18:22 schrieb Ulrich Weigand : >>> This definitely looks wrong. If we haven't annotated the address, >>> it should *not* be found by find_constant_pool_ref, since we are >>> not going to replace i

Re: [PATCH v2] S/390: Allow LARL of literal pool entries

2018-10-31 Thread Ulrich Weigand
Ilya Leoshkevich wrote: > Am 30.10.2018 um 18:22 schrieb Ulrich Weigand : > > This definitely looks wrong. If we haven't annotated the address, > > it should *not* be found by find_constant_pool_ref, since we are > > not going to replace it! That was the whole point of not annotating > > it in th

Re: [PATCH v2] S/390: Allow LARL of literal pool entries

2018-10-30 Thread Ilya Leoshkevich
> Am 30.10.2018 um 18:22 schrieb Ulrich Weigand : > > Ilya Leoshkevich wrote: > >> @@ -8223,6 +8237,18 @@ find_constant_pool_ref (rtx x, rtx *ref) >> && XINT (x, 1) == UNSPECV_POOL_ENTRY) >> return; >> >> + if (SYMBOL_REF_P (x) >> + && CONSTANT_POOL_ADDRESS_P (x) >> + && s

Re: [PATCH v2] S/390: Allow LARL of literal pool entries

2018-10-30 Thread Ulrich Weigand
Ilya Leoshkevich wrote: > @@ -8223,6 +8237,18 @@ find_constant_pool_ref (rtx x, rtx *ref) >&& XINT (x, 1) == UNSPECV_POOL_ENTRY) > return; > > + if (SYMBOL_REF_P (x) > + && CONSTANT_POOL_ADDRESS_P (x) > + && s390_symbol_larl_p (x)) > +{ > + if (*ref == NULL_RTX)

[PATCH v2] S/390: Allow LARL of literal pool entries

2018-10-30 Thread Ilya Leoshkevich
Bootstrapped and regtested on s390x-redhat-linux. Changes since v1: * Removed unnecessary gen_rtx_CONST call. * UNSPEC_LTREF are now omitted for all relatively addressed pool entries, and not only those which occur in LARL-like patterns. r265490 allowed the compiler to choose in a more flexible