Hi, Recent changes to OpenMP conflicted with the original patch. Here is the updated patch.
Any comments are much appreciated! Tyler
0001-Use-CGLoopInfo-to-insert-loop-hints-to-fix-conflict-.patch
Description: Binary data
> On Jun 13, 2015, at 6:36 PM, Tyler Nowicki <tnowi...@apple.com> wrote: > > Hello, > > I noticed a problem with my implementation of #pragma clang loop > vectorize(assume_safety). When it was specified on a loop other loop hints > were lost. The problem is that CGLoopInfo attaches metadata a little bit > differently than EmitCondBrHints in CGStmt. For do-loops CGLoopInfo attaches > metadata to the br in the body block and for while and for loops, the inc > block. EmitCondBrHints on the other hand always attaches data to the br in > the cond block. When specifying assume_safety CGLoopInfo emits an empty > llvm.loop metadata shadowing the metadata in the cond block. Loop > transformations like rotate and unswitch would then eliminate the cond block. > > This patch unifies both approaches for adding metadata and modifies the > existing safety tests to include non-assume_safety loop hints. > > Thanks, > > Tyler > > > <0001-Use-CGLoopInfo-to-insert-loop-hints-to-fix-conflict-.patch>
_______________________________________________ cfe-commits mailing list cfe-commits@cs.uiuc.edu http://lists.cs.uiuc.edu/mailman/listinfo/cfe-commits