If I try
double* ptr1; double* ptr2; __assume_aligned(ptr1, 64); __assume_aligned(ptr2, 64); #pragma simd for (int i=0; i<n; ++i) ptr1[i] = ptr2[i];
it will vectorise the loop with aligned access, but gives a warning that #pragma simd is deprecated.
If I swap "simd" for "vector aligned", it does not vectorise and the optimisation report says "use the simd directive".
The documentation for #pragma simd (https://software.intel.com/en-us/cpp-compiler-developer-guide-and-reference-simd) doesn't mention deprecation or any alternatives.
Is there any documentation/articles that tells us how we are supposed to do this these days?
TCE Open Date:
Sunday, February 23, 2020 - 10:41