llvm/tools/mlir/include/mlir/Dialect/Index/IR/IndexOps.h.inc

/*===- TableGen'erated file -------------------------------------*- C++ -*-===*\
|*                                                                            *|
|* Op Declarations                                                            *|
|*                                                                            *|
|* Automatically generated file, do not edit!                                 *|
|* From: IndexOps.td                                                          *|
|*                                                                            *|
\*===----------------------------------------------------------------------===*/

namespace mlir {
namespace index {
class AddOp;
} // namespace index
} // namespace mlir
namespace mlir {
namespace index {
class AndOp;
} // namespace index
} // namespace mlir
namespace mlir {
namespace index {
class BoolConstantOp;
} // namespace index
} // namespace mlir
namespace mlir {
namespace index {
class CastSOp;
} // namespace index
} // namespace mlir
namespace mlir {
namespace index {
class CastUOp;
} // namespace index
} // namespace mlir
namespace mlir {
namespace index {
class CeilDivSOp;
} // namespace index
} // namespace mlir
namespace mlir {
namespace index {
class CeilDivUOp;
} // namespace index
} // namespace mlir
namespace mlir {
namespace index {
class CmpOp;
} // namespace index
} // namespace mlir
namespace mlir {
namespace index {
class ConstantOp;
} // namespace index
} // namespace mlir
namespace mlir {
namespace index {
class DivSOp;
} // namespace index
} // namespace mlir
namespace mlir {
namespace index {
class DivUOp;
} // namespace index
} // namespace mlir
namespace mlir {
namespace index {
class FloorDivSOp;
} // namespace index
} // namespace mlir
namespace mlir {
namespace index {
class MaxSOp;
} // namespace index
} // namespace mlir
namespace mlir {
namespace index {
class MaxUOp;
} // namespace index
} // namespace mlir
namespace mlir {
namespace index {
class MinSOp;
} // namespace index
} // namespace mlir
namespace mlir {
namespace index {
class MinUOp;
} // namespace index
} // namespace mlir
namespace mlir {
namespace index {
class MulOp;
} // namespace index
} // namespace mlir
namespace mlir {
namespace index {
class OrOp;
} // namespace index
} // namespace mlir
namespace mlir {
namespace index {
class RemSOp;
} // namespace index
} // namespace mlir
namespace mlir {
namespace index {
class RemUOp;
} // namespace index
} // namespace mlir
namespace mlir {
namespace index {
class ShlOp;
} // namespace index
} // namespace mlir
namespace mlir {
namespace index {
class ShrSOp;
} // namespace index
} // namespace mlir
namespace mlir {
namespace index {
class ShrUOp;
} // namespace index
} // namespace mlir
namespace mlir {
namespace index {
class SizeOfOp;
} // namespace index
} // namespace mlir
namespace mlir {
namespace index {
class SubOp;
} // namespace index
} // namespace mlir
namespace mlir {
namespace index {
class XOrOp;
} // namespace index
} // namespace mlir
#ifdef GET_OP_CLASSES
#undef GET_OP_CLASSES

namespace mlir {
namespace index {

//===----------------------------------------------------------------------===//
// ::mlir::index::AddOp declarations
//===----------------------------------------------------------------------===//

namespace detail {
class AddOpGenericAdaptorBase {};
} // namespace detail
template <typename RangeT>
class AddOpGenericAdaptor : public detail::AddOpGenericAdaptorBase {};
class AddOpAdaptor : public AddOpGenericAdaptor<::mlir::ValueRange> {};
class AddOp : public ::mlir::Op<AddOp, ::mlir::OpTrait::ZeroRegions, ::mlir::OpTrait::OneResult, ::mlir::OpTrait::OneTypedResult<::mlir::IndexType>::Impl, ::mlir::OpTrait::ZeroSuccessors, ::mlir::OpTrait::NOperands<2>::Impl, ::mlir::OpTrait::OpInvariants, ::mlir::InferIntRangeInterface::Trait, ::mlir::OpTrait::IsCommutative, ::mlir::ConditionallySpeculatable::Trait, ::mlir::OpTrait::AlwaysSpeculatableImplTrait, ::mlir::MemoryEffectOpInterface::Trait, ::mlir::InferTypeOpInterface::Trait> {};
} // namespace index
} // namespace mlir
MLIR_DECLARE_EXPLICIT_TYPE_ID(::mlir::index::AddOp)

