[PATCH] D47267: [UnrollAndJam] Add unroll_and_jam pragma handling

Dave Green via Phabricator via cfe-commits cfe-commits at lists.llvm.org
Wed May 23 11:33:58 PDT 2018

dmgreen added a comment.

> In my experience, they are used.

Good to know, cheers.

> Could we maybe disable the #pragma clang loop unroll_and_jam spelling ftm to avoid compatibility issues?

Sure, I'm not against. It sounds like you have opinions on how this should work. That's good. If there are multiple clang loop pragma's, what is the expected behaviour there?

In the llvm side of this, in the unroll and jam pass, I made it so that a loop with "llvm.loop.unroll" metadata without any "llvm.loop.unroll_and_jam" metadata will not do unroll and jam, it will leave the loop for the unroller. On the expectation that the use really wants to unroll (and it applies to llvm.loop.unroll.disable too, disabling unroll and jam as well as unroll). I haven't done anything with other loop metadata though.


More information about the cfe-commits mailing list