Martin Liška <mli...@suse.cz> writes: > Hello. > > The patch does the same as g:df592811f950301ed3b10a08e476dad0f2eff26a for > aarch64. > > Tested locally with cross compiler. > > Ready for master? > > Thanks, > Martin > > PR target/102375 > > gcc/ChangeLog: > > * config/aarch64/aarch64.c (aarch64_process_one_target_attr): > Strip whitespaces. > > gcc/testsuite/ChangeLog: > > * gcc.target/aarch64/pr102375.c: New test. > --- > gcc/config/aarch64/aarch64.c | 1 + > gcc/testsuite/gcc.target/aarch64/pr102375.c | 4 ++++ > 2 files changed, 5 insertions(+) > create mode 100644 gcc/testsuite/gcc.target/aarch64/pr102375.c > > diff --git a/gcc/config/aarch64/aarch64.c b/gcc/config/aarch64/aarch64.c > index 76d99d247ae..4c3e491ab14 100644 > --- a/gcc/config/aarch64/aarch64.c > +++ b/gcc/config/aarch64/aarch64.c > @@ -17624,6 +17624,7 @@ aarch64_process_one_target_attr (char *arg_str) > bool invert = false; > > size_t len = strlen (arg_str); > + arg_str = strip_whitespaces (arg_str, &len);
It looks like this ought to happen after the alloca and copy, since it modifies the string. Thanks, Richard > > if (len == 0) > { > diff --git a/gcc/testsuite/gcc.target/aarch64/pr102375.c > b/gcc/testsuite/gcc.target/aarch64/pr102375.c > new file mode 100644 > index 00000000000..fa75d319b2d > --- /dev/null > +++ b/gcc/testsuite/gcc.target/aarch64/pr102375.c > @@ -0,0 +1,4 @@ > +/* PR target/102375 */ > +/* { dg-do compile } */ > + > +void calculate(void) __attribute__ ((target ("+sve, +sve2")));