namespace mlir {
namespace index {

//===----------------------------------------------------------------------===//
// ::mlir::index::AndOp declarations
//===----------------------------------------------------------------------===//

namespace detail {
class AndOpGenericAdaptorBase {};
} // namespace detail
template <typename RangeT>
class AndOpGenericAdaptor : public detail::AndOpGenericAdaptorBase {};
class AndOpAdaptor : public AndOpGenericAdaptor<::mlir::ValueRange> {};
class AndOp : public ::mlir::Op<AndOp, ::mlir::OpTrait::ZeroRegions, ::mlir::OpTrait::OneResult, ::mlir::OpTrait::OneTypedResult<::mlir::IndexType>::Impl, ::mlir::OpTrait::ZeroSuccessors, ::mlir::OpTrait::NOperands<2>::Impl, ::mlir::OpTrait::OpInvariants, ::mlir::InferIntRangeInterface::Trait, ::mlir::OpTrait::IsCommutative, ::mlir::ConditionallySpeculatable::Trait, ::mlir::OpTrait::AlwaysSpeculatableImplTrait, ::mlir::MemoryEffectOpInterface::Trait, ::mlir::InferTypeOpInterface::Trait> {};
} // namespace index
} // namespace mlir
MLIR_DECLARE_EXPLICIT_TYPE_ID(::mlir::index::AndOp)

namespace mlir {
namespace index {

//===----------------------------------------------------------------------===//
// ::mlir::index::BoolConstantOp declarations
//===----------------------------------------------------------------------===//

namespace detail {
class BoolConstantOpGenericAdaptorBase {};
} // namespace detail
template <typename RangeT>
class BoolConstantOpGenericAdaptor : public detail::BoolConstantOpGenericAdaptorBase {};
class BoolConstantOpAdaptor : public BoolConstantOpGenericAdaptor<::mlir::ValueRange> {};
class BoolConstantOp : public ::mlir::Op<BoolConstantOp, ::mlir::OpTrait::ZeroRegions, ::mlir::OpTrait::OneResult, ::mlir::OpTrait::OneTypedResult<::mlir::IntegerType>::Impl, ::mlir::OpTrait::ZeroSuccessors, ::mlir::OpTrait::ZeroOperands, ::mlir::OpTrait::OpInvariants, ::mlir::BytecodeOpInterface::Trait, ::mlir::InferIntRangeInterface::Trait, ::mlir::OpTrait::ConstantLike, ::mlir::ConditionallySpeculatable::Trait, ::mlir::OpTrait::AlwaysSpeculatableImplTrait, ::mlir::MemoryEffectOpInterface::Trait, ::mlir::OpAsmOpInterface::Trait, ::mlir::InferTypeOpInterface::Trait> {};
} // namespace index
} // namespace mlir
MLIR_DECLARE_EXPLICIT_TYPE_ID(::mlir::index::BoolConstantOp)

namespace mlir {
namespace index {

//===----------------------------------------------------------------------===//
// ::mlir::index::CastSOp declarations
//===----------------------------------------------------------------------===//

namespace detail {
class CastSOpGenericAdaptorBase {};
} // namespace detail
template <typename RangeT>
class CastSOpGenericAdaptor : public detail::CastSOpGenericAdaptorBase {};
class CastSOpAdaptor : public CastSOpGenericAdaptor<::mlir::ValueRange> {};
class CastSOp : public ::mlir::Op<CastSOp, ::mlir::OpTrait::ZeroRegions, ::mlir::OpTrait::OneResult, ::mlir::OpTrait::OneTypedResult<::mlir::Type>::Impl, ::mlir::OpTrait::ZeroSuccessors, ::mlir::OpTrait::OneOperand, ::mlir::OpTrait::OpInvariants, ::mlir::InferIntRangeInterface::Trait, ::mlir::ConditionallySpeculatable::Trait, ::mlir::OpTrait::AlwaysSpeculatableImplTrait, ::mlir::MemoryEffectOpInterface::Trait, ::mlir::CastOpInterface::Trait> {};
} // namespace index
} // namespace mlir
MLIR_DECLARE_EXPLICIT_TYPE_ID(::mlir::index::CastSOp)

namespace mlir {
namespace index {

//===----------------------------------------------------------------------===//
// ::mlir::index::CastUOp declarations
//===----------------------------------------------------------------------===//

namespace detail {
class CastUOpGenericAdaptorBase {};
} // namespace detail
template <typename RangeT>
class CastUOpGenericAdaptor : public detail::CastUOpGenericAdaptorBase {};
class CastUOpAdaptor : public CastUOpGenericAdaptor<::mlir::ValueRange> {};
class CastUOp : public ::mlir::Op<CastUOp, ::mlir::OpTrait::ZeroRegions, ::mlir::OpTrait::OneResult, ::mlir::OpTrait::OneTypedResult<::mlir::Type>::Impl, ::mlir::OpTrait::ZeroSuccessors, ::mlir::OpTrait::OneOperand, ::mlir::OpTrait::OpInvariants, ::mlir::InferIntRangeInterface::Trait, ::mlir::ConditionallySpeculatable::Trait, ::mlir::OpTrait::AlwaysSpeculatableImplTrait, ::mlir::MemoryEffectOpInterface::Trait, ::mlir::CastOpInterface::Trait> {};
} // namespace index
} // namespace mlir
MLIR_DECLARE_EXPLICIT_TYPE_ID(::mlir::index::CastUOp)

