Lines Matching refs:St

28 static Attr *handleFallThroughAttr(Sema &S, Stmt *St, const ParsedAttr &A,  in handleFallThroughAttr()  argument
31 if (isa<SwitchCase>(St)) { in handleFallThroughAttr()
33 << A << St->getBeginLoc(); in handleFallThroughAttr()
55 static Attr *handleSuppressAttr(Sema &S, Stmt *St, const ParsedAttr &A, in handleSuppressAttr() argument
78 static Attr *handleLoopHintAttr(Sema &S, Stmt *St, const ParsedAttr &A, in handleLoopHintAttr() argument
94 if (!isa<DoStmt, ForStmt, CXXForRangeStmt, WhileStmt>(St)) { in handleLoopHintAttr()
96 S.Diag(St->getBeginLoc(), diag::err_pragma_loop_precedes_nonloop) << Pragma; in handleLoopHintAttr()
153 if (ValueExpr && S.CheckLoopHintExpr(ValueExpr, St->getBeginLoc(), in handleLoopHintAttr()
164 if (S.CheckLoopHintExpr(ValueExpr, St->getBeginLoc(), in handleLoopHintAttr()
200 CallExprFinder(Sema &S, const Stmt *St) : Inherited(S.Context) { Visit(St); } in CallExprFinder() argument
211 void Visit(const Stmt *St) { in Visit() argument
212 if (!St) in Visit()
214 ConstEvaluatedExprVisitor<CallExprFinder>::Visit(St); in Visit()
219 static Attr *handleNoMergeAttr(Sema &S, Stmt *St, const ParsedAttr &A, in handleNoMergeAttr() argument
222 CallExprFinder CEF(S, St); in handleNoMergeAttr()
225 S.Diag(St->getBeginLoc(), diag::warn_attribute_ignored_no_calls_in_stmt) in handleNoMergeAttr()
286 static Attr *handleNoInlineAttr(Sema &S, Stmt *St, const ParsedAttr &A, in handleNoInlineAttr() argument
290 S.Diag(St->getBeginLoc(), diag::warn_function_attribute_ignored_in_stmt) in handleNoInlineAttr()
295 if (S.CheckNoInlineAttr(/*OrigSt=*/nullptr, St, A)) in handleNoInlineAttr()
301 static Attr *handleAlwaysInlineAttr(Sema &S, Stmt *St, const ParsedAttr &A, in handleAlwaysInlineAttr() argument
305 S.Diag(St->getBeginLoc(), diag::warn_function_attribute_ignored_in_stmt) in handleAlwaysInlineAttr()
310 if (S.CheckAlwaysInlineAttr(/*OrigSt=*/nullptr, St, A)) in handleAlwaysInlineAttr()
316 static Attr *handleCXXAssumeAttr(Sema &S, Stmt *St, const ParsedAttr &A, in handleCXXAssumeAttr() argument
318 ExprResult Res = S.ActOnCXXAssumeAttr(St, A, Range); in handleCXXAssumeAttr()
325 static Attr *handleMustTailAttr(Sema &S, Stmt *St, const ParsedAttr &A, in handleMustTailAttr() argument
331 static Attr *handleLikely(Sema &S, Stmt *St, const ParsedAttr &A, in handleLikely() argument
340 static Attr *handleUnlikely(Sema &S, Stmt *St, const ParsedAttr &A, in handleUnlikely() argument
376 static Attr *handleCodeAlignAttr(Sema &S, Stmt *St, const ParsedAttr &A) { in handleCodeAlignAttr() argument
423 static Attr *handleMSConstexprAttr(Sema &S, Stmt *St, const ParsedAttr &A, in handleMSConstexprAttr() argument
557 static Attr *handleOpenCLUnrollHint(Sema &S, Stmt *St, const ParsedAttr &A, in handleOpenCLUnrollHint() argument
588 static Attr *handleHLSLLoopHintAttr(Sema &S, Stmt *St, const ParsedAttr &A, in handleHLSLLoopHintAttr() argument
606 if (S.CheckLoopHintExpr(E, St->getBeginLoc(), in handleHLSLLoopHintAttr()
621 static Attr *ProcessStmtAttribute(Sema &S, Stmt *St, const ParsedAttr &A, in ProcessStmtAttribute() argument
643 if (S.checkCommonAttributeFeatures(St, A)) in ProcessStmtAttribute()
648 return handleAlwaysInlineAttr(S, St, A, Range); in ProcessStmtAttribute()
650 return handleCXXAssumeAttr(S, St, A, Range); in ProcessStmtAttribute()
652 return handleFallThroughAttr(S, St, A, Range); in ProcessStmtAttribute()
654 return handleLoopHintAttr(S, St, A, Range); in ProcessStmtAttribute()
656 return handleHLSLLoopHintAttr(S, St, A, Range); in ProcessStmtAttribute()
658 return handleOpenCLUnrollHint(S, St, A, Range); in ProcessStmtAttribute()
660 return handleSuppressAttr(S, St, A, Range); in ProcessStmtAttribute()
662 return handleNoMergeAttr(S, St, A, Range); in ProcessStmtAttribute()
664 return handleNoInlineAttr(S, St, A, Range); in ProcessStmtAttribute()
666 return handleMustTailAttr(S, St, A, Range); in ProcessStmtAttribute()
668 return handleLikely(S, St, A, Range); in ProcessStmtAttribute()
670 return handleUnlikely(S, St, A, Range); in ProcessStmtAttribute()
672 return handleCodeAlignAttr(S, St, A); in ProcessStmtAttribute()
674 return handleMSConstexprAttr(S, St, A, Range); in ProcessStmtAttribute()
680 << A << A.isRegularKeywordAttribute() << St->getBeginLoc(); in ProcessStmtAttribute()
701 ExprResult Sema::ActOnCXXAssumeAttr(Stmt *St, const ParsedAttr &A, in ActOnCXXAssumeAttr() argument