On Wed, 21 May 2014, Graham Stott wrote: > msa.h is included, which will be installed when configured/built/installed. > It provides prototypes, typedefs etc for the vector types used MSA its > contents follow the MSA whitepaper.
Unless it's part of the defined interface that the user may not have macros called "vector_size", "aligned", "a", "b" and "c", you should use the __*__ attribute names, and __a etc. parameter names, to be namespace-clean. You shouldn't need to declare __builtin_* functions anyway. And if a function can be represented directly with GNU C vector extensions, it's preferred to implement it that way inline in the header rather than having built-in functions duplicating existing GNU C functionality. (Look at what AArch64 arm_neon.h does where possible, and what ARM arm_neon.h has been moved towards lately. I don't now what the msa.h functions do, so I don't know if this actually applies to any of them - but it's something to consider, so that built-in functions are only defined where actually needed.) Use appropriate @dots{} and @minus{} markup in the documentation. -- Joseph S. Myers jos...@codesourcery.com