Files
gps/tools/local/circt/include/mlir/Dialect/Shard/IR/ShardAttributes.h.inc
T
2026-07-12 11:01:51 +03:00

70 lines
2.6 KiB
C++

/*===- TableGen'erated file -------------------------------------*- C++ -*-===*\
|* *|
|* AttrDef Declarations *|
|* *|
|* Automatically generated file, do not edit! *|
|* *|
\*===----------------------------------------------------------------------===*/
#ifdef GET_ATTRDEF_CLASSES
#undef GET_ATTRDEF_CLASSES
namespace mlir {
class AsmParser;
class AsmPrinter;
} // namespace mlir
namespace mlir::shard {
/// Reduction of an iterator/grid dimension.
class ReductionKindAttr;
class GridAxesArrayAttr;
namespace detail {
struct ReductionKindAttrStorage;
} // namespace detail
class ReductionKindAttr : public ::mlir::Attribute::AttrBase<ReductionKindAttr, ::mlir::Attribute, detail::ReductionKindAttrStorage> {
public:
using Base::Base;
static constexpr ::llvm::StringLiteral name = "shard.partial";
static constexpr ::llvm::StringLiteral dialectName = "shard";
static ReductionKindAttr get(::mlir::MLIRContext *context, ::mlir::shard::ReductionKind value);
static constexpr ::llvm::StringLiteral getMnemonic() {
return {"partial"};
}
static ::mlir::Attribute parse(::mlir::AsmParser &odsParser, ::mlir::Type odsType);
void print(::mlir::AsmPrinter &odsPrinter) const;
::mlir::shard::ReductionKind getValue() const;
};
namespace detail {
struct GridAxesArrayAttrStorage;
} // namespace detail
class GridAxesArrayAttr : public ::mlir::Attribute::AttrBase<GridAxesArrayAttr, ::mlir::Attribute, detail::GridAxesArrayAttrStorage> {
public:
using Base::Base;
size_t size() const { return getAxes().size(); }
auto begin() const { return getAxes().begin(); }
auto end() const { return getAxes().end(); }
static constexpr ::llvm::StringLiteral name = "shard.axisarray";
static constexpr ::llvm::StringLiteral dialectName = "shard";
static GridAxesArrayAttr get(::mlir::MLIRContext *context, ::llvm::ArrayRef<GridAxesAttr> axes);
static constexpr ::llvm::StringLiteral getMnemonic() {
return {"axisarray"};
}
static ::mlir::Attribute parse(::mlir::AsmParser &odsParser, ::mlir::Type odsType);
void print(::mlir::AsmPrinter &odsPrinter) const;
::llvm::ArrayRef<GridAxesAttr> getAxes() const;
};
} // namespace mlir::shard
MLIR_DECLARE_EXPLICIT_TYPE_ID(::mlir::shard::ReductionKindAttr)
MLIR_DECLARE_EXPLICIT_TYPE_ID(::mlir::shard::GridAxesArrayAttr)
#endif // GET_ATTRDEF_CLASSES