[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

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

-------------- 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