/frameworks/compile/slang/ |
H A D | slang_rs_object_ref_count.h | 23 #include "clang/AST/StmtVisitor.h" 28 namespace clang { namespace 36 bool HasRSObjectType(const clang::Type *T); 48 class RSObjectRefCount : public clang::StmtVisitor<RSObjectRefCount> { 52 clang::CompoundStmt *mCS; // Associated compound statement ({ ... }) 53 clang::Stmt *mCurrent; // The statement currently being analyzed 54 std::list<clang::VarDecl*> mRSO; // Declared RS objects in this scope (but 58 explicit Scope(clang::CompoundStmt *CS) : mCS(CS) { 63 inline void addRSObject(clang::VarDecl* VD) { 67 void ReplaceRSObjectAssignment(clang [all...] |
H A D | slang_rs_ast_replace.h | 20 #include "clang/AST/StmtVisitor.h" 23 #include "clang/AST/ASTContext.h" 25 namespace clang { namespace 33 class RSASTReplace : public clang::StmtVisitor<RSASTReplace> { 35 const clang::ASTContext &C; 36 clang::Stmt *mOuterStmt; 37 clang::Stmt *mOldStmt; 38 clang::Stmt *mNewStmt; 39 clang::Expr *mOldExpr; 40 clang [all...] |
H A D | slang_rs_foreach_lowering.cpp | 19 #include "clang/AST/ASTContext.h" 20 #include "clang/AST/Attr.h" 45 const clang::FunctionDecl* RSForEachLowering::matchFunctionDesignator( 46 clang::Expr* expr) { 47 clang::ImplicitCastExpr* ToVoidPtr = 48 clang::dyn_cast<clang::ImplicitCastExpr>(expr); 53 clang::ImplicitCastExpr* Decay = 54 clang::dyn_cast<clang [all...] |
H A D | slang_rs_foreach_lowering.h | 20 #include "clang/AST/StmtVisitor.h" 22 namespace clang { namespace 33 class RSForEachLowering : public clang::StmtVisitor<RSForEachLowering> { 42 void handleForEachCalls(clang::FunctionDecl* FD, unsigned int targetAPI); 44 void VisitCallExpr(clang::CallExpr *CE); 45 void VisitStmt(clang::Stmt *S); 49 clang::ASTContext& mASTCtxt; 55 const clang::FunctionDecl* matchFunctionDesignator(clang::Expr* expr); 56 const clang [all...] |
H A D | slang_rs_check_ast.h | 22 #include "clang/AST/ASTContext.h" 23 #include "clang/AST/StmtVisitor.h" 30 class RSCheckAST : public clang::StmtVisitor<RSCheckAST> { 33 clang::ASTContext &C; 34 clang::SourceManager &mSM; 46 void WarnOnSetElementAt(clang::CallExpr*); 60 void VisitStmt(clang::Stmt *S); 62 void VisitCallExpr(clang::CallExpr *CE); 64 void VisitCastExpr(clang::CastExpr *CE); 66 void VisitExpr(clang [all...] |
H A D | slang_rs_pragma_handler.h | 22 #include "clang/Lex/Pragma.h" 24 namespace clang { namespace 34 class RSPragmaHandler : public clang::PragmaHandler { 39 : clang::PragmaHandler(Name), 47 virtual void handleInt(clang::Preprocessor &PP, clang::Token &Tok, 51 void handleItemListPragma(clang::Preprocessor &PP, 52 clang::Token &FirstToken); 55 void handleNonParamPragma(clang::Preprocessor &PP, 56 clang [all...] |
H A D | slang_rs_object_ref_count.cpp | 21 #include "clang/AST/DeclGroup.h" 22 #include "clang/AST/Expr.h" 23 #include "clang/AST/NestedNameSpecifier.h" 24 #include "clang/AST/OperationKinds.h" 25 #include "clang/AST/Stmt.h" 26 #include "clang/AST/StmtVisitor.h" 38 clang::FunctionDecl * 40 clang::FunctionDecl * 43 void RSObjectRefCount::GetRSRefCountingFunctions(clang::ASTContext &C) { 49 clang [all...] |
H A D | slang_rs_check_ast.cpp | 17 #include "clang/AST/Attr.h" 29 void RSCheckAST::VisitStmt(clang::Stmt *S) { 33 for (clang::Stmt::child_iterator I = S->child_begin(), E = S->child_end(); 36 if (clang::Stmt *Child = *I) { 42 void RSCheckAST::WarnOnSetElementAt(clang::CallExpr *E) { 43 clang::FunctionDecl *Decl; 44 Decl = clang::dyn_cast_or_null<clang::FunctionDecl>(E->getCalleeDecl()); 50 clang::Expr *Expr; 51 clang [all...] |
H A D | slang_diagnostic_buffer.cpp | 19 #include "clang/Basic/SourceLocation.h" 20 #include "clang/Basic/SourceManager.h" 36 clang::DiagnosticsEngine::Level DiagLevel, 37 clang::Diagnostic const &Info) { 38 clang::SourceLocation const &SrcLoc = Info.getLocation(); 49 case clang::DiagnosticsEngine::Note: { 53 case clang::DiagnosticsEngine::Warning: { 57 case clang::DiagnosticsEngine::Error: { 61 case clang::DiagnosticsEngine::Fatal: {
|
H A D | slang_rs_context.cpp | 21 #include "clang/AST/ASTContext.h" 22 #include "clang/AST/Attr.h" 23 #include "clang/AST/Decl.h" 24 #include "clang/AST/DeclBase.h" 25 #include "clang/AST/Mangle.h" 26 #include "clang/AST/Type.h" 28 #include "clang/Basic/Linkage.h" 29 #include "clang/Basic/TargetInfo.h" 49 RSContext::RSContext(clang::Preprocessor &PP, 50 clang [all...] |
H A D | slang.h | 35 #include "clang/Basic/LangOptions.h" 36 #include "clang/Basic/TargetOptions.h" 37 #include "clang/Frontend/CodeGenOptions.h" 38 #include "clang/Lex/ModuleLoader.h" 51 namespace clang { namespace 67 } // namespace clang 75 class Slang : public clang::ModuleLoader { 90 clang::LangOptions LangOpts; 92 clang::CodeGenOptions CodeGenOpts; 98 clang [all...] |
H A D | slang_rs_ast_replace.cpp | 26 clang::Stmt *OuterStmt, 27 clang::Stmt *OldStmt, 28 clang::Stmt *NewStmt) { 35 mOldExpr = llvm::dyn_cast<clang::Expr>(OldStmt); 37 mNewExpr = llvm::dyn_cast<clang::Expr>(NewStmt); 42 void RSASTReplace::ReplaceInCompoundStmt(clang::CompoundStmt *CS) { 43 clang::Stmt **UpdatedStmtList = new clang::Stmt*[CS->size()]; 46 clang::CompoundStmt::body_iterator bI = CS->body_begin(); 47 clang [all...] |
H A D | slang_rs_context.h | 28 #include "clang/Lex/Preprocessor.h" 29 #include "clang/AST/Mangle.h" 41 namespace clang { namespace 50 } // namespace clang 79 clang::Preprocessor &mPP; 80 clang::ASTContext &mCtx; 103 std::unique_ptr<clang::MangleContext> mMangleCtx; 107 bool processExportVar(const clang::VarDecl *VD); 108 bool processExportFunc(const clang::FunctionDecl *FD); 111 int getForEachSlotNumber(const clang [all...] |
H A D | slang_rs_pragma_handler.cpp | 23 #include "clang/AST/ASTContext.h" 25 #include "clang/Basic/TokenKinds.h" 27 #include "clang/Lex/LiteralSupport.h" 28 #include "clang/Lex/Preprocessor.h" 29 #include "clang/Lex/Token.h" 51 void HandlePragma(clang::Preprocessor &PP, 52 clang::PragmaIntroducerKind Introducer, 53 clang::Token &FirstToken) { 63 void HandlePragma(clang::Preprocessor &PP, 64 clang [all...] |
H A D | slang_rs_export_foreach.h | 24 #include "clang/AST/Decl.h" 31 namespace clang { namespace 33 } // namespace clang 42 typedef llvm::SmallVectorImpl<const clang::ParmVarDecl*> InVec; 57 llvm::SmallVector<const clang::ParmVarDecl*, 16> mIns; 58 const clang::ParmVarDecl *mOut; 59 const clang::ParmVarDecl *mUsrData; 64 clang::QualType mResultType; // return type (if present). 76 mResultType(clang::QualType()), mHasReturnType(false), 81 const clang [all...] |
H A D | slang_backend.h | 20 #include "clang/AST/ASTConsumer.h" 40 namespace clang { namespace 59 class Backend : public clang::ASTConsumer { 61 const clang::TargetOptions &mTargetOpts; 70 clang::CodeGenerator *mGen; 89 clang::SourceManager &mSourceMgr; 111 void AnnotateFunction(clang::FunctionDecl *FD); 124 void LowerRSForEachCall(clang::FunctionDecl* FD, bool isKernel); 128 clang::DiagnosticsEngine &mDiagEngine; 129 const clang [all...] |
H A D | slang_rs_special_func.cpp | 19 #include "clang/AST/ASTContext.h" 20 #include "clang/AST/Attr.h" 28 const clang::FunctionDecl *FD) { 29 if (FD->hasAttr<clang::KernelAttr>()) { 44 const clang::QualType &IntType = FD->getASTContext().IntTy; 56 clang::FunctionDecl const *FD) { 59 const clang::ASTContext &C = FD->getASTContext(); 60 const clang::QualType &IntType = FD->getASTContext().IntTy; 65 const clang::ParmVarDecl *PVD = FD->getParamDecl(0); 66 clang [all...] |
H A D | slang_rs_export_var.h | 22 #include "clang/AST/Decl.h" 23 #include "clang/AST/Expr.h" 42 clang::Expr::EvalResult mInit; 46 llvm::SmallVector<clang::Expr::EvalResult, 0> mInitArray; 49 const clang::VarDecl *VD, 58 inline const clang::APValue &getInit() const { return mInit.Val; } 62 inline const clang::APValue &getInitArray(unsigned int i) const {
|
H A D | slang_rs_special_func.h | 22 #include "clang/AST/Decl.h" 30 inline bool isInitRSFunc(const clang::FunctionDecl *FD) { 39 inline bool isDtorRSFunc(const clang::FunctionDecl *FD) { 49 const clang::FunctionDecl *FD); 52 const clang::FunctionDecl *FD) { 59 const clang::FunctionDecl *FD);
|
H A D | slang_rs_export_type.cpp | 22 #include "clang/AST/ASTContext.h" 23 #include "clang/AST/Attr.h" 24 #include "clang/AST/RecordLayout.h" 104 clang::BuiltinType::Kind builtinTypeKind; 114 {clang::BuiltinType::Bool, DataTypeBoolean, 116 {clang::BuiltinType::Char_U, DataTypeUnsigned8, 118 {clang::BuiltinType::UChar, DataTypeUnsigned8, 120 {clang::BuiltinType::Char16, DataTypeSigned16, 122 {clang::BuiltinType::Char32, DataTypeSigned32, 124 {clang 208 ConstantArrayTypeExportableHelper( const clang::ConstantArrayType *CAT, llvm::SmallPtrSet<const clang::Type*, 8>& SPS, slang::RSContext *Context, const clang::VarDecl *VD, const clang::RecordDecl *TopLevelRecord, ExportKind EK) argument 481 ValidateTypeHelper( slang::RSContext *Context, clang::ASTContext &C, const clang::Type *&T, const clang::NamedDecl *ND, clang::SourceLocation Loc, llvm::SmallPtrSet<const clang::Type*, 8>& SPS, bool InCompositeType, clang::RecordDecl *UnionDecl, unsigned int TargetAPI, bool IsFilterscript, bool IsExtern) argument [all...] |
H A D | slang_diagnostic_buffer.h | 23 #include "clang/Basic/Diagnostic.h" 34 class DiagnosticBuffer : public clang::DiagnosticConsumer { 47 virtual void HandleDiagnostic(clang::DiagnosticsEngine::Level DiagLevel, 48 const clang::Diagnostic &Info) override;
|
H A D | slang_rs_export_element.h | 22 #include "clang/Lex/Token.h" 29 namespace clang { namespace 32 } // namespace clang 58 const clang::Type *T, 67 const clang::DeclaratorDecl *DD);
|
H A D | slang_rs_export_func.cpp | 21 #include "clang/AST/ASTContext.h" 22 #include "clang/AST/Decl.h" 36 const clang::FunctionDecl *FD) { 38 const clang::ASTContext &C = FD->getASTContext(); 51 const clang::FunctionDecl *FD) { 67 clang::ASTContext &Ctx = Context->getASTContext(); 71 clang::RecordDecl *RD = 72 clang::RecordDecl::Create(Ctx, clang::TTK_Struct, 74 clang [all...] |
H A D | slang_rs_export_var.cpp | 19 #include "clang/AST/ASTContext.h" 20 #include "clang/AST/Type.h" 30 const clang::VarDecl *VD, 40 const clang::Expr *Initializer = VD->getAnyInitializer(); 50 clang::Expr::NPC_ValueDependentIsNotNull)) { 51 mInit.Val = clang::APValue(llvm::APSInt(1)); 61 const clang::InitListExpr *IList = 62 static_cast<const clang::InitListExpr*>(Initializer); 73 clang::Expr::EvalResult tempInit; 98 clang [all...] |
H A D | slang_rs_export_element.cpp | 19 #include "clang/AST/Decl.h" 20 #include "clang/AST/Type.h" 22 #include "clang/Basic/SourceLocation.h" 23 #include "clang/Basic/IdentifierTable.h" 72 const clang::Type *T, 89 case clang::Type::Builtin: 90 case clang::Type::Pointer: { 103 case clang::Type::ExtVector: { 108 static_cast<const clang::ExtVectorType*>( 132 const clang [all...] |