> It would be good to mark all of these functions with __attribute__((noipa)), > since I think interprocedural optimisations might otherwise defeat the > runtime test in abd_run_1.c (in the sense that we might end up folding > things at compile time and not testing the vector versions of the functions).
Done. > There are 14 tests, and it looks like 6 of them are expected to produce > ABD instructions while 8 aren't. It isn't really clear which tests are > which though. > > I think it'd help to split the file into two: > > - one containing only the tests that should produce ABD, so that the > scan-assembler counts sum up to the number of tests > > - one containing only the tests that cannot use ABD, with: > > { dg-final { scan-assembler-not {\tsabd\t} } } > { dg-final { scan-assembler-not {\tuabd\t} } } > > to enforce that After adjustments made to the vectoriser part, all tests now use an abd instruction. > For these SVE tests, it'd be better to drop the: > > #pragma GCC target "arch=armv8-a" > > lines and instead allow SVE to be used as normal. We should then be > able to match the SVE instructions in the dg-final lines. Done, and changed the assembler scans to reflect this. Patch is in the next response.