namespace mlir {
namespace index {

//===----------------------------------------------------------------------===//
// ::mlir::index::CeilDivSOp declarations
//===----------------------------------------------------------------------===//

namespace detail {
class CeilDivSOpGenericAdaptorBase {};
} // namespace detail
template <typename RangeT>
class CeilDivSOpGenericAdaptor : public detail::CeilDivSOpGenericAdaptorBase {};
class CeilDivSOpAdaptor : public CeilDivSOpGenericAdaptor<::mlir::ValueRange> {};
class CeilDivSOp : public ::mlir::Op<CeilDivSOp, ::mlir::OpTrait::ZeroRegions, ::mlir::OpTrait::OneResult, ::mlir::OpTrait::OneTypedResult<::mlir::IndexType>::Impl, ::mlir::OpTrait::ZeroSuccessors, ::mlir::OpTrait::NOperands<2>::Impl, ::mlir::OpTrait::OpInvariants, ::mlir::InferIntRangeInterface::Trait, ::mlir::MemoryEffectOpInterface::Trait, ::mlir::InferTypeOpInterface::Trait> {};
} // namespace index
} // namespace mlir
MLIR_DECLARE_EXPLICIT_TYPE_ID(::mlir::index::CeilDivSOp)

namespace mlir {
namespace index {

//===----------------------------------------------------------------------===//
// ::mlir::index::CeilDivUOp declarations
//===----------------------------------------------------------------------===//

namespace detail {
class CeilDivUOpGenericAdaptorBase {};
} // namespace detail
template <typename RangeT>
class CeilDivUOpGenericAdaptor : public detail::CeilDivUOpGenericAdaptorBase {};
class CeilDivUOpAdaptor : public CeilDivUOpGenericAdaptor<::mlir::ValueRange> {};
class CeilDivUOp : public ::mlir::Op<CeilDivUOp, ::mlir::OpTrait::ZeroRegions, ::mlir::OpTrait::OneResult, ::mlir::OpTrait::OneTypedResult<::mlir::IndexType>::Impl, ::mlir::OpTrait::ZeroSuccessors, ::mlir::OpTrait::NOperands<2>::Impl, ::mlir::OpTrait::OpInvariants, ::mlir::InferIntRangeInterface::Trait, ::mlir::MemoryEffectOpInterface::Trait, ::mlir::InferTypeOpInterface::Trait> {};
} // namespace index
} // namespace mlir
MLIR_DECLARE_EXPLICIT_TYPE_ID(::mlir::index::CeilDivUOp)

namespace mlir {
namespace index {

//===----------------------------------------------------------------------===//
// ::mlir::index::CmpOp declarations
//===----------------------------------------------------------------------===//

namespace detail {
class CmpOpGenericAdaptorBase {};
} // namespace detail
template <typename RangeT>
class CmpOpGenericAdaptor : public detail::CmpOpGenericAdaptorBase {};
class CmpOpAdaptor : public CmpOpGenericAdaptor<::mlir::ValueRange> {};
class CmpOp : public ::mlir::Op<CmpOp, ::mlir::OpTrait::ZeroRegions, ::mlir::OpTrait::OneResult, ::mlir::OpTrait::OneTypedResult<::mlir::IntegerType>::Impl, ::mlir::OpTrait::ZeroSuccessors, ::mlir::OpTrait::NOperands<2>::Impl, ::mlir::OpTrait::OpInvariants, ::mlir::BytecodeOpInterface::Trait, ::mlir::InferIntRangeInterface::Trait, ::mlir::ConditionallySpeculatable::Trait, ::mlir::OpTrait::AlwaysSpeculatableImplTrait, ::mlir::MemoryEffectOpInterface::Trait, ::mlir::InferTypeOpInterface::Trait> {};
} // namespace index
} // namespace mlir
MLIR_DECLARE_EXPLICIT_TYPE_ID(::mlir::index::CmpOp)

