Add assume_safety option for pragma loop vectorize and interleave.
authorTyler Nowicki <tyler.nowicki@gmail.com>
Thu, 11 Jun 2015 23:23:17 +0000 (23:23 +0000)
committerTyler Nowicki <tyler.nowicki@gmail.com>
Thu, 11 Jun 2015 23:23:17 +0000 (23:23 +0000)
commit9d268e178ec8101fa2a483e6cfc6ddb42c567ce9
tree961172bda0c1243bf5909cf43c5f120ef7625de3
parentc974a9e50d3a5159ca6552a77eec8cc7491563d6
Add assume_safety option for pragma loop vectorize and interleave.

Specifying #pragma clang loop vectorize(assume_safety) on a loop adds the
mem.parallel_loop_access metadata to each load/store operation in the loop. This
metadata tells loop access analysis (LAA) to skip memory dependency checking.

llvm-svn: 239572
clang/include/clang/Basic/Attr.td
clang/include/clang/Basic/DiagnosticParseKinds.td
clang/lib/CodeGen/CGLoopInfo.cpp
clang/lib/CodeGen/CGLoopInfo.h
clang/lib/CodeGen/CGStmt.cpp
clang/lib/Parse/ParsePragma.cpp
clang/lib/Sema/SemaStmtAttr.cpp
clang/test/CodeGenCXX/pragma-loop-safety.cpp [new file with mode: 0644]
clang/test/Parser/pragma-loop-safety.cpp [new file with mode: 0644]
clang/test/Parser/pragma-loop.cpp