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

129 lines
4.0 KiB
C++

/*===- TableGen'erated file -------------------------------------*- C++ -*-===*\
|* *|
|* Enum Utility Definitions *|
|* *|
|* Automatically generated file, do not edit! *|
|* From: ArmSMEOps.td *|
|* *|
\*===----------------------------------------------------------------------===*/
namespace mlir::arm_sme {
::llvm::StringRef stringifyArmSMETileType(ArmSMETileType val) {
switch (val) {
case ArmSMETileType::ZAB: return "za.b";
case ArmSMETileType::ZAH: return "za.h";
case ArmSMETileType::ZAS: return "za.s";
case ArmSMETileType::ZAD: return "za.d";
case ArmSMETileType::ZAQ: return "za.q";
}
return "";
}
::std::optional<ArmSMETileType> symbolizeArmSMETileType(::llvm::StringRef str) {
return ::llvm::StringSwitch<::std::optional<ArmSMETileType>>(str)
.Case("za.b", ArmSMETileType::ZAB)
.Case("za.h", ArmSMETileType::ZAH)
.Case("za.s", ArmSMETileType::ZAS)
.Case("za.d", ArmSMETileType::ZAD)
.Case("za.q", ArmSMETileType::ZAQ)
.Default(::std::nullopt);
}
::std::optional<ArmSMETileType> symbolizeArmSMETileType(uint32_t value) {
switch (value) {
case 0: return ArmSMETileType::ZAB;
case 1: return ArmSMETileType::ZAH;
case 2: return ArmSMETileType::ZAS;
case 3: return ArmSMETileType::ZAD;
case 4: return ArmSMETileType::ZAQ;
default: return ::std::nullopt;
}
}
} // namespace mlir::arm_sme
namespace mlir::arm_sme {
::llvm::StringRef stringifyCombiningKind(CombiningKind val) {
switch (val) {
case CombiningKind::Add: return "add";
case CombiningKind::Sub: return "sub";
}
return "";
}
::std::optional<CombiningKind> symbolizeCombiningKind(::llvm::StringRef str) {
return ::llvm::StringSwitch<::std::optional<CombiningKind>>(str)
.Case("add", CombiningKind::Add)
.Case("sub", CombiningKind::Sub)
.Default(::std::nullopt);
}
::std::optional<CombiningKind> symbolizeCombiningKind(uint32_t value) {
switch (value) {
case 0: return CombiningKind::Add;
case 1: return CombiningKind::Sub;
default: return ::std::nullopt;
}
}
} // namespace mlir::arm_sme
namespace mlir::arm_sme {
::llvm::StringRef stringifyTileSliceLayout(TileSliceLayout val) {
switch (val) {
case TileSliceLayout::Horizontal: return "horizontal";
case TileSliceLayout::Vertical: return "vertical";
}
return "";
}
::std::optional<TileSliceLayout> symbolizeTileSliceLayout(::llvm::StringRef str) {
return ::llvm::StringSwitch<::std::optional<TileSliceLayout>>(str)
.Case("horizontal", TileSliceLayout::Horizontal)
.Case("vertical", TileSliceLayout::Vertical)
.Default(::std::nullopt);
}
::std::optional<TileSliceLayout> symbolizeTileSliceLayout(uint32_t value) {
switch (value) {
case 0: return TileSliceLayout::Horizontal;
case 1: return TileSliceLayout::Vertical;
default: return ::std::nullopt;
}
}
} // namespace mlir::arm_sme
namespace mlir::arm_sme {
::llvm::StringRef stringifyTypeSize(TypeSize val) {
switch (val) {
case TypeSize::Byte: return "byte";
case TypeSize::Half: return "half";
case TypeSize::Word: return "word";
case TypeSize::Double: return "double";
}
return "";
}
::std::optional<TypeSize> symbolizeTypeSize(::llvm::StringRef str) {
return ::llvm::StringSwitch<::std::optional<TypeSize>>(str)
.Case("byte", TypeSize::Byte)
.Case("half", TypeSize::Half)
.Case("word", TypeSize::Word)
.Case("double", TypeSize::Double)
.Default(::std::nullopt);
}
::std::optional<TypeSize> symbolizeTypeSize(uint32_t value) {
switch (value) {
case 0: return TypeSize::Byte;
case 1: return TypeSize::Half;
case 2: return TypeSize::Word;
case 3: return TypeSize::Double;
default: return ::std::nullopt;
}
}
} // namespace mlir::arm_sme