On 03/11/2023 07:31, Richard Biener wrote:


OK.

I do wonder about the gfortran testsuite adjustments though.

!GCC$ builtin (sin) attributes simd (inbranch)

   ! this should not be using simd clone
   y4 = sin(x8)

previously we wouldn't vectorize this as no notinbranch simd function
is available but now we do since we use the inbranch function for the
notinbranch call.  If that's desired then a better modification of
the test would be to expect vectorization, no?


I was in two minds about this. I interpreted the test to be about the fact that sin is overloaded in fortran, given the name of the program 'program test_overloaded_intrinsic', and thus I thought it was testing that it calls sinf when a real(4) is passed and sin for a real(8) and that simdclones aren't used for the wrong overload. That doesn't quite explain why the pragma for sin(double) was added in the first place, that wouldn't have been necessary, but then again neither are the cos and cosf.

Happy to put it back in and test that the 'masked' simdclone is used using some regexp too.

Reply via email to