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

57 lines
2.3 KiB
C++

/*===- TableGen'erated file -------------------------------------*- C++ -*-===*\
|* *|
|* Enum Utility Definitions *|
|* *|
|* Automatically generated file, do not edit! *|
|* From: ShardBase.td *|
|* *|
\*===----------------------------------------------------------------------===*/
namespace mlir::shard {
::llvm::StringRef stringifyReductionKind(ReductionKind val) {
switch (val) {
case ReductionKind::Sum: return "sum";
case ReductionKind::Max: return "max";
case ReductionKind::Min: return "min";
case ReductionKind::Product: return "product";
case ReductionKind::Average: return "average";
case ReductionKind::BitwiseAnd: return "bitwise_and";
case ReductionKind::BitwiseOr: return "bitwise_or";
case ReductionKind::BitwiseXor: return "bitwise_xor";
case ReductionKind::Generic: return "generic";
}
return "";
}
::std::optional<ReductionKind> symbolizeReductionKind(::llvm::StringRef str) {
return ::llvm::StringSwitch<::std::optional<ReductionKind>>(str)
.Case("sum", ReductionKind::Sum)
.Case("max", ReductionKind::Max)
.Case("min", ReductionKind::Min)
.Case("product", ReductionKind::Product)
.Case("average", ReductionKind::Average)
.Case("bitwise_and", ReductionKind::BitwiseAnd)
.Case("bitwise_or", ReductionKind::BitwiseOr)
.Case("bitwise_xor", ReductionKind::BitwiseXor)
.Case("generic", ReductionKind::Generic)
.Default(::std::nullopt);
}
::std::optional<ReductionKind> symbolizeReductionKind(uint32_t value) {
switch (value) {
case 1: return ReductionKind::Sum;
case 2: return ReductionKind::Max;
case 3: return ReductionKind::Min;
case 4: return ReductionKind::Product;
case 5: return ReductionKind::Average;
case 6: return ReductionKind::BitwiseAnd;
case 7: return ReductionKind::BitwiseOr;
case 8: return ReductionKind::BitwiseXor;
case 100: return ReductionKind::Generic;
default: return ::std::nullopt;
}
}
} // namespace mlir::shard