[PATCH] D69091: [Sema] #pragma clang transform

Michael Kruse via Phabricator via cfe-commits cfe-commits at lists.llvm.org
Thu Oct 17 00:30:20 PDT 2019


Meinersbur created this revision.
Meinersbur added reviewers: hfinkel, kbarton, SjoerdMeijer, aaron.ballman, ABataev, fhahn, hsaito, hans, greened, dmgreen, reames, Ayal, asavonic, rtrieu, dorit, rsmith, tyler.nowicki.
Herald added a subscriber: zzheng.
Herald added a reviewer: jdoerfert.
Herald added a project: clang.

Add the AST node kinds: the Stmt representing the #pragma, the clauses and Transform. The latter represents the semantic analysis result similar to an ImplicitCast. Moreover, the AnalysisTransform component constructs a loop nest tree to which transformations are applied to such that Sema can warn about inconsistencies, e.g. there is no inner or ambiguous loops for unrollandjam.

For a full description, see D69088 <https://reviews.llvm.org/D69088>.


Repository:
  rC Clang

https://reviews.llvm.org/D69091

Files:
  include/clang/AST/ASTNodeTraverser.h
  include/clang/AST/ASTTypeTraits.h
  include/clang/AST/JSONNodeDumper.h
  include/clang/AST/RecursiveASTVisitor.h
  include/clang/AST/StmtTransform.h
  include/clang/AST/TextNodeDumper.h
  include/clang/AST/Transform.h
  include/clang/Analysis/AnalysisTransform.h
  include/clang/Basic/DiagnosticSemaKinds.td
  include/clang/Basic/StmtNodes.td
  include/clang/Sema/Sema.h
  include/clang/Sema/SemaTransform.h
  lib/AST/ASTTypeTraits.cpp
  lib/AST/JSONNodeDumper.cpp
  lib/AST/StmtPrinter.cpp
  lib/AST/StmtProfile.cpp
  lib/AST/StmtTransform.cpp
  lib/AST/TextNodeDumper.cpp
  lib/AST/Transform.cpp
  lib/CodeGen/CGStmt.cpp
  lib/Sema/SemaDecl.cpp
  lib/Sema/SemaTransform.cpp
  lib/Sema/TreeTransform.h
  lib/Serialization/ASTReaderStmt.cpp
  lib/Serialization/ASTWriterStmt.cpp
  test/AST/ast-dump-transform-unroll.c
  test/AST/ast-print-pragma-transform-distribute.cpp
  test/AST/ast-print-pragma-transform-interleave.cpp
  test/AST/ast-print-pragma-transform-unroll.cpp
  test/AST/ast-print-pragma-transform-unrollandjam.cpp
  test/AST/ast-print-pragma-transform-vectorize.cpp
  test/SemaCXX/pragma-transform-interleave.cpp
  test/SemaCXX/pragma-transform-unroll.cpp
  test/SemaCXX/pragma-transform-unrollandjam.cpp
  test/SemaCXX/pragma-transform-vectorize.cpp
  test/SemaCXX/pragma-transform-wrongorder.cpp
  tools/libclang/CXCursor.cpp

-------------- next part --------------
A non-text attachment was scrubbed...
Name: D69091.225362.patch
Type: text/x-patch
Size: 119236 bytes
Desc: not available
URL: <http://lists.llvm.org/pipermail/cfe-commits/attachments/20191017/5f1fdd33/attachment-0001.bin>


More information about the cfe-commits mailing list