Alfie Richards <alfie.richa...@arm.com> writes: > This changes the ambiguation error for C++ to cover cases of differently > annotated FMV function sets whose signatures only differ by their return > type. > > It also adds tests covering many FMV errors for Aarch64, including > redeclaration, and mixing target_clones and target_versions.
The tests look good. Sorry for not applying the series to find out for myself, but what's the full message for: > diff --git a/gcc/testsuite/g++.target/aarch64/mvc-error2.C > b/gcc/testsuite/g++.target/aarch64/mvc-error2.C > new file mode 100644 > index 00000000000..0e956e402d8 > --- /dev/null > +++ b/gcc/testsuite/g++.target/aarch64/mvc-error2.C > @@ -0,0 +1,10 @@ > +/* { dg-do compile } */ > +/* { dg-require-ifunc "" } */ > +/* { dg-options "-O0" } */ > +/* { dg-additional-options "-Wno-experimental-fmv-target" } */ > + > +__attribute__ ((target_clones ("default, dotprod"))) float > +foo () { return 3; } /* { dg-message "previously defined here" } */ > + > +__attribute__ ((target_clones ("dotprod", "mve"))) float > +foo () { return 3; } /* { dg-error "redefinition of" } */ ...the redefinition error here? Does it mention dotprod specifically? If so, it might be worth capturing that in the test, so that we don't regress later. Thanks, Richard