On Thu, Oct 15, 2015 at 05:33:32PM +0300, Kirill Yukhin wrote: > --- a/gcc/doc/extend.texi > +++ b/gcc/doc/extend.texi > @@ -3066,6 +3066,20 @@ This function attribute make a stack protection of the > function if > flags @option{fstack-protector} or @option{fstack-protector-strong} > or @option{fstack-protector-explicit} are set. > > +@item simd > +@cindex @code{simd} function attribute. > +This attribute enables creation of one or more function versions that > +can process multiple arguments using SIMD instructions from a > +single invocation. Specifying this attribute allows compiler to > +assume that such a versions are available at link time (provided > +in the same or another translation unit). Generated versions are > +target dependent and described in corresponding Vector ABI document. For > +x86_64 target this document can be found > +@w{@uref{https://sourceware.org/glibc/wiki/libmvec?action=AttachFile&do=view&target=VectorABI.txt,here}}. > +It is prohibited to use the attribute along with Cilk Plus's @code{vector} > +attribute. If the attribute is specified and @code{#pragma omp declare simd} > +presented on a declaration, then the attribute is ignored.
Is that what is implemented? I mean, isn't the argument ignored only if #pragma omp declare simd is present and -fopenmp or -fopenmp-simd passed on the command line, because otherwise the pragma is ignored? Jakub