namespace mlir {
namespace index {

//===----------------------------------------------------------------------===//
// ::mlir::index::ConstantOp declarations
//===----------------------------------------------------------------------===//

namespace detail {
class ConstantOpGenericAdaptorBase {};
} // namespace detail
template <typename RangeT>
class ConstantOpGenericAdaptor : public detail::ConstantOpGenericAdaptorBase {};
class ConstantOpAdaptor : public ConstantOpGenericAdaptor<::mlir::ValueRange> {};
class ConstantOp : public ::mlir::Op<ConstantOp, ::mlir::OpTrait::ZeroRegions, ::mlir::OpTrait::OneResult, ::mlir::OpTrait::OneTypedResult<::mlir::IndexType>::Impl, ::mlir::OpTrait::ZeroSuccessors, ::mlir::OpTrait::ZeroOperands, ::mlir::OpTrait::OpInvariants, ::mlir::BytecodeOpInterface::Trait, ::mlir::InferIntRangeInterface::Trait, ::mlir::OpTrait::ConstantLike, ::mlir::ConditionallySpeculatable::Trait, ::mlir::OpTrait::AlwaysSpeculatableImplTrait, ::mlir::MemoryEffectOpInterface::Trait, ::mlir::OpAsmOpInterface::Trait, ::mlir::InferTypeOpInterface::Trait> {};
} // namespace index
} // namespace mlir
MLIR_DECLARE_EXPLICIT_TYPE_ID(::mlir::index::ConstantOp)

namespace mlir {
namespace index {

//===----------------------------------------------------------------------===//
// ::mlir::index::DivSOp declarations
//===----------------------------------------------------------------------===//

namespace detail {
class DivSOpGenericAdaptorBase {};
} // namespace detail
template <typename RangeT>
class DivSOpGenericAdaptor : public detail::DivSOpGenericAdaptorBase {};
class DivSOpAdaptor : public DivSOpGenericAdaptor<::mlir::ValueRange> {};
class DivSOp : public ::mlir::Op<DivSOp, ::mlir::OpTrait::ZeroRegions, ::mlir::OpTrait::OneResult, ::mlir::OpTrait::OneTypedResult<::mlir::IndexType>::Impl, ::mlir::OpTrait::ZeroSuccessors, ::mlir::OpTrait::NOperands<2>::Impl, ::mlir::OpTrait::OpInvariants, ::mlir::InferIntRangeInterface::Trait, ::mlir::MemoryEffectOpInterface::Trait, ::mlir::InferTypeOpInterface::Trait> {};
} // namespace index
} // namespace mlir
MLIR_DECLARE_EXPLICIT_TYPE_ID(::mlir::index::DivSOp)

namespace mlir {
namespace index {

//===----------------------------------------------------------------------===//
// ::mlir::index::DivUOp declarations
//===----------------------------------------------------------------------===//

namespace detail {
class DivUOpGenericAdaptorBase {};
} // namespace detail
template <typename RangeT>
class DivUOpGenericAdaptor : public detail::DivUOpGenericAdaptorBase {};
class DivUOpAdaptor : public DivUOpGenericAdaptor<::mlir::ValueRange> {};
class DivUOp : public ::mlir::Op<DivUOp, ::mlir::OpTrait::ZeroRegions, ::mlir::OpTrait::OneResult, ::mlir::OpTrait::OneTypedResult<::mlir::IndexType>::Impl, ::mlir::OpTrait::ZeroSuccessors, ::mlir::OpTrait::NOperands<2>::Impl, ::mlir::OpTrait::OpInvariants, ::mlir::InferIntRangeInterface::Trait, ::mlir::MemoryEffectOpInterface::Trait, ::mlir::InferTypeOpInterface::Trait> {};
} // namespace index
} // namespace mlir
MLIR_DECLARE_EXPLICIT_TYPE_ID(::mlir::index::DivUOp)

namespace mlir {
namespace index {

//===----------------------------------------------------------------------===//
// ::mlir::index::FloorDivSOp declarations
//===----------------------------------------------------------------------===//

namespace detail {
class FloorDivSOpGenericAdaptorBase {};
} // namespace detail
template <typename RangeT>
class FloorDivSOpGenericAdaptor : public detail::FloorDivSOpGenericAdaptorBase {};
class FloorDivSOpAdaptor : public FloorDivSOpGenericAdaptor<::mlir::ValueRange> {};
class FloorDivSOp : public ::mlir::Op<FloorDivSOp, ::mlir::OpTrait::ZeroRegions, ::mlir::OpTrait::OneResult, ::mlir::OpTrait::OneTypedResult<::mlir::IndexType>::Impl, ::mlir::OpTrait::ZeroSuccessors, ::mlir::OpTrait::NOperands<2>::Impl, ::mlir::OpTrait::OpInvariants, ::mlir::InferIntRangeInterface::Trait, ::mlir::MemoryEffectOpInterface::Trait, ::mlir::InferTypeOpInterface::Trait> {};
} // namespace index
} // namespace mlir
MLIR_DECLARE_EXPLICIT_TYPE_ID(::mlir::index::FloorDivSOp)

