|
reference, declaration → definition
definition → references, declarations, derived classes, virtual overrides
reference to multiple definitions → definitions
unreferenced
|
References
gen/tools/clang/include/clang/AST/AttrImpl.inc 4503 LoopHintAttr *LoopHintAttr::clone(ASTContext &C) const {
4504 auto *A = new (C) LoopHintAttr(C, *this, option, state, value);
4504 auto *A = new (C) LoopHintAttr(C, *this, option, state, value);
11716 return cast<LoopHintAttr>(this)->getSpelling();
12296 return cast<LoopHintAttr>(this)->clone(C);
12876 return cast<LoopHintAttr>(this)->printPretty(OS, Policy);
gen/tools/clang/include/clang/AST/AttrNodeTraverse.inc 95 void VisitLoopHintAttr(const LoopHintAttr *A) {
96 const auto *SA = cast<LoopHintAttr>(A); (void)SA;
96 const auto *SA = cast<LoopHintAttr>(A); (void)SA;
gen/tools/clang/include/clang/AST/AttrTextNodeDump.inc 269 void VisitLoopHintAttr(const LoopHintAttr *A) {
270 const auto *SA = cast<LoopHintAttr>(A); (void)SA;
270 const auto *SA = cast<LoopHintAttr>(A); (void)SA;
273 case LoopHintAttr::Vectorize:
276 case LoopHintAttr::VectorizeWidth:
279 case LoopHintAttr::Interleave:
282 case LoopHintAttr::InterleaveCount:
285 case LoopHintAttr::Unroll:
288 case LoopHintAttr::UnrollCount:
291 case LoopHintAttr::UnrollAndJam:
294 case LoopHintAttr::UnrollAndJamCount:
297 case LoopHintAttr::PipelineDisabled:
300 case LoopHintAttr::PipelineInitiationInterval:
303 case LoopHintAttr::Distribute:
306 case LoopHintAttr::VectorizePredicate:
311 case LoopHintAttr::Enable:
314 case LoopHintAttr::Disable:
317 case LoopHintAttr::Numeric:
320 case LoopHintAttr::AssumeSafety:
323 case LoopHintAttr::Full:
gen/tools/clang/include/clang/AST/AttrVisitor.inc 451 bool TraverseLoopHintAttr(LoopHintAttr *A);
452 bool VisitLoopHintAttr(LoopHintAttr *A) {
2255 bool VISITORCLASS<Derived>::TraverseLoopHintAttr(LoopHintAttr *A) {
4176 return getDerived().TraverseLoopHintAttr(cast<LoopHintAttr>(A));
gen/tools/clang/include/clang/AST/Attrs.inc 6044 static LoopHintAttr *CreateImplicit(ASTContext &Ctx, OptionType Option, LoopHintState State, Expr * Value, const AttributeCommonInfo &CommonInfo = {SourceRange{}}) {
6045 auto *A = new (Ctx) LoopHintAttr(Ctx, CommonInfo, Option, State, Value);
6045 auto *A = new (Ctx) LoopHintAttr(Ctx, CommonInfo, Option, State, Value);
6052 static LoopHintAttr *Create(ASTContext &Ctx, OptionType Option, LoopHintState State, Expr * Value, const AttributeCommonInfo &CommonInfo = {SourceRange{}}) {
6053 auto *A = new (Ctx) LoopHintAttr(Ctx, CommonInfo, Option, State, Value);
6053 auto *A = new (Ctx) LoopHintAttr(Ctx, CommonInfo, Option, State, Value);
6057 static LoopHintAttr *CreateImplicit(ASTContext &Ctx, OptionType Option, LoopHintState State, Expr * Value, SourceRange Range, AttributeCommonInfo::Syntax Syntax, LoopHintAttr::Spelling S = static_cast<Spelling>(SpellingNotCalculated)) {
6057 static LoopHintAttr *CreateImplicit(ASTContext &Ctx, OptionType Option, LoopHintState State, Expr * Value, SourceRange Range, AttributeCommonInfo::Syntax Syntax, LoopHintAttr::Spelling S = static_cast<Spelling>(SpellingNotCalculated)) {
6061 static LoopHintAttr *Create(ASTContext &Ctx, OptionType Option, LoopHintState State, Expr * Value, SourceRange Range, AttributeCommonInfo::Syntax Syntax, LoopHintAttr::Spelling S = static_cast<Spelling>(SpellingNotCalculated)) {
6061 static LoopHintAttr *Create(ASTContext &Ctx, OptionType Option, LoopHintState State, Expr * Value, SourceRange Range, AttributeCommonInfo::Syntax Syntax, LoopHintAttr::Spelling S = static_cast<Spelling>(SpellingNotCalculated)) {
6077 LoopHintAttr *clone(ASTContext &C) const;
6097 .Case("vectorize", LoopHintAttr::Vectorize)
6098 .Case("vectorize_width", LoopHintAttr::VectorizeWidth)
6099 .Case("interleave", LoopHintAttr::Interleave)
6100 .Case("interleave_count", LoopHintAttr::InterleaveCount)
6101 .Case("unroll", LoopHintAttr::Unroll)
6102 .Case("unroll_count", LoopHintAttr::UnrollCount)
6103 .Case("unroll_and_jam", LoopHintAttr::UnrollAndJam)
6104 .Case("unroll_and_jam_count", LoopHintAttr::UnrollAndJamCount)
6105 .Case("pipeline", LoopHintAttr::PipelineDisabled)
6106 .Case("pipeline_initiation_interval", LoopHintAttr::PipelineInitiationInterval)
6107 .Case("distribute", LoopHintAttr::Distribute)
6108 .Case("vectorize_predicate", LoopHintAttr::VectorizePredicate)
6119 case LoopHintAttr::Vectorize: return "vectorize";
6120 case LoopHintAttr::VectorizeWidth: return "vectorize_width";
6121 case LoopHintAttr::Interleave: return "interleave";
6122 case LoopHintAttr::InterleaveCount: return "interleave_count";
6123 case LoopHintAttr::Unroll: return "unroll";
6124 case LoopHintAttr::UnrollCount: return "unroll_count";
6125 case LoopHintAttr::UnrollAndJam: return "unroll_and_jam";
6126 case LoopHintAttr::UnrollAndJamCount: return "unroll_and_jam_count";
6127 case LoopHintAttr::PipelineDisabled: return "pipeline";
6128 case LoopHintAttr::PipelineInitiationInterval: return "pipeline_initiation_interval";
6129 case LoopHintAttr::Distribute: return "distribute";
6130 case LoopHintAttr::VectorizePredicate: return "vectorize_predicate";
6140 .Case("enable", LoopHintAttr::Enable)
6141 .Case("disable", LoopHintAttr::Disable)
6142 .Case("numeric", LoopHintAttr::Numeric)
6143 .Case("assume_safety", LoopHintAttr::AssumeSafety)
6144 .Case("full", LoopHintAttr::Full)
6155 case LoopHintAttr::Enable: return "enable";
6156 case LoopHintAttr::Disable: return "disable";
6157 case LoopHintAttr::Numeric: return "numeric";
6158 case LoopHintAttr::AssumeSafety: return "assume_safety";
6159 case LoopHintAttr::Full: return "full";
gen/tools/clang/include/clang/Sema/AttrTemplateInstantiate.inc 574 const auto *A = cast<LoopHintAttr>(At);
574 const auto *A = cast<LoopHintAttr>(At);
gen/tools/clang/include/clang/Serialization/AttrPCHRead.inc 1019 LoopHintAttr::OptionType option(static_cast<LoopHintAttr::OptionType>(Record.readInt()));
1020 LoopHintAttr::LoopHintState state(static_cast<LoopHintAttr::LoopHintState>(Record.readInt()));
1022 New = new (Context) LoopHintAttr(Context, Info, option, state, value);
gen/tools/clang/include/clang/Serialization/AttrPCHWrite.inc 773 const auto *SA = cast<LoopHintAttr>(A);
773 const auto *SA = cast<LoopHintAttr>(A);
include/llvm/ADT/STLExtras.h 75 typename std::add_pointer<typename std::add_const<T>::type>::type;
include/llvm/Support/Casting.h 58 return To::classof(&Val);
66 static inline bool doit(const From &) { return true; }
104 static inline bool doit(const From *Val) {
106 return isa_impl<To, From>::doit(*Val);
106 return isa_impl<To, From>::doit(*Val);
122 return isa_impl_wrap<To, SimpleFrom,
132 return isa_impl_cl<To,FromTy>::doit(Val);
142 return isa_impl_wrap<X, const Y,
172 using ret_type = To *; // Pointer arg case, return Ty*
176 using ret_type = const To *; // Constant pointer arg case, return const Ty*
198 using ret_type = typename cast_retty<To, SimpleFrom>::ret_type;
204 using ret_type = typename cast_retty_impl<To,FromTy>::ret_type;
210 To, From, typename simplify_type<From>::SimpleType>::ret_type;
227 static typename cast_retty<To, FromTy>::ret_type doit(const FromTy &Val) {
228 typename cast_retty<To, FromTy>::ret_type Res2
256 inline typename cast_retty<X, Y>::ret_type cast(Y &Val) {
263 inline typename cast_retty<X, Y *>::ret_type cast(Y *Val) {
265 return cast_convert_val<X, Y*,
337 LLVM_NODISCARD inline typename cast_retty<X, Y>::ret_type dyn_cast(Y &Val) {
342 LLVM_NODISCARD inline typename cast_retty<X, Y *>::ret_type dyn_cast(Y *Val) {
343 return isa<X>(Val) ? cast<X>(Val) : nullptr;
343 return isa<X>(Val) ? cast<X>(Val) : nullptr;
tools/clang/lib/CodeGen/Address.h 108 template <class U> inline U cast(CodeGen::Address addr) {
tools/clang/lib/CodeGen/CGLoopInfo.cpp 580 const LoopHintAttr *LH = dyn_cast<LoopHintAttr>(Attr);
580 const LoopHintAttr *LH = dyn_cast<LoopHintAttr>(Attr);
589 LoopHintAttr::OptionType Option = LoopHintAttr::Unroll;
589 LoopHintAttr::OptionType Option = LoopHintAttr::Unroll;
590 LoopHintAttr::LoopHintState State = LoopHintAttr::Disable;
590 LoopHintAttr::LoopHintState State = LoopHintAttr::Disable;
601 State = LoopHintAttr::Enable;
603 Option = LoopHintAttr::UnrollCount;
604 State = LoopHintAttr::Numeric;
617 case LoopHintAttr::Disable:
619 case LoopHintAttr::Vectorize:
623 case LoopHintAttr::Interleave:
627 case LoopHintAttr::Unroll:
630 case LoopHintAttr::UnrollAndJam:
633 case LoopHintAttr::VectorizePredicate:
636 case LoopHintAttr::Distribute:
639 case LoopHintAttr::PipelineDisabled:
642 case LoopHintAttr::UnrollCount:
643 case LoopHintAttr::UnrollAndJamCount:
644 case LoopHintAttr::VectorizeWidth:
645 case LoopHintAttr::InterleaveCount:
646 case LoopHintAttr::PipelineInitiationInterval:
651 case LoopHintAttr::Enable:
653 case LoopHintAttr::Vectorize:
654 case LoopHintAttr::Interleave:
657 case LoopHintAttr::Unroll:
660 case LoopHintAttr::UnrollAndJam:
663 case LoopHintAttr::VectorizePredicate:
666 case LoopHintAttr::Distribute:
669 case LoopHintAttr::UnrollCount:
670 case LoopHintAttr::UnrollAndJamCount:
671 case LoopHintAttr::VectorizeWidth:
672 case LoopHintAttr::InterleaveCount:
673 case LoopHintAttr::PipelineDisabled:
674 case LoopHintAttr::PipelineInitiationInterval:
679 case LoopHintAttr::AssumeSafety:
681 case LoopHintAttr::Vectorize:
682 case LoopHintAttr::Interleave:
687 case LoopHintAttr::Unroll:
688 case LoopHintAttr::UnrollAndJam:
689 case LoopHintAttr::VectorizePredicate:
690 case LoopHintAttr::UnrollCount:
691 case LoopHintAttr::UnrollAndJamCount:
692 case LoopHintAttr::VectorizeWidth:
693 case LoopHintAttr::InterleaveCount:
694 case LoopHintAttr::Distribute:
695 case LoopHintAttr::PipelineDisabled:
696 case LoopHintAttr::PipelineInitiationInterval:
701 case LoopHintAttr::Full:
703 case LoopHintAttr::Unroll:
706 case LoopHintAttr::UnrollAndJam:
709 case LoopHintAttr::Vectorize:
710 case LoopHintAttr::Interleave:
711 case LoopHintAttr::UnrollCount:
712 case LoopHintAttr::UnrollAndJamCount:
713 case LoopHintAttr::VectorizeWidth:
714 case LoopHintAttr::InterleaveCount:
715 case LoopHintAttr::Distribute:
716 case LoopHintAttr::PipelineDisabled:
717 case LoopHintAttr::PipelineInitiationInterval:
718 case LoopHintAttr::VectorizePredicate:
723 case LoopHintAttr::Numeric:
725 case LoopHintAttr::VectorizeWidth:
728 case LoopHintAttr::InterleaveCount:
731 case LoopHintAttr::UnrollCount:
734 case LoopHintAttr::UnrollAndJamCount:
737 case LoopHintAttr::PipelineInitiationInterval:
740 case LoopHintAttr::Unroll:
741 case LoopHintAttr::UnrollAndJam:
742 case LoopHintAttr::VectorizePredicate:
743 case LoopHintAttr::Vectorize:
744 case LoopHintAttr::Interleave:
745 case LoopHintAttr::Distribute:
746 case LoopHintAttr::PipelineDisabled:
tools/clang/lib/Sema/SemaStmtAttr.cpp 98 LoopHintAttr::OptionType Option;
99 LoopHintAttr::LoopHintState State;
108 SetHints(LoopHintAttr::Unroll, LoopHintAttr::Disable);
108 SetHints(LoopHintAttr::Unroll, LoopHintAttr::Disable);
112 SetHints(LoopHintAttr::UnrollCount, LoopHintAttr::Numeric);
112 SetHints(LoopHintAttr::UnrollCount, LoopHintAttr::Numeric);
114 SetHints(LoopHintAttr::Unroll, LoopHintAttr::Enable);
114 SetHints(LoopHintAttr::Unroll, LoopHintAttr::Enable);
116 SetHints(LoopHintAttr::UnrollAndJam, LoopHintAttr::Disable);
116 SetHints(LoopHintAttr::UnrollAndJam, LoopHintAttr::Disable);
120 SetHints(LoopHintAttr::UnrollAndJamCount, LoopHintAttr::Numeric);
120 SetHints(LoopHintAttr::UnrollAndJamCount, LoopHintAttr::Numeric);
122 SetHints(LoopHintAttr::UnrollAndJam, LoopHintAttr::Enable);
122 SetHints(LoopHintAttr::UnrollAndJam, LoopHintAttr::Enable);
129 .Case("vectorize", LoopHintAttr::Vectorize)
130 .Case("vectorize_width", LoopHintAttr::VectorizeWidth)
131 .Case("interleave", LoopHintAttr::Interleave)
132 .Case("vectorize_predicate", LoopHintAttr::VectorizePredicate)
133 .Case("interleave_count", LoopHintAttr::InterleaveCount)
134 .Case("unroll", LoopHintAttr::Unroll)
135 .Case("unroll_count", LoopHintAttr::UnrollCount)
136 .Case("pipeline", LoopHintAttr::PipelineDisabled)
138 LoopHintAttr::PipelineInitiationInterval)
139 .Case("distribute", LoopHintAttr::Distribute)
140 .Default(LoopHintAttr::Vectorize);
141 if (Option == LoopHintAttr::VectorizeWidth ||
142 Option == LoopHintAttr::InterleaveCount ||
143 Option == LoopHintAttr::UnrollCount ||
144 Option == LoopHintAttr::PipelineInitiationInterval) {
148 State = LoopHintAttr::Numeric;
149 } else if (Option == LoopHintAttr::Vectorize ||
150 Option == LoopHintAttr::Interleave ||
151 Option == LoopHintAttr::VectorizePredicate ||
152 Option == LoopHintAttr::Unroll ||
153 Option == LoopHintAttr::Distribute ||
154 Option == LoopHintAttr::PipelineDisabled) {
157 State = LoopHintAttr::Disable;
159 State = LoopHintAttr::AssumeSafety;
161 State = LoopHintAttr::Full;
163 State = LoopHintAttr::Enable;
170 return LoopHintAttr::CreateImplicit(S.Context, Option, State, ValueExpr, A);
186 const LoopHintAttr *StateAttr;
187 const LoopHintAttr *NumericAttr;
193 const LoopHintAttr *LH = dyn_cast<LoopHintAttr>(I);
193 const LoopHintAttr *LH = dyn_cast<LoopHintAttr>(I);
199 LoopHintAttr::OptionType Option = LH->getOption();
210 case LoopHintAttr::Vectorize:
211 case LoopHintAttr::VectorizeWidth:
214 case LoopHintAttr::Interleave:
215 case LoopHintAttr::InterleaveCount:
218 case LoopHintAttr::Unroll:
219 case LoopHintAttr::UnrollCount:
222 case LoopHintAttr::UnrollAndJam:
223 case LoopHintAttr::UnrollAndJamCount:
226 case LoopHintAttr::Distribute:
230 case LoopHintAttr::PipelineDisabled:
231 case LoopHintAttr::PipelineInitiationInterval:
234 case LoopHintAttr::VectorizePredicate:
241 const LoopHintAttr *PrevAttr;
242 if (Option == LoopHintAttr::Vectorize ||
243 Option == LoopHintAttr::Interleave || Option == LoopHintAttr::Unroll ||
243 Option == LoopHintAttr::Interleave || Option == LoopHintAttr::Unroll ||
244 Option == LoopHintAttr::UnrollAndJam ||
245 Option == LoopHintAttr::VectorizePredicate ||
246 Option == LoopHintAttr::PipelineDisabled ||
247 Option == LoopHintAttr::Distribute) {
267 CategoryState.StateAttr->getState() == LoopHintAttr::Disable)) {
tools/clang/lib/Sema/SemaTemplateInstantiate.cpp 952 const LoopHintAttr *TransformLoopHintAttr(const LoopHintAttr *LH);
952 const LoopHintAttr *TransformLoopHintAttr(const LoopHintAttr *LH);
1302 const LoopHintAttr *
1303 TemplateInstantiator::TransformLoopHintAttr(const LoopHintAttr *LH) {
1315 return LoopHintAttr::CreateImplicit(getSema().Context, LH->getOption(),
usr/include/c++/7.4.0/type_traits 1558 { typedef _Tp type; };
1580 { typedef _Tp const type; };