#ifdef GET_ATTRDEF_CLASSES
#undef GET_ATTRDEF_CLASSES
namespace mlir {
class AsmParser;
class AsmPrinter;
}
namespace mlir {
namespace spirv {
class VersionAttr;
class DeviceTypeAttr;
class VendorAttr;
class ClientAPIAttr;
class ExtensionAttr;
class CapabilityAttr;
class AddressingModelAttr;
class BuiltInAttr;
class DecorationAttr;
class DimAttr;
class ExecutionModeAttr;
class ExecutionModelAttr;
class FPRoundingModeAttr;
class FunctionControlAttr;
class GroupOperationAttr;
class ImageFormatAttr;
class ImageOperandsAttr;
class LinkageTypeAttr;
class LoopControlAttr;
class MemoryAccessAttr;
class MemoryModelAttr;
class MemorySemanticsAttr;
class ScopeAttr;
class SelectionControlAttr;
class StorageClassAttr;
class PackedVectorFormatAttr;
class ImageDepthInfoAttr;
class ImageArrayedInfoAttr;
class ImageSamplingInfoAttr;
class ImageSamplerUseInfoAttr;
class MatrixLayoutAttr;
class CooperativeMatrixUseKHRAttr;
class CooperativeMatrixLayoutKHRAttr;
class CooperativeMatrixOperandsKHRAttr;
class OpcodeAttr;
class FPFastMathModeAttr;
class EntryPointABIAttr;
class LinkageAttributesAttr;
class CooperativeMatrixPropertiesKHRAttr;
class CooperativeMatrixPropertiesNVAttr;
class ResourceLimitsAttr;
namespace detail {
struct VersionAttrStorage;
}
class VersionAttr : public ::mlir::Attribute::AttrBase<VersionAttr, ::mlir::Attribute, detail::VersionAttrStorage> { … };
namespace detail {
struct DeviceTypeAttrStorage;
}
class DeviceTypeAttr : public ::mlir::Attribute::AttrBase<DeviceTypeAttr, ::mlir::Attribute, detail::DeviceTypeAttrStorage> { … };
namespace detail {
struct VendorAttrStorage;
}
class VendorAttr : public ::mlir::Attribute::AttrBase<VendorAttr, ::mlir::Attribute, detail::VendorAttrStorage> { … };
namespace detail {
struct ClientAPIAttrStorage;
}
class ClientAPIAttr : public ::mlir::Attribute::AttrBase<ClientAPIAttr, ::mlir::Attribute, detail::ClientAPIAttrStorage> { … };
namespace detail {
struct ExtensionAttrStorage;
}
class ExtensionAttr : public ::mlir::Attribute::AttrBase<ExtensionAttr, ::mlir::Attribute, detail::ExtensionAttrStorage> { … };
namespace detail {
struct CapabilityAttrStorage;
}
class CapabilityAttr : public ::mlir::Attribute::AttrBase<CapabilityAttr, ::mlir::Attribute, detail::CapabilityAttrStorage> { … };
namespace detail {
struct AddressingModelAttrStorage;
}
class AddressingModelAttr : public ::mlir::Attribute::AttrBase<AddressingModelAttr, ::mlir::Attribute, detail::AddressingModelAttrStorage> { … };
namespace detail {
struct BuiltInAttrStorage;
}
class BuiltInAttr : public ::mlir::Attribute::AttrBase<BuiltInAttr, ::mlir::Attribute, detail::BuiltInAttrStorage> { … };
namespace detail {
struct DecorationAttrStorage;
}
class DecorationAttr : public ::mlir::Attribute::AttrBase<DecorationAttr, ::mlir::Attribute, detail::DecorationAttrStorage> { … };
namespace detail {
struct DimAttrStorage;
}
class DimAttr : public ::mlir::Attribute::AttrBase<DimAttr, ::mlir::Attribute, detail::DimAttrStorage> { … };
namespace detail {
struct ExecutionModeAttrStorage;
}
class ExecutionModeAttr : public ::mlir::Attribute::AttrBase<ExecutionModeAttr, ::mlir::Attribute, detail::ExecutionModeAttrStorage> { … };
namespace detail {
struct ExecutionModelAttrStorage;
}
class ExecutionModelAttr : public ::mlir::Attribute::AttrBase<ExecutionModelAttr, ::mlir::Attribute, detail::ExecutionModelAttrStorage> { … };
namespace detail {
struct FPRoundingModeAttrStorage;
}
class FPRoundingModeAttr : public ::mlir::Attribute::AttrBase<FPRoundingModeAttr, ::mlir::Attribute, detail::FPRoundingModeAttrStorage> { … };
namespace detail {
struct FunctionControlAttrStorage;
}
class FunctionControlAttr : public ::mlir::Attribute::AttrBase<FunctionControlAttr, ::mlir::Attribute, detail::FunctionControlAttrStorage> { … };
namespace detail {
struct GroupOperationAttrStorage;
}
class GroupOperationAttr : public ::mlir::Attribute::AttrBase<GroupOperationAttr, ::mlir::Attribute, detail::GroupOperationAttrStorage> { … };
namespace detail {
struct ImageFormatAttrStorage;
}
class ImageFormatAttr : public ::mlir::Attribute::AttrBase<ImageFormatAttr, ::mlir::Attribute, detail::ImageFormatAttrStorage> { … };
namespace detail {
struct ImageOperandsAttrStorage;
}
class ImageOperandsAttr : public ::mlir::Attribute::AttrBase<ImageOperandsAttr, ::mlir::Attribute, detail::ImageOperandsAttrStorage> { … };
namespace detail {
struct LinkageTypeAttrStorage;
}
class LinkageTypeAttr : public ::mlir::Attribute::AttrBase<LinkageTypeAttr, ::mlir::Attribute, detail::LinkageTypeAttrStorage> { … };
namespace detail {
struct LoopControlAttrStorage;
}
class LoopControlAttr : public ::mlir::Attribute::AttrBase<LoopControlAttr, ::mlir::Attribute, detail::LoopControlAttrStorage> { … };
namespace detail {
struct MemoryAccessAttrStorage;
}
class MemoryAccessAttr : public ::mlir::Attribute::AttrBase<MemoryAccessAttr, ::mlir::Attribute, detail::MemoryAccessAttrStorage> { … };
namespace detail {
struct MemoryModelAttrStorage;
}
class MemoryModelAttr : public ::mlir::Attribute::AttrBase<MemoryModelAttr, ::mlir::Attribute, detail::MemoryModelAttrStorage> { … };
namespace detail {
struct MemorySemanticsAttrStorage;
}
class MemorySemanticsAttr : public ::mlir::Attribute::AttrBase<MemorySemanticsAttr, ::mlir::Attribute, detail::MemorySemanticsAttrStorage> { … };
namespace detail {
struct ScopeAttrStorage;
}
class ScopeAttr : public ::mlir::Attribute::AttrBase<ScopeAttr, ::mlir::Attribute, detail::ScopeAttrStorage> { … };
namespace detail {
struct SelectionControlAttrStorage;
}
class SelectionControlAttr : public ::mlir::Attribute::AttrBase<SelectionControlAttr, ::mlir::Attribute, detail::SelectionControlAttrStorage> { … };
namespace detail {
struct StorageClassAttrStorage;
}
class StorageClassAttr : public ::mlir::Attribute::AttrBase<StorageClassAttr, ::mlir::Attribute, detail::StorageClassAttrStorage> { … };
namespace detail {
struct PackedVectorFormatAttrStorage;
}
class PackedVectorFormatAttr : public ::mlir::Attribute::AttrBase<PackedVectorFormatAttr, ::mlir::Attribute, detail::PackedVectorFormatAttrStorage> { … };
namespace detail {
struct ImageDepthInfoAttrStorage;
}
class ImageDepthInfoAttr : public ::mlir::Attribute::AttrBase<ImageDepthInfoAttr, ::mlir::Attribute, detail::ImageDepthInfoAttrStorage> { … };
namespace detail {
struct ImageArrayedInfoAttrStorage;
}
class ImageArrayedInfoAttr : public ::mlir::Attribute::AttrBase<ImageArrayedInfoAttr, ::mlir::Attribute, detail::ImageArrayedInfoAttrStorage> { … };
namespace detail {
struct ImageSamplingInfoAttrStorage;
}
class ImageSamplingInfoAttr : public ::mlir::Attribute::AttrBase<ImageSamplingInfoAttr, ::mlir::Attribute, detail::ImageSamplingInfoAttrStorage> { … };
namespace detail {
struct ImageSamplerUseInfoAttrStorage;
}
class ImageSamplerUseInfoAttr : public ::mlir::Attribute::AttrBase<ImageSamplerUseInfoAttr, ::mlir::Attribute, detail::ImageSamplerUseInfoAttrStorage> { … };
namespace detail {
struct MatrixLayoutAttrStorage;
}
class MatrixLayoutAttr : public ::mlir::Attribute::AttrBase<MatrixLayoutAttr, ::mlir::Attribute, detail::MatrixLayoutAttrStorage> { … };
namespace detail {
struct CooperativeMatrixUseKHRAttrStorage;
}
class CooperativeMatrixUseKHRAttr : public ::mlir::Attribute::AttrBase<CooperativeMatrixUseKHRAttr, ::mlir::Attribute, detail::CooperativeMatrixUseKHRAttrStorage> { … };
namespace detail {
struct CooperativeMatrixLayoutKHRAttrStorage;
}
class CooperativeMatrixLayoutKHRAttr : public ::mlir::Attribute::AttrBase<CooperativeMatrixLayoutKHRAttr, ::mlir::Attribute, detail::CooperativeMatrixLayoutKHRAttrStorage> { … };
namespace detail {
struct CooperativeMatrixOperandsKHRAttrStorage;
}
class CooperativeMatrixOperandsKHRAttr : public ::mlir::Attribute::AttrBase<CooperativeMatrixOperandsKHRAttr, ::mlir::Attribute, detail::CooperativeMatrixOperandsKHRAttrStorage> { … };
namespace detail {
struct OpcodeAttrStorage;
}
class OpcodeAttr : public ::mlir::Attribute::AttrBase<OpcodeAttr, ::mlir::Attribute, detail::OpcodeAttrStorage> { … };
namespace detail {
struct FPFastMathModeAttrStorage;
}
class FPFastMathModeAttr : public ::mlir::Attribute::AttrBase<FPFastMathModeAttr, ::mlir::Attribute, detail::FPFastMathModeAttrStorage> { … };
namespace detail {
struct EntryPointABIAttrStorage;
}
class EntryPointABIAttr : public ::mlir::Attribute::AttrBase<EntryPointABIAttr, ::mlir::Attribute, detail::EntryPointABIAttrStorage> { … };
namespace detail {
struct LinkageAttributesAttrStorage;
}
class LinkageAttributesAttr : public ::mlir::Attribute::AttrBase<LinkageAttributesAttr, ::mlir::Attribute, detail::LinkageAttributesAttrStorage> { … };
namespace detail {
struct CooperativeMatrixPropertiesKHRAttrStorage;
}
class CooperativeMatrixPropertiesKHRAttr : public ::mlir::Attribute::AttrBase<CooperativeMatrixPropertiesKHRAttr, ::mlir::Attribute, detail::CooperativeMatrixPropertiesKHRAttrStorage> { … };
namespace detail {
struct CooperativeMatrixPropertiesNVAttrStorage;
}
class CooperativeMatrixPropertiesNVAttr : public ::mlir::Attribute::AttrBase<CooperativeMatrixPropertiesNVAttr, ::mlir::Attribute, detail::CooperativeMatrixPropertiesNVAttrStorage> { … };
namespace detail {
struct ResourceLimitsAttrStorage;
}
class ResourceLimitsAttr : public ::mlir::Attribute::AttrBase<ResourceLimitsAttr, ::mlir::Attribute, detail::ResourceLimitsAttrStorage> { … };
}
}
MLIR_DECLARE_EXPLICIT_TYPE_ID(::mlir::spirv::VersionAttr)
MLIR_DECLARE_EXPLICIT_TYPE_ID(::mlir::spirv::DeviceTypeAttr)
MLIR_DECLARE_EXPLICIT_TYPE_ID(::mlir::spirv::VendorAttr)
MLIR_DECLARE_EXPLICIT_TYPE_ID(::mlir::spirv::ClientAPIAttr)
MLIR_DECLARE_EXPLICIT_TYPE_ID(::mlir::spirv::ExtensionAttr)
MLIR_DECLARE_EXPLICIT_TYPE_ID(::mlir::spirv::CapabilityAttr)
MLIR_DECLARE_EXPLICIT_TYPE_ID(::mlir::spirv::AddressingModelAttr)
MLIR_DECLARE_EXPLICIT_TYPE_ID(::mlir::spirv::BuiltInAttr)
MLIR_DECLARE_EXPLICIT_TYPE_ID(::mlir::spirv::DecorationAttr)
MLIR_DECLARE_EXPLICIT_TYPE_ID(::mlir::spirv::DimAttr)
MLIR_DECLARE_EXPLICIT_TYPE_ID(::mlir::spirv::ExecutionModeAttr)
MLIR_DECLARE_EXPLICIT_TYPE_ID(::mlir::spirv::ExecutionModelAttr)
MLIR_DECLARE_EXPLICIT_TYPE_ID(::mlir::spirv::FPRoundingModeAttr)
MLIR_DECLARE_EXPLICIT_TYPE_ID(::mlir::spirv::FunctionControlAttr)
MLIR_DECLARE_EXPLICIT_TYPE_ID(::mlir::spirv::GroupOperationAttr)
MLIR_DECLARE_EXPLICIT_TYPE_ID(::mlir::spirv::ImageFormatAttr)
MLIR_DECLARE_EXPLICIT_TYPE_ID(::mlir::spirv::ImageOperandsAttr)
MLIR_DECLARE_EXPLICIT_TYPE_ID(::mlir::spirv::LinkageTypeAttr)
MLIR_DECLARE_EXPLICIT_TYPE_ID(::mlir::spirv::LoopControlAttr)
MLIR_DECLARE_EXPLICIT_TYPE_ID(::mlir::spirv::MemoryAccessAttr)
MLIR_DECLARE_EXPLICIT_TYPE_ID(::mlir::spirv::MemoryModelAttr)
MLIR_DECLARE_EXPLICIT_TYPE_ID(::mlir::spirv::MemorySemanticsAttr)
MLIR_DECLARE_EXPLICIT_TYPE_ID(::mlir::spirv::ScopeAttr)
MLIR_DECLARE_EXPLICIT_TYPE_ID(::mlir::spirv::SelectionControlAttr)
MLIR_DECLARE_EXPLICIT_TYPE_ID(::mlir::spirv::StorageClassAttr)
MLIR_DECLARE_EXPLICIT_TYPE_ID(::mlir::spirv::PackedVectorFormatAttr)
MLIR_DECLARE_EXPLICIT_TYPE_ID(::mlir::spirv::ImageDepthInfoAttr)
MLIR_DECLARE_EXPLICIT_TYPE_ID(::mlir::spirv::ImageArrayedInfoAttr)
MLIR_DECLARE_EXPLICIT_TYPE_ID(::mlir::spirv::ImageSamplingInfoAttr)
MLIR_DECLARE_EXPLICIT_TYPE_ID(::mlir::spirv::ImageSamplerUseInfoAttr)
MLIR_DECLARE_EXPLICIT_TYPE_ID(::mlir::spirv::MatrixLayoutAttr)
MLIR_DECLARE_EXPLICIT_TYPE_ID(::mlir::spirv::CooperativeMatrixUseKHRAttr)
MLIR_DECLARE_EXPLICIT_TYPE_ID(::mlir::spirv::CooperativeMatrixLayoutKHRAttr)
MLIR_DECLARE_EXPLICIT_TYPE_ID(::mlir::spirv::CooperativeMatrixOperandsKHRAttr)
MLIR_DECLARE_EXPLICIT_TYPE_ID(::mlir::spirv::OpcodeAttr)
MLIR_DECLARE_EXPLICIT_TYPE_ID(::mlir::spirv::FPFastMathModeAttr)
MLIR_DECLARE_EXPLICIT_TYPE_ID(::mlir::spirv::EntryPointABIAttr)
MLIR_DECLARE_EXPLICIT_TYPE_ID(::mlir::spirv::LinkageAttributesAttr)
MLIR_DECLARE_EXPLICIT_TYPE_ID(::mlir::spirv::CooperativeMatrixPropertiesKHRAttr)
MLIR_DECLARE_EXPLICIT_TYPE_ID(::mlir::spirv::CooperativeMatrixPropertiesNVAttr)
MLIR_DECLARE_EXPLICIT_TYPE_ID(::mlir::spirv::ResourceLimitsAttr)
#endif