namespace mlir {
namespace index {

//===----------------------------------------------------------------------===//
// ::mlir::index::MaxSOp declarations
//===----------------------------------------------------------------------===//

namespace detail {
class MaxSOpGenericAdaptorBase {};
} // namespace detail
template <typename RangeT>
class MaxSOpGenericAdaptor : public detail::MaxSOpGenericAdaptorBase {};
class MaxSOpAdaptor : public MaxSOpGenericAdaptor<::mlir::ValueRange> {};
class MaxSOp : public ::mlir::Op<MaxSOp, ::mlir::OpTrait::ZeroRegions, ::mlir::OpTrait::OneResult, ::mlir::OpTrait::OneTypedResult<::mlir::IndexType>::Impl, ::mlir::OpTrait::ZeroSuccessors, ::mlir::OpTrait::NOperands<2>::Impl, ::mlir::OpTrait::OpInvariants, ::mlir::InferIntRangeInterface::Trait, ::mlir::OpTrait::IsCommutative, ::mlir::ConditionallySpeculatable::Trait, ::mlir::OpTrait::AlwaysSpeculatableImplTrait, ::mlir::MemoryEffectOpInterface::Trait, ::mlir::InferTypeOpInterface::Trait> {};
} // namespace index
} // namespace mlir
MLIR_DECLARE_EXPLICIT_TYPE_ID(::mlir::index::MaxSOp)

namespace mlir {
namespace index {

//===----------------------------------------------------------------------===//
// ::mlir::index::MaxUOp declarations
//===----------------------------------------------------------------------===//

namespace detail {
class MaxUOpGenericAdaptorBase {};
} // namespace detail
template <typename RangeT>
class MaxUOpGenericAdaptor : public detail::MaxUOpGenericAdaptorBase {};
class MaxUOpAdaptor : public MaxUOpGenericAdaptor<::mlir::ValueRange> {};
class MaxUOp : public ::mlir::Op<MaxUOp, ::mlir::OpTrait::ZeroRegions, ::mlir::OpTrait::OneResult, ::mlir::OpTrait::OneTypedResult<::mlir::IndexType>::Impl, ::mlir::OpTrait::ZeroSuccessors, ::mlir::OpTrait::NOperands<2>::Impl, ::mlir::OpTrait::OpInvariants, ::mlir::InferIntRangeInterface::Trait, ::mlir::OpTrait::IsCommutative, ::mlir::ConditionallySpeculatable::Trait, ::mlir::OpTrait::AlwaysSpeculatableImplTrait, ::mlir::MemoryEffectOpInterface::Trait, ::mlir::InferTypeOpInterface::Trait> {};
} // namespace index
} // namespace mlir
MLIR_DECLARE_EXPLICIT_TYPE_ID(::mlir::index::MaxUOp)

namespace mlir {
namespace index {

//===----------------------------------------------------------------------===//
// ::mlir::index::MinSOp declarations
//===----------------------------------------------------------------------===//

namespace detail {
class MinSOpGenericAdaptorBase {};
} // namespace detail
template <typename RangeT>
class MinSOpGenericAdaptor : public detail::MinSOpGenericAdaptorBase {};
class MinSOpAdaptor : public MinSOpGenericAdaptor<::mlir::ValueRange> {};
class MinSOp : public ::mlir::Op<MinSOp, ::mlir::OpTrait::ZeroRegions, ::mlir::OpTrait::OneResult, ::mlir::OpTrait::OneTypedResult<::mlir::IndexType>::Impl, ::mlir::OpTrait::ZeroSuccessors, ::mlir::OpTrait::NOperands<2>::Impl, ::mlir::OpTrait::OpInvariants, ::mlir::InferIntRangeInterface::Trait, ::mlir::OpTrait::IsCommutative, ::mlir::ConditionallySpeculatable::Trait, ::mlir::OpTrait::AlwaysSpeculatableImplTrait, ::mlir::MemoryEffectOpInterface::Trait, ::mlir::InferTypeOpInterface::Trait> {};
} // namespace index
} // namespace mlir
MLIR_DECLARE_EXPLICIT_TYPE_ID(::mlir::index::MinSOp)

