|
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 8975 RISCVInterruptAttr *RISCVInterruptAttr::clone(ASTContext &C) const {
8976 auto *A = new (C) RISCVInterruptAttr(C, *this, interrupt);
8976 auto *A = new (C) RISCVInterruptAttr(C, *this, interrupt);
8989 OS << " __attribute__((interrupt(\"" << RISCVInterruptAttr::ConvertInterruptTypeToStr(getInterrupt()) << "\")))";
8993 OS << " [[gnu::interrupt(\"" << RISCVInterruptAttr::ConvertInterruptTypeToStr(getInterrupt()) << "\")]]";
11950 return cast<RISCVInterruptAttr>(this)->getSpelling();
12530 return cast<RISCVInterruptAttr>(this)->clone(C);
13110 return cast<RISCVInterruptAttr>(this)->printPretty(OS, Policy);
gen/tools/clang/include/clang/AST/AttrTextNodeDump.inc 638 void VisitRISCVInterruptAttr(const RISCVInterruptAttr *A) {
639 const auto *SA = cast<RISCVInterruptAttr>(A); (void)SA;
639 const auto *SA = cast<RISCVInterruptAttr>(A); (void)SA;
641 case RISCVInterruptAttr::user:
644 case RISCVInterruptAttr::supervisor:
647 case RISCVInterruptAttr::machine:
gen/tools/clang/include/clang/AST/AttrVisitor.inc 919 bool TraverseRISCVInterruptAttr(RISCVInterruptAttr *A);
920 bool VisitRISCVInterruptAttr(RISCVInterruptAttr *A) {
3368 bool VISITORCLASS<Derived>::TraverseRISCVInterruptAttr(RISCVInterruptAttr *A) {
4410 return getDerived().TraverseRISCVInterruptAttr(cast<RISCVInterruptAttr>(A));
gen/tools/clang/include/clang/AST/Attrs.inc12198 static RISCVInterruptAttr *CreateImplicit(ASTContext &Ctx, InterruptType Interrupt, const AttributeCommonInfo &CommonInfo = {SourceRange{}}) {
12199 auto *A = new (Ctx) RISCVInterruptAttr(Ctx, CommonInfo, Interrupt);
12199 auto *A = new (Ctx) RISCVInterruptAttr(Ctx, CommonInfo, Interrupt);
12206 static RISCVInterruptAttr *Create(ASTContext &Ctx, InterruptType Interrupt, const AttributeCommonInfo &CommonInfo = {SourceRange{}}) {
12207 auto *A = new (Ctx) RISCVInterruptAttr(Ctx, CommonInfo, Interrupt);
12207 auto *A = new (Ctx) RISCVInterruptAttr(Ctx, CommonInfo, Interrupt);
12213 static RISCVInterruptAttr *CreateImplicit(ASTContext &Ctx, InterruptType Interrupt, SourceRange Range, AttributeCommonInfo::Syntax Syntax) {
12217 static RISCVInterruptAttr *Create(ASTContext &Ctx, InterruptType Interrupt, SourceRange Range, AttributeCommonInfo::Syntax Syntax) {
12236 RISCVInterruptAttr *clone(ASTContext &C) const;
12246 .Case("user", RISCVInterruptAttr::user)
12247 .Case("supervisor", RISCVInterruptAttr::supervisor)
12248 .Case("machine", RISCVInterruptAttr::machine)
12259 case RISCVInterruptAttr::user: return "user";
12260 case RISCVInterruptAttr::supervisor: return "supervisor";
12261 case RISCVInterruptAttr::machine: return "machine";
gen/tools/clang/include/clang/Sema/AttrTemplateInstantiate.inc 1048 const auto *A = cast<RISCVInterruptAttr>(At);
1048 const auto *A = cast<RISCVInterruptAttr>(At);
gen/tools/clang/include/clang/Serialization/AttrPCHRead.inc 2010 RISCVInterruptAttr::InterruptType interrupt(static_cast<RISCVInterruptAttr::InterruptType>(Record.readInt()));
2011 New = new (Context) RISCVInterruptAttr(Context, Info, interrupt);
gen/tools/clang/include/clang/Serialization/AttrPCHWrite.inc 1508 const auto *SA = cast<RISCVInterruptAttr>(A);
1508 const auto *SA = cast<RISCVInterruptAttr>(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*,
tools/clang/include/clang/AST/AttrIterator.h 47 while (!isa<SpecificAttr>(*Current))
52 while (Current != I && !isa<SpecificAttr>(*Current))
57 using value_type = SpecificAttr *;
58 using reference = SpecificAttr *;
59 using pointer = SpecificAttr *;
68 return cast<SpecificAttr>(*Current);
101 inline specific_attr_iterator<SpecificAttr, Container>
106 inline specific_attr_iterator<SpecificAttr, Container>
117 inline SpecificAttr *getSpecificAttr(const Container& container) {
118 specific_attr_iterator<SpecificAttr, Container> i =
119 specific_attr_begin<SpecificAttr>(container);
120 if (i != specific_attr_end<SpecificAttr>(container))
tools/clang/include/clang/AST/DeclBase.h 538 template<typename T> T *getAttr() const {
539 return hasAttrs() ? getSpecificAttr<T>(getAttrs()) : nullptr;
tools/clang/lib/CodeGen/Address.h 108 template <class U> inline U cast(CodeGen::Address addr) {
tools/clang/lib/CodeGen/TargetInfo.cpp 9675 const auto *Attr = FD->getAttr<RISCVInterruptAttr>();
9675 const auto *Attr = FD->getAttr<RISCVInterruptAttr>();
9681 case RISCVInterruptAttr::user: Kind = "user"; break;
9682 case RISCVInterruptAttr::supervisor: Kind = "supervisor"; break;
9683 case RISCVInterruptAttr::machine: Kind = "machine"; break;
tools/clang/lib/Sema/SemaDeclAttr.cpp 5699 if (const auto *A = D->getAttr<RISCVInterruptAttr>()) {
5699 if (const auto *A = D->getAttr<RISCVInterruptAttr>()) {
5744 RISCVInterruptAttr::InterruptType Kind;
5745 if (!RISCVInterruptAttr::ConvertStrToInterruptType(Str, Kind)) {
5751 D->addAttr(::new (S.Context) RISCVInterruptAttr(S.Context, AL, Kind));
usr/include/c++/7.4.0/type_traits 1558 { typedef _Tp type; };
1580 { typedef _Tp const type; };