/*===- TableGen'erated file -------------------------------------*- C++ -*-===*\
|*                                                                            *|
|* List of all attributes that Clang recognizes                               *|
|*                                                                            *|
|* Automatically generated file, do not edit!                                 *|
|*                                                                            *|
\*===----------------------------------------------------------------------===*/

#ifndef PARSED_ATTR
#define PARSED_ATTR(NAME) NAME
#endif

PARSED_ATTR(AMDGPUFlatWorkGroupSize)
PARSED_ATTR(AMDGPUNumSGPR)
PARSED_ATTR(AMDGPUNumVGPR)
PARSED_ATTR(AMDGPUWavesPerEU)
PARSED_ATTR(Interrupt)
PARSED_ATTR(AVRSignal)
PARSED_ATTR(AbiTag)
PARSED_ATTR(AcquireCapability)
PARSED_ATTR(AcquiredAfter)
PARSED_ATTR(AcquiredBefore)
PARSED_ATTR(AddressSpace)
PARSED_ATTR(Alias)
PARSED_ATTR(AlignValue)
PARSED_ATTR(Aligned)
PARSED_ATTR(AllocAlign)
PARSED_ATTR(AllocSize)
PARSED_ATTR(AlwaysDestroy)
PARSED_ATTR(AlwaysInline)
PARSED_ATTR(AnalyzerNoReturn)
PARSED_ATTR(Annotate)
PARSED_ATTR(AnyX86NoCallerSavedRegisters)
PARSED_ATTR(AnyX86NoCfCheck)
PARSED_ATTR(ArcWeakrefUnavailable)
PARSED_ATTR(ArgumentWithTypeTag)
PARSED_ATTR(Artificial)
PARSED_ATTR(AssertCapability)
PARSED_ATTR(AssertExclusiveLock)
PARSED_ATTR(AssertSharedLock)
PARSED_ATTR(AssumeAligned)
PARSED_ATTR(Availability)
PARSED_ATTR(Blocks)
PARSED_ATTR(CDecl)
PARSED_ATTR(CFAuditedTransfer)
PARSED_ATTR(CFConsumed)
PARSED_ATTR(CFReturnsNotRetained)
PARSED_ATTR(CFReturnsRetained)
PARSED_ATTR(CFUnknownTransfer)
PARSED_ATTR(CPUDispatch)
PARSED_ATTR(CPUSpecific)
PARSED_ATTR(CUDAConstant)
PARSED_ATTR(CUDADevice)
PARSED_ATTR(CUDAGlobal)
PARSED_ATTR(CUDAHost)
PARSED_ATTR(CUDAInvalidTarget)
PARSED_ATTR(CUDALaunchBounds)
PARSED_ATTR(CUDAShared)
PARSED_ATTR(CXX11NoReturn)
PARSED_ATTR(CallableWhen)
PARSED_ATTR(Capability)
PARSED_ATTR(CarriesDependency)
PARSED_ATTR(Cleanup)
PARSED_ATTR(CodeSeg)
PARSED_ATTR(Cold)
PARSED_ATTR(Common)
PARSED_ATTR(Const)
PARSED_ATTR(Constructor)
PARSED_ATTR(Consumable)
PARSED_ATTR(ConsumableAutoCast)
PARSED_ATTR(ConsumableSetOnRead)
PARSED_ATTR(Convergent)
PARSED_ATTR(DLLExport)
PARSED_ATTR(DLLExportStaticLocal)
PARSED_ATTR(DLLImport)
PARSED_ATTR(DLLImportStaticLocal)
PARSED_ATTR(Deprecated)
PARSED_ATTR(Destructor)
PARSED_ATTR(DiagnoseIf)
PARSED_ATTR(DisableTailCalls)
PARSED_ATTR(EmptyBases)
PARSED_ATTR(EnableIf)
PARSED_ATTR(EnumExtensibility)
PARSED_ATTR(ExcludeFromExplicitInstantiation)
PARSED_ATTR(ExclusiveTrylockFunction)
PARSED_ATTR(ExtVectorType)
PARSED_ATTR(ExternalSourceSymbol)
PARSED_ATTR(FallThrough)
PARSED_ATTR(FastCall)
PARSED_ATTR(FlagEnum)
PARSED_ATTR(Flatten)
PARSED_ATTR(Format)
PARSED_ATTR(FormatArg)
PARSED_ATTR(GNUInline)
PARSED_ATTR(GuardedBy)
PARSED_ATTR(GuardedVar)
PARSED_ATTR(Hot)
PARSED_ATTR(IBAction)
PARSED_ATTR(IBOutlet)
PARSED_ATTR(IBOutletCollection)
PARSED_ATTR(IFunc)
PARSED_ATTR(InitPriority)
PARSED_ATTR(IntelOclBicc)
PARSED_ATTR(InternalLinkage)
PARSED_ATTR(LTOVisibilityPublic)
PARSED_ATTR(LayoutVersion)
PARSED_ATTR(LifetimeBound)
PARSED_ATTR(LockReturned)
PARSED_ATTR(Lockable)
PARSED_ATTR(LocksExcluded)
PARSED_ATTR(LoopHint)
PARSED_ATTR(MSABI)
PARSED_ATTR(MSInheritance)
PARSED_ATTR(MSNoVTable)
PARSED_ATTR(MSStruct)
PARSED_ATTR(MayAlias)
PARSED_ATTR(MicroMips)
PARSED_ATTR(MinSize)
PARSED_ATTR(MinVectorWidth)
PARSED_ATTR(Mips16)
PARSED_ATTR(MipsLongCall)
PARSED_ATTR(MipsShortCall)
PARSED_ATTR(Mode)
PARSED_ATTR(NSConsumed)
PARSED_ATTR(NSConsumesSelf)
PARSED_ATTR(NSReturnsAutoreleased)
PARSED_ATTR(NSReturnsNotRetained)
PARSED_ATTR(NSReturnsRetained)
PARSED_ATTR(Naked)
PARSED_ATTR(NeonPolyVectorType)
PARSED_ATTR(NeonVectorType)
PARSED_ATTR(NoAlias)
PARSED_ATTR(NoCommon)
PARSED_ATTR(NoDebug)
PARSED_ATTR(NoDestroy)
PARSED_ATTR(NoDuplicate)
PARSED_ATTR(NoEscape)
PARSED_ATTR(NoInline)
PARSED_ATTR(NoInstrumentFunction)
PARSED_ATTR(NoMicroMips)
PARSED_ATTR(NoMips16)
PARSED_ATTR(NoReturn)
PARSED_ATTR(NoSanitize)
PARSED_ATTR(NoSanitizeSpecific)
PARSED_ATTR(NoSplitStack)
PARSED_ATTR(NoStackProtector)
PARSED_ATTR(NoThreadSafetyAnalysis)
PARSED_ATTR(NoThrow)
PARSED_ATTR(NonNull)
PARSED_ATTR(NotTailCalled)
PARSED_ATTR(ObjCBoxable)
PARSED_ATTR(ObjCBridge)
PARSED_ATTR(ObjCBridgeMutable)
PARSED_ATTR(ObjCBridgeRelated)
PARSED_ATTR(ObjCDesignatedInitializer)
PARSED_ATTR(ObjCException)
PARSED_ATTR(ObjCExplicitProtocolImpl)
PARSED_ATTR(ObjCGC)
PARSED_ATTR(ObjCIndependentClass)
PARSED_ATTR(ObjCInertUnsafeUnretained)
PARSED_ATTR(ObjCKindOf)
PARSED_ATTR(ObjCMethodFamily)
PARSED_ATTR(ObjCNSObject)
PARSED_ATTR(ObjCOwnership)
PARSED_ATTR(ObjCPreciseLifetime)
PARSED_ATTR(ObjCRequiresPropertyDefs)
PARSED_ATTR(ObjCRequiresSuper)
PARSED_ATTR(ObjCReturnsInnerPointer)
PARSED_ATTR(ObjCRootClass)
PARSED_ATTR(ObjCRuntimeName)
PARSED_ATTR(ObjCRuntimeVisible)
PARSED_ATTR(ObjCSubclassingRestricted)
PARSED_ATTR(OpenCLAccess)
PARSED_ATTR(OpenCLConstantAddressSpace)
PARSED_ATTR(OpenCLGenericAddressSpace)
PARSED_ATTR(OpenCLGlobalAddressSpace)
PARSED_ATTR(OpenCLIntelReqdSubGroupSize)
PARSED_ATTR(OpenCLKernel)
PARSED_ATTR(OpenCLLocalAddressSpace)
PARSED_ATTR(OpenCLNoSVM)
PARSED_ATTR(OpenCLPrivateAddressSpace)
PARSED_ATTR(OpenCLUnrollHint)
PARSED_ATTR(OptimizeNone)
PARSED_ATTR(Overloadable)
PARSED_ATTR(Ownership)
PARSED_ATTR(Packed)
PARSED_ATTR(ParamTypestate)
PARSED_ATTR(Pascal)
PARSED_ATTR(PassObjectSize)
PARSED_ATTR(Pcs)
PARSED_ATTR(PragmaClangBSSSection)
PARSED_ATTR(PragmaClangDataSection)
PARSED_ATTR(PragmaClangRodataSection)
PARSED_ATTR(PragmaClangTextSection)
PARSED_ATTR(PreserveAll)
PARSED_ATTR(PreserveMost)
PARSED_ATTR(PtGuardedBy)
PARSED_ATTR(PtGuardedVar)
PARSED_ATTR(Ptr32)
PARSED_ATTR(Ptr64)
PARSED_ATTR(Pure)
PARSED_ATTR(RegCall)
PARSED_ATTR(Regparm)
PARSED_ATTR(Reinitializes)
PARSED_ATTR(ReleaseCapability)
PARSED_ATTR(RenderScriptKernel)
PARSED_ATTR(ReqdWorkGroupSize)
PARSED_ATTR(RequireConstantInit)
PARSED_ATTR(RequiresCapability)
PARSED_ATTR(Restrict)
PARSED_ATTR(ReturnTypestate)
PARSED_ATTR(ReturnsNonNull)
PARSED_ATTR(ReturnsTwice)
PARSED_ATTR(SPtr)
PARSED_ATTR(ScopedLockable)
PARSED_ATTR(Section)
PARSED_ATTR(SelectAny)
PARSED_ATTR(Sentinel)
PARSED_ATTR(SetTypestate)
PARSED_ATTR(SharedTrylockFunction)
PARSED_ATTR(StdCall)
PARSED_ATTR(Suppress)
PARSED_ATTR(SwiftCall)
PARSED_ATTR(SwiftContext)
PARSED_ATTR(SwiftErrorResult)
PARSED_ATTR(SwiftIndirectResult)
PARSED_ATTR(SysVABI)
PARSED_ATTR(TLSModel)
PARSED_ATTR(Target)
PARSED_ATTR(TestTypestate)
PARSED_ATTR(ThisCall)
PARSED_ATTR(Thread)
PARSED_ATTR(TransparentUnion)
PARSED_ATTR(TrivialABI)
PARSED_ATTR(TryAcquireCapability)
PARSED_ATTR(TypeNonNull)
PARSED_ATTR(TypeNullUnspecified)
PARSED_ATTR(TypeNullable)
PARSED_ATTR(TypeTagForDatatype)
PARSED_ATTR(TypeVisibility)
PARSED_ATTR(UPtr)
PARSED_ATTR(Unavailable)
PARSED_ATTR(Unused)
PARSED_ATTR(Used)
PARSED_ATTR(Uuid)
PARSED_ATTR(VecReturn)
PARSED_ATTR(VecTypeHint)
PARSED_ATTR(VectorCall)
PARSED_ATTR(VectorSize)
PARSED_ATTR(Visibility)
PARSED_ATTR(WarnUnused)
PARSED_ATTR(WarnUnusedResult)
PARSED_ATTR(Weak)
PARSED_ATTR(WeakImport)
PARSED_ATTR(WeakRef)
PARSED_ATTR(WorkGroupSizeHint)
PARSED_ATTR(X86ForceAlignArgPointer)
PARSED_ATTR(XRayInstrument)
PARSED_ATTR(XRayLogArgs)