namespace mlir {
namespace index {

//===----------------------------------------------------------------------===//
// ::mlir::index::MinUOp declarations
//===----------------------------------------------------------------------===//

namespace detail {
class MinUOpGenericAdaptorBase {};
} // namespace detail
template <typename RangeT>
class MinUOpGenericAdaptor : public detail::MinUOpGenericAdaptorBase {};
class MinUOpAdaptor : public MinUOpGenericAdaptor<::mlir::ValueRange> {};
class MinUOp : public ::mlir::Op<MinUOp, ::mlir::OpTrait::ZeroRegions, ::mlir::OpTrait::OneResult, ::mlir::OpTrait::OneTypedResult<::mlir::IndexType>::Impl, ::mlir::OpTrait::ZeroSuccessors, ::mlir::OpTrait::NOperands<2>::Impl, ::mlir::OpTrait::OpInvariants, ::mlir::InferIntRangeInterface::Trait, ::mlir::OpTrait::IsCommutative, ::mlir::ConditionallySpeculatable::Trait, ::mlir::OpTrait::AlwaysSpeculatableImplTrait, ::mlir::MemoryEffectOpInterface::Trait, ::mlir::InferTypeOpInterface::Trait> {};
} // namespace index
} // namespace mlir
MLIR_DECLARE_EXPLICIT_TYPE_ID(::mlir::index::MinUOp)

namespace mlir {
namespace index {

//===----------------------------------------------------------------------===//
// ::mlir::index::MulOp declarations
//===----------------------------------------------------------------------===//

namespace detail {
class MulOpGenericAdaptorBase {};
} // namespace detail
template <typename RangeT>
class MulOpGenericAdaptor : public detail::MulOpGenericAdaptorBase {};
class MulOpAdaptor : public MulOpGenericAdaptor<::mlir::ValueRange> {};
class MulOp : public ::mlir::Op<MulOp, ::mlir::OpTrait::ZeroRegions, ::mlir::OpTrait::OneResult, ::mlir::OpTrait::OneTypedResult<::mlir::IndexType>::Impl, ::mlir::OpTrait::ZeroSuccessors, ::mlir::OpTrait::NOperands<2>::Impl, ::mlir::OpTrait::OpInvariants, ::mlir::InferIntRangeInterface::Trait, ::mlir::OpTrait::IsCommutative, ::mlir::ConditionallySpeculatable::Trait, ::mlir::OpTrait::AlwaysSpeculatableImplTrait, ::mlir::MemoryEffectOpInterface::Trait, ::mlir::InferTypeOpInterface::Trait> {};
} // namespace index
} // namespace mlir
MLIR_DECLARE_EXPLICIT_TYPE_ID(::mlir::index::MulOp)

namespace mlir {
namespace index {

//===----------------------------------------------------------------------===//
// ::mlir::index::OrOp declarations
//===----------------------------------------------------------------------===//

namespace detail {
class OrOpGenericAdaptorBase {};
} // namespace detail
template <typename RangeT>
class OrOpGenericAdaptor : public detail::OrOpGenericAdaptorBase {};
class OrOpAdaptor : public OrOpGenericAdaptor<::mlir::ValueRange> {};
class OrOp : public ::mlir::Op<OrOp, ::mlir::OpTrait::ZeroRegions, ::mlir::OpTrait::OneResult, ::mlir::OpTrait::OneTypedResult<::mlir::IndexType>::Impl, ::mlir::OpTrait::ZeroSuccessors, ::mlir::OpTrait::NOperands<2>::Impl, ::mlir::OpTrait::OpInvariants, ::mlir::InferIntRangeInterface::Trait, ::mlir::OpTrait::IsCommutative, ::mlir::ConditionallySpeculatable::Trait, ::mlir::OpTrait::AlwaysSpeculatableImplTrait, ::mlir::MemoryEffectOpInterface::Trait, ::mlir::InferTypeOpInterface::Trait> {};
} // namespace index
} // namespace mlir
MLIR_DECLARE_EXPLICIT_TYPE_ID(::mlir::index::OrOp)

namespace mlir {
namespace index {

//===----------------------------------------------------------------------===//
// ::mlir::index::RemSOp declarations
//===----------------------------------------------------------------------===//

namespace detail {
class RemSOpGenericAdaptorBase {};
} // namespace detail
template <typename RangeT>
class RemSOpGenericAdaptor : public detail::RemSOpGenericAdaptorBase {};
class RemSOpAdaptor : public RemSOpGenericAdaptor<::mlir::ValueRange> {};
class RemSOp : public ::mlir::Op<RemSOp, ::mlir::OpTrait::ZeroRegions, ::mlir::OpTrait::OneResult, ::mlir::OpTrait::OneTypedResult<::mlir::IndexType>::Impl, ::mlir::OpTrait::ZeroSuccessors, ::mlir::OpTrait::NOperands<2>::Impl, ::mlir::OpTrait::OpInvariants, ::mlir::InferIntRangeInterface::Trait, ::mlir::MemoryEffectOpInterface::Trait, ::mlir::InferTypeOpInterface::Trait> {};
} // namespace index
} // namespace mlir
MLIR_DECLARE_EXPLICIT_TYPE_ID(::mlir::index::RemSOp)

