reference, declarationdefinition
definition → references, declarations, derived classes, virtual overrides
reference to multiple definitions → definitions
unreferenced

References

gen/tools/clang/include/clang/AST/AttrImpl.inc
  195 ARMInterruptAttr *ARMInterruptAttr::clone(ASTContext &C) const {
  196   auto *A = new (C) ARMInterruptAttr(C, *this, interrupt);
  196   auto *A = new (C) ARMInterruptAttr(C, *this, interrupt);
  209     OS << " __attribute__((interrupt(\"" << ARMInterruptAttr::ConvertInterruptTypeToStr(getInterrupt()) << "\")))";
  213     OS << " [[gnu::interrupt(\"" << ARMInterruptAttr::ConvertInterruptTypeToStr(getInterrupt()) << "\")]]";
11506     return cast<ARMInterruptAttr>(this)->getSpelling();
12086     return cast<ARMInterruptAttr>(this)->clone(C);
12666     return cast<ARMInterruptAttr>(this)->printPretty(OS, Policy);
gen/tools/clang/include/clang/AST/AttrTextNodeDump.inc
   17   void VisitARMInterruptAttr(const ARMInterruptAttr *A) {
   18     const auto *SA = cast<ARMInterruptAttr>(A); (void)SA;
   18     const auto *SA = cast<ARMInterruptAttr>(A); (void)SA;
   20     case ARMInterruptAttr::IRQ:
   23     case ARMInterruptAttr::FIQ:
   26     case ARMInterruptAttr::SWI:
   29     case ARMInterruptAttr::ABORT:
   32     case ARMInterruptAttr::UNDEF:
   35     case ARMInterruptAttr::Generic:
gen/tools/clang/include/clang/AST/AttrVisitor.inc
   31   bool TraverseARMInterruptAttr(ARMInterruptAttr *A);
   32   bool VisitARMInterruptAttr(ARMInterruptAttr *A) {
 1216 bool VISITORCLASS<Derived>::TraverseARMInterruptAttr(ARMInterruptAttr *A) {
 3966       return getDerived().TraverseARMInterruptAttr(cast<ARMInterruptAttr>(A));
gen/tools/clang/include/clang/AST/Attrs.inc
  283   static ARMInterruptAttr *CreateImplicit(ASTContext &Ctx, InterruptType Interrupt, const AttributeCommonInfo &CommonInfo = {SourceRange{}}) {
  284     auto *A = new (Ctx) ARMInterruptAttr(Ctx, CommonInfo, Interrupt);
  284     auto *A = new (Ctx) ARMInterruptAttr(Ctx, CommonInfo, Interrupt);
  291   static ARMInterruptAttr *Create(ASTContext &Ctx, InterruptType Interrupt, const AttributeCommonInfo &CommonInfo = {SourceRange{}}) {
  292     auto *A = new (Ctx) ARMInterruptAttr(Ctx, CommonInfo, Interrupt);
  292     auto *A = new (Ctx) ARMInterruptAttr(Ctx, CommonInfo, Interrupt);
  298   static ARMInterruptAttr *CreateImplicit(ASTContext &Ctx, InterruptType Interrupt, SourceRange Range, AttributeCommonInfo::Syntax Syntax) {
  302   static ARMInterruptAttr *Create(ASTContext &Ctx, InterruptType Interrupt, SourceRange Range, AttributeCommonInfo::Syntax Syntax) {
  321   ARMInterruptAttr *clone(ASTContext &C) const;
  331       .Case("IRQ", ARMInterruptAttr::IRQ)
  332       .Case("FIQ", ARMInterruptAttr::FIQ)
  333       .Case("SWI", ARMInterruptAttr::SWI)
  334       .Case("ABORT", ARMInterruptAttr::ABORT)
  335       .Case("UNDEF", ARMInterruptAttr::UNDEF)
  336       .Case("", ARMInterruptAttr::Generic)
  347     case ARMInterruptAttr::IRQ: return "IRQ";
  348     case ARMInterruptAttr::FIQ: return "FIQ";
  349     case ARMInterruptAttr::SWI: return "SWI";
  350     case ARMInterruptAttr::ABORT: return "ABORT";
  351     case ARMInterruptAttr::UNDEF: return "UNDEF";
  352     case ARMInterruptAttr::Generic: return "";
gen/tools/clang/include/clang/Sema/AttrTemplateInstantiate.inc
   36       const auto *A = cast<ARMInterruptAttr>(At);
   36       const auto *A = cast<ARMInterruptAttr>(At);
gen/tools/clang/include/clang/Serialization/AttrPCHRead.inc
   59     ARMInterruptAttr::InterruptType interrupt(static_cast<ARMInterruptAttr::InterruptType>(Record.readInt()));
   60     New = new (Context) ARMInterruptAttr(Context, Info, interrupt);
gen/tools/clang/include/clang/Serialization/AttrPCHWrite.inc
   47     const auto *SA = cast<ARMInterruptAttr>(A);
   47     const auto *SA = cast<ARMInterruptAttr>(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>
  113   return specific_attr_begin<SpecificAttr>(container) !=
  114           specific_attr_end<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;
  543     return hasAttrs() && hasSpecificAttr<T>(getAttrs());
tools/clang/lib/CodeGen/Address.h
  108 template <class U> inline U cast(CodeGen::Address addr) {
tools/clang/lib/CodeGen/TargetInfo.cpp
 5715     const ARMInterruptAttr *Attr = FD->getAttr<ARMInterruptAttr>();
 5715     const ARMInterruptAttr *Attr = FD->getAttr<ARMInterruptAttr>();
 5721     case ARMInterruptAttr::Generic: Kind = ""; break;
 5722     case ARMInterruptAttr::IRQ:     Kind = "IRQ"; break;
 5723     case ARMInterruptAttr::FIQ:     Kind = "FIQ"; break;
 5724     case ARMInterruptAttr::SWI:     Kind = "SWI"; break;
 5725     case ARMInterruptAttr::ABORT:   Kind = "ABORT"; break;
 5726     case ARMInterruptAttr::UNDEF:   Kind = "UNDEF"; break;
tools/clang/lib/Sema/SemaDeclAttr.cpp
 5446   ARMInterruptAttr::InterruptType Kind;
 5447   if (!ARMInterruptAttr::ConvertStrToInterruptType(Str, Kind)) {
 5453   D->addAttr(::new (S.Context) ARMInterruptAttr(S.Context, AL, Kind));
tools/clang/lib/Sema/SemaExpr.cpp
 5805     if (Caller->hasAttr<ARMInterruptAttr>()) {
 5807       if (VFP && (!FDecl || !FDecl->hasAttr<ARMInterruptAttr>()))
usr/include/c++/7.4.0/type_traits
 1558     { typedef _Tp     type; };
 1580     { typedef _Tp const     type; };