[cfe-dev] Adding a new pragma to Clang

Renato Golin renato.golin at linaro.org
Wed Jan 8 07:06:17 PST 2014


On 8 January 2014 14:18, Hal Finkel <hfinkel at anl.gov> wrote:

> For unrolling, I'm specifically against tying the syntax in any way to the
> vectorizer. The vectorizer can unroll without vectorizing, and that's an
> implementation detail. We also have a generic (concatenation) unroller, and
> that should also be controlled by the same syntax. I propose that, for
> unrolling we accept something like this:
>

This is a good point.


#pragma nounroll[(interleave/concatenate/all)] -- all is the default
> #pragma unroll[(n[, interleave/concatenate/any])] -- any is the default
>

But this is getting *seriously* out of my area of expertise... ;)

I agree with Arnold that any generic alternative will be too complex for
current purposes, but I also agree with the front-end crowd that we should
do it right for one. Given my lack of experience with parsers and utter
ignorance in Clang, I'd rather defer that implementation to someone more
knowledgeable.

I like the idea of using C++11 attributes, but this could be complimentary,
not replace the pragmas, as Hal pointed out.

cheers,
--renato
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.llvm.org/pipermail/cfe-dev/attachments/20140108/c80e712d/attachment.html>


More information about the cfe-dev mailing list