namespace mlir {
namespace index {

//===----------------------------------------------------------------------===//
// ::mlir::index::RemUOp declarations
//===----------------------------------------------------------------------===//

namespace detail {
class RemUOpGenericAdaptorBase {};
} // namespace detail
template <typename RangeT>
class RemUOpGenericAdaptor : public detail::RemUOpGenericAdaptorBase {};
class RemUOpAdaptor : public RemUOpGenericAdaptor<::mlir::ValueRange> {};
class RemUOp : public ::mlir::Op<RemUOp, ::mlir::OpTrait::ZeroRegions, ::mlir::OpTrait::OneResult, ::mlir::OpTrait::OneTypedResult<::mlir::IndexType>::Impl, ::mlir::OpTrait::ZeroSuccessors, ::mlir::OpTrait::NOperands<2>::Impl, ::mlir::OpTrait::OpInvariants, ::mlir::InferIntRangeInterface::Trait, ::mlir::MemoryEffectOpInterface::Trait, ::mlir::InferTypeOpInterface::Trait> {};
} // namespace index
} // namespace mlir
MLIR_DECLARE_EXPLICIT_TYPE_ID(::mlir::index::RemUOp)

namespace mlir {
namespace index {

//===----------------------------------------------------------------------===//
// ::mlir::index::ShlOp declarations
//===----------------------------------------------------------------------===//

namespace detail {
class ShlOpGenericAdaptorBase {};
} // namespace detail
template <typename RangeT>
class ShlOpGenericAdaptor : public detail::ShlOpGenericAdaptorBase {};
class ShlOpAdaptor : public ShlOpGenericAdaptor<::mlir::ValueRange> {};
class ShlOp : public ::mlir::Op<ShlOp, ::mlir::OpTrait::ZeroRegions, ::mlir::OpTrait::OneResult, ::mlir::OpTrait::OneTypedResult<::mlir::IndexType>::Impl, ::mlir::OpTrait::ZeroSuccessors, ::mlir::OpTrait::NOperands<2>::Impl, ::mlir::OpTrait::OpInvariants, ::mlir::InferIntRangeInterface::Trait, ::mlir::ConditionallySpeculatable::Trait, ::mlir::OpTrait::AlwaysSpeculatableImplTrait, ::mlir::MemoryEffectOpInterface::Trait, ::mlir::InferTypeOpInterface::Trait> {};
} // namespace index
} // namespace mlir
MLIR_DECLARE_EXPLICIT_TYPE_ID(::mlir::index::ShlOp)

namespace mlir {
namespace index {

//===----------------------------------------------------------------------===//
// ::mlir::index::ShrSOp declarations
//===----------------------------------------------------------------------===//

namespace detail {
class ShrSOpGenericAdaptorBase {};
} // namespace detail
template <typename RangeT>
class ShrSOpGenericAdaptor : public detail::ShrSOpGenericAdaptorBase {};
class ShrSOpAdaptor : public ShrSOpGenericAdaptor<::mlir::ValueRange> {};
class ShrSOp : public ::mlir::Op<ShrSOp, ::mlir::OpTrait::ZeroRegions, ::mlir::OpTrait::OneResult, ::mlir::OpTrait::OneTypedResult<::mlir::IndexType>::Impl, ::mlir::OpTrait::ZeroSuccessors, ::mlir::OpTrait::NOperands<2>::Impl, ::mlir::OpTrait::OpInvariants, ::mlir::InferIntRangeInterface::Trait, ::mlir::ConditionallySpeculatable::Trait, ::mlir::OpTrait::AlwaysSpeculatableImplTrait, ::mlir::MemoryEffectOpInterface::Trait, ::mlir::InferTypeOpInterface::Trait> {};
} // namespace index
} // namespace mlir
MLIR_DECLARE_EXPLICIT_TYPE_ID(::mlir::index::ShrSOp)

namespace mlir {
namespace index {

//===----------------------------------------------------------------------===//
// ::mlir::index::ShrUOp declarations
//===----------------------------------------------------------------------===//

namespace detail {
class ShrUOpGenericAdaptorBase {};
} // namespace detail
template <typename RangeT>
class ShrUOpGenericAdaptor : public detail::ShrUOpGenericAdaptorBase {};
class ShrUOpAdaptor : public ShrUOpGenericAdaptor<::mlir::ValueRange> {};
class ShrUOp : public ::mlir::Op<ShrUOp, ::mlir::OpTrait::ZeroRegions, ::mlir::OpTrait::OneResult, ::mlir::OpTrait::OneTypedResult<::mlir::IndexType>::Impl, ::mlir::OpTrait::ZeroSuccessors, ::mlir::OpTrait::NOperands<2>::Impl, ::mlir::OpTrait::OpInvariants, ::mlir::InferIntRangeInterface::Trait, ::mlir::ConditionallySpeculatable::Trait, ::mlir::OpTrait::AlwaysSpeculatableImplTrait, ::mlir::MemoryEffectOpInterface::Trait, ::mlir::InferTypeOpInterface::Trait> {};
} // namespace index
} // namespace mlir
MLIR_DECLARE_EXPLICIT_TYPE_ID(::mlir::index::ShrUOp)

namespace mlir {
namespace index {

//===----------------------------------------------------------------------===//
// ::mlir::index::SizeOfOp declarations
//===----------------------------------------------------------------------===//

namespace detail {
class SizeOfOpGenericAdaptorBase {};
} // namespace detail
template <typename RangeT>
class SizeOfOpGenericAdaptor : public detail::SizeOfOpGenericAdaptorBase {};
class SizeOfOpAdaptor : public SizeOfOpGenericAdaptor<::mlir::ValueRange> {};
class SizeOfOp : public ::mlir::Op<SizeOfOp, ::mlir::OpTrait::ZeroRegions, ::mlir::OpTrait::OneResult, ::mlir::OpTrait::OneTypedResult<::mlir::IndexType>::Impl, ::mlir::OpTrait::ZeroSuccessors, ::mlir::OpTrait::ZeroOperands, ::mlir::OpTrait::OpInvariants, ::mlir::InferIntRangeInterface::Trait, ::mlir::ConditionallySpeculatable::Trait, ::mlir::OpTrait::AlwaysSpeculatableImplTrait, ::mlir::MemoryEffectOpInterface::Trait, ::mlir::InferTypeOpInterface::Trait> {};
} // namespace index
} // namespace mlir
MLIR_DECLARE_EXPLICIT_TYPE_ID(::mlir::index::SizeOfOp)

namespace mlir {
namespace index {

//===----------------------------------------------------------------------===//
// ::mlir::index::SubOp declarations
//===----------------------------------------------------------------------===//

namespace detail {
class SubOpGenericAdaptorBase {};
} // namespace detail
template <typename RangeT>
class SubOpGenericAdaptor : public detail::SubOpGenericAdaptorBase {};
class SubOpAdaptor : public SubOpGenericAdaptor<::mlir::ValueRange> {};
class SubOp : public ::mlir::Op<SubOp, ::mlir::OpTrait::ZeroRegions, ::mlir::OpTrait::OneResult, ::mlir::OpTrait::OneTypedResult<::mlir::IndexType>::Impl, ::mlir::OpTrait::ZeroSuccessors, ::mlir::OpTrait::NOperands<2>::Impl, ::mlir::OpTrait::OpInvariants, ::mlir::InferIntRangeInterface::Trait, ::mlir::ConditionallySpeculatable::Trait, ::mlir::OpTrait::AlwaysSpeculatableImplTrait, ::mlir::MemoryEffectOpInterface::Trait, ::mlir::InferTypeOpInterface::Trait> {};
} // namespace index
} // namespace mlir
MLIR_DECLARE_EXPLICIT_TYPE_ID(::mlir::index::SubOp)

namespace mlir {
namespace index {

//===----------------------------------------------------------------------===//
// ::mlir::index::XOrOp declarations
//===----------------------------------------------------------------------===//

namespace detail {
class XOrOpGenericAdaptorBase {};
} // namespace detail
template <typename RangeT>
class XOrOpGenericAdaptor : public detail::XOrOpGenericAdaptorBase {};
class XOrOpAdaptor : public XOrOpGenericAdaptor<::mlir::ValueRange> {};
class XOrOp : public ::mlir::Op<XOrOp, ::mlir::OpTrait::ZeroRegions, ::mlir::OpTrait::OneResult, ::mlir::OpTrait::OneTypedResult<::mlir::IndexType>::Impl, ::mlir::OpTrait::ZeroSuccessors, ::mlir::OpTrait::NOperands<2>::Impl, ::mlir::OpTrait::OpInvariants, ::mlir::InferIntRangeInterface::Trait, ::mlir::OpTrait::IsCommutative, ::mlir::ConditionallySpeculatable::Trait, ::mlir::OpTrait::AlwaysSpeculatableImplTrait, ::mlir::MemoryEffectOpInterface::Trait, ::mlir::InferTypeOpInterface::Trait> {};
} // namespace index
} // namespace mlir
MLIR_DECLARE_EXPLICIT_TYPE_ID(::mlir::index::XOrOp)


#endif  // GET_OP_CLASSES