Linalg: avoid deriving from MultiOperandTraitBase multiple times
authorLei Zhang <antiagainst@google.com>
Tue, 21 May 2019 11:42:04 +0000 (04:42 -0700)
committerMehdi Amini <joker.eph@gmail.com>
Sun, 2 Jun 2019 02:54:03 +0000 (19:54 -0700)
    The Op Definition Generator will automatically insert the VariadicOperands
    trait if an op has variadic operands or results. It already derives from
    MultiOperandTraitBase.

--

PiperOrigin-RevId: 249227268

mlir/include/mlir/Linalg/IR/LinalgTraits.h

index 0d557fb..7d99dc7 100644 (file)
@@ -35,8 +35,9 @@ namespace linalg {
 template <unsigned NInputs, unsigned NOutputs> class NInputsAndOutputs {
 public:
   template <typename ConcreteType>
-  class Impl : public OpTrait::detail::MultiOperandTraitBase<
-                   ConcreteType, NInputsAndOutputs<NInputs, NOutputs>::Impl> {
+  class Impl
+      : public OpTrait::TraitBase<ConcreteType,
+                                  NInputsAndOutputs<NInputs, NOutputs>::Impl> {
   public:
     static unsigned getNumInputs() { return NInputs; }
     static unsigned getNumOutputs() { return NOutputs; }