Hi Christophe,
On 11/20/2023 10:12 AM, Christophe Lyon wrote:
Hi Saurabh,
On Tue, 14 Nov 2023 at 15:51, Kyrylo Tkachov <kyrylo.tkac...@arm.com> wrote:
Hi Saurabh,
-----Original Message-----
From: Saurabh Jha <saurabh....@arm.com>
Sent: Thursday, November 9, 2023 10:12 AM
To: gcc-patches@gcc.gnu.org; Richard Earnshaw
<richard.earns...@arm.com>; Richard Sandiford
<richard.sandif...@arm.com>
Subject: [PATCH] Add a REG_P check for inc and dec for Arm MVE
Hey,
This patch tightens mve_vector_mem_operand to reject non-register
operands inside {PRE,POST}_{INC,DEC} addresses by introducing a REG_P
check.
This patch fixes this ICE:https://gcc.gnu.org/bugzilla/show_bug.cgi?id=112337
Okay for trunk? I don't have trunk access so could someone please commit
on my behalf?
Ok.
Regards,
Saurabh
gcc/ChangeLog:
PR target/112337
* config/arm/arm.cc (mve_vector_mem_operand): Add a REG_P
check for INC
and DEC operations
gcc/testsuite/ChangeLog:
PR target/112337
* gcc.target/arm/mve/pr112337.c: Test for REG_P check for INC and
DEC
operations
This new test fails in our CI (various flavours of target arm-eabi),
with the following:
/gcc.target/arm/mve/pr112337.c:11:18: warning: passing argument 1 of
'__arm_vldrwq_s32' from incompatible pointer type
[-Wincompatible-pointer-types]
In file included from
/home/tcwg-buildslave/workspace/tcwg_gnu_0/abe/snapshots/gcc.git~master/gcc/testsuite/gcc.target/arm/mve/pr112337.c:5:
/arm-eabi/14.0.0/include/arm_mve.h:1752:35: note: expected 'const
int32_t *' {aka 'const long int *'} but argument is of type 'int *'
I think you should make p a int32_t pointer rather than int, but I am
wondering why you didn't see this problem in your testing?
Can you check?
Thanks,
Christophe
Thank you for bringing this up. Unfortunately, I misread the test output
in my local testing. Apologies for that.
I am working on a fix and will be submitting it soon.
Thanks,
Saurabh
ChangeLog entries should end with a full stop (the git commit hooks enforce it).
I've adjusted the ChangeLog and pushed this patch for you.
Thank you for the patch!
Kyrill