This is the mail archive of the libc-alpha@sourceware.org mailing list for the glibc project.
Index Nav: | [Date Index] [Subject Index] [Author Index] [Thread Index] | |
---|---|---|
Message Nav: | [Date Prev] [Date Next] | [Thread Prev] [Thread Next] |
Other format: | [Raw text] |
On 10/05/2015 07:24 AM, Joseph Myers wrote:
I'm not sure why this attribute isn't documented, but clearly that should be fixed.On Mon, 5 Oct 2015, Kirill Yukhin wrote:To enable vectorization of loops w/ calls to math functions it is reasonable to enable parsing of attribute vector for functions unconditionally and change GlibC's header file not to use `omp declare simd', but use __attribute__((vector)) instead.I assume you mean __vector__, for namespace reasons. Obviously you need appropriate GCC version conditionals in the headers to use the attribute only when supported. In addition, (a) this attribute doesn't seem to be documented in extend.texi, and you'll need to include documentation in your GCC patch that makes this a generic extension rather than just part of Cilkplus, and (b) you'll need to agree with the x86_64 ABI mailing list an extension of the ABI document (as attached to <https://sourceware.org/glibc/wiki/libmvec>) to cover this attribute, and update the document there.
From the GCC side, I don't see a compelling reason to keep this attribute conditional on Cilk+ support. One could very easily want to use the math library's vector entry points independent of OpenMP or Cilk+.
I thought the ABI for this stuff was consistent across the implementations (that was certainly the goal). So aside from an example of how to use the attribute to get calls into the vector math library, I'm not sure what's needed. Essentially the attribute is just another way to ensure we exploit the vector library when possible.
It also seems to me that showing that example on the libmvec page would be advisable.
jeff
Index Nav: | [Date Index] [Subject Index] [Author Index] [Thread Index] | |
---|---|---|
Message Nav: | [Date Prev] [Date Next] | [Thread Prev] [Thread Next] |