#ifdef GET_ATTRDEF_CLASSES
#undef GET_ATTRDEF_CLASSES
namespace mlir {
class AsmParser;
class AsmPrinter;
}
namespace mlir {
namespace xegpu {
class BlockTensorDescAttr;
class ScatterTensorDescAttr;
class MemorySpaceAttr;
class CachePolicyAttr;
class FenceScopeAttr;
class SGMapAttr;
namespace detail {
struct BlockTensorDescAttrStorage;
}
class BlockTensorDescAttr : public ::mlir::Attribute::AttrBase<BlockTensorDescAttr, ::mlir::Attribute, detail::BlockTensorDescAttrStorage> { … };
namespace detail {
struct ScatterTensorDescAttrStorage;
}
class ScatterTensorDescAttr : public ::mlir::Attribute::AttrBase<ScatterTensorDescAttr, ::mlir::Attribute, detail::ScatterTensorDescAttrStorage> { … };
namespace detail {
struct MemorySpaceAttrStorage;
}
class MemorySpaceAttr : public ::mlir::Attribute::AttrBase<MemorySpaceAttr, ::mlir::Attribute, detail::MemorySpaceAttrStorage> { … };
namespace detail {
struct CachePolicyAttrStorage;
}
class CachePolicyAttr : public ::mlir::Attribute::AttrBase<CachePolicyAttr, ::mlir::Attribute, detail::CachePolicyAttrStorage> { … };
namespace detail {
struct FenceScopeAttrStorage;
}
class FenceScopeAttr : public ::mlir::Attribute::AttrBase<FenceScopeAttr, ::mlir::Attribute, detail::FenceScopeAttrStorage> { … };
namespace detail {
struct SGMapAttrStorage;
}
class SGMapAttr : public ::mlir::Attribute::AttrBase<SGMapAttr, ::mlir::Attribute, detail::SGMapAttrStorage> { … };
}
}
MLIR_DECLARE_EXPLICIT_TYPE_ID(::mlir::xegpu::BlockTensorDescAttr)
MLIR_DECLARE_EXPLICIT_TYPE_ID(::mlir::xegpu::ScatterTensorDescAttr)
MLIR_DECLARE_EXPLICIT_TYPE_ID(::mlir::xegpu::MemorySpaceAttr)
MLIR_DECLARE_EXPLICIT_TYPE_ID(::mlir::xegpu::CachePolicyAttr)
MLIR_DECLARE_EXPLICIT_TYPE_ID(::mlir::xegpu::FenceScopeAttr)
MLIR_DECLARE_EXPLICIT_TYPE_ID(::mlir::xegpu::SGMapAttr)
#endif