@@ -60,7 +60,7 @@ def Cinm_ElementwiseOp
6060 ];
6161}
6262
63- class Cinm_GemmlikeOp<string name, string cppClassName> : Cinm_Op<name,
63+ class Cinm_GemmlikeOp<string name, string cppClassName> : Cinm_Op<name,
6464 [
6565 Pure,
6666 InferTensorTypeAdaptor,
@@ -78,12 +78,12 @@ class Cinm_GemmlikeOp<string name, string cppClassName> : Cinm_Op<name,
7878 );
7979
8080 let results = (outs Optional<AnyRankedTensor>:$result);
81- let assemblyFormat =
81+ let assemblyFormat =
8282 "$lhs `,` $rhs (`plus` $bias^)? (`into` $out^)? attr-dict `:` type($lhs) `,` type($rhs) (`plus` type($bias)^)? (`into` type($out)^):(`->` type($result))?";
8383
8484 let skipDefaultBuilders = 1;
8585 let builders = [
86- OpBuilder<(ins "Value":$left, "Value":$right, "Value":$bias, "Value":$out),
86+ OpBuilder<(ins "Value":$left, "Value":$right, "Value":$bias, "Value":$out),
8787 "buildGemmLikeOp<" # cppClassName # ">($_builder, $_state, left, right, bias, out);">,
8888 OpBuilder<(ins "Value":$left, "Value":$right, "Value":$bias),
8989 "build($_builder, $_state, left, right, bias, Value{});">,
@@ -480,4 +480,20 @@ def Cinm_DequantizeOp : Cinm_Op<"op.dequantize", [Pure]> {
480480 let hasCustomAssemblyFormat = true;
481481}
482482
483+
484+ //===----------------------------------------------------------------------===//
485+ // SelectOp
486+ //===----------------------------------------------------------------------===//
487+
488+ def Cinm_SelectOp : Cinm_Op<"select", [Pure]> {
489+ let summary = "Select one of multiple child-regions depending on the cost-model estimates";
490+ let description = [{}];
491+
492+ let results = (outs Variadic<AnyType>:$results);
493+ let regions = (region VariadicRegion<AnyRegion>:$regions);
494+
495+ let assemblyFormat = "attr-dict `from` $regions (`->` type($results)^)?";
496+ }
497+
498+
483499#endif
0 commit comments