Hi Mark,

That change sounds good! I was looking for a way to clean up that function. 
Glad you figured out a nice way of doing it.

LGTM

Tyler


On Jun 10, 2014, at 11:54 AM, Mark Heffernan <[email protected]> wrote:

> Hi TylerNowicki, eliben, aaron.ballman, rsmith,
> 
> Piggy-backing on the support for "#pragma clang loop vectorize..." which was 
> added recently by Tyler.  This patch adds support for loop unrolling pragmas. 
>  The pragmas must immediately precede a loop statement and take the following 
> forms:
> 
> #pragma clang loop unroll(enable)  // unroll the loop completely
> #pragma clang loop unroll(disable)  // do not unroll the loop.
> #pragma clang loop unroll_count(N)  // unroll the loop N times
> 
> if both unroll(enable) and unroll_count(N) are specified then the 
> unroll_count takes precedence (ie, unroll the loop N times).
> 
> Tyler, I changed the logic a bit in CheckForIncompatibleAttributes, 
> specifically it now rejects any combination of the disable form of the pragma 
> and the numeric form (eg, vectorize(disable) and vectorize_width(N)).  As a 
> special case, it previously allowed this combination if the numeric value is 
> 1.  The logic seems cleaner without that special case.  Lemme know if that's 
> reasonable.
> 
> I'll be sending out a LLVM patch which consumes the generated metadata right 
> after this.
> 
> http://reviews.llvm.org/D4089
> 
> Files:
>  include/clang/Basic/Attr.td
>  include/clang/Basic/DiagnosticParseKinds.td
>  lib/CodeGen/CGStmt.cpp
>  lib/Parse/ParsePragma.cpp
>  lib/Sema/SemaStmtAttr.cpp
>  test/CodeGen/pragma-loop.cpp
>  test/PCH/pragma-loop.cpp
>  test/Parser/pragma-loop.cpp
> <D4089.10288.patch>

_______________________________________________
cfe-commits mailing list
[email protected]
http://lists.cs.uiuc.edu/mailman/listinfo/cfe-commits

Reply via email to