On Mon, 22 Mar 2021 at 18:38, Vladimir Makarov via Gcc-patches <gcc-patches@gcc.gnu.org> wrote: > > > On 2021-03-21 8:51 a.m., Richard Sandiford wrote: > > Vladimir Makarov <vmaka...@redhat.com> writes: > >> On 2021-03-19 11:42 a.m., Richard Sandiford wrote: > >>> Vladimir Makarov via Gcc-patches <gcc-patches@gcc.gnu.org> writes: > >>>> The following patch solves P1 PR99581 > >>>> > >>>> https://gcc.gnu.org/bugzilla/show_bug.cgi?id=99581 > >>>> > >>>> The patch was successfully tested and bootstrapped on x86-64, ppc64le, > >>>> aarch64. > >>>> > >>>> Is it ok for the trunk? > >>> I'm not trying to reject the patch as such. I just think we need to > >>> have a clearer picture first. > >>> > >> I agree that 'o' should be treated as a subset of 'm' and therefore its > >> definition should have a check as 'm' has. Still my patch is not about > >> treatment of constraint 'o' only. > >> > >> My approach for LRA development is minimal changes, as radical changes > >> (even if they look right) results long lasting unpredictable effects on > >> many targets. > >> > >> The patch in which you introduced a new function valid_address_p and new > >> treatment of **all** memory constraints was too big change with this > >> point of view and finally it resulted in this problem after recent > >> partially fixing mess in process_address_1. > >> > >> My patch fixes this radical change. So I think we still need the patch > >> I've submitted. > > OK, fair enough. I have some minor cosmetic comments below, but > > otherwise the patch is OK for trunk and branch. > > > Richard, thank you for your review and approval. I incorporated all > your proposals into the patch and committed it into the trunk. The > final patch is in the attachment. >
Hi, This patch causes regressions (116) on aarch64: gcc.target/aarch64/sve/acle/aarch64-sve-acle-asm.exp gcc.target/aarch64/sve/acle/asm/ld1ro_bf16.c -std=gnu90 -O2 -fno-schedule-insns -DCHECK_ASM --save-temps -DTEST_FULL check-function-bodies ld1ro_bf16_112 gcc.target/aarch64/sve/acle/asm/ld1ro_bf16.c -std=gnu90 -O2 -fno-schedule-insns -DCHECK_ASM --save-temps -DTEST_FULL check-function-bodies ld1ro_bf16_16 gcc.target/aarch64/sve/acle/asm/ld1ro_bf16.c -std=gnu90 -O2 -fno-schedule-insns -DCHECK_ASM --save-temps -DTEST_FULL check-function-bodies ld1ro_bf16_index gcc.target/aarch64/sve/acle/asm/ld1ro_bf16.c -std=gnu90 -O2 -fno-schedule-insns -DCHECK_ASM --save-temps -DTEST_FULL check-function-bodies ld1ro_bf16_m128 gcc.target/aarch64/sve/acle/asm/ld1ro_bf16.c -std=gnu90 -O2 -fno-schedule-insns -DCHECK_ASM --save-temps -DTEST_FULL check-function-bodies ld1ro_bf16_m16 [....] Not sure why you didn't see them during your testing? Can you check? Thanks