2019-12-21 14:58:23 +08:00
|
|
|
if (OpName == "DUMMY") {
|
|
|
|
}else if (OpName == "Abs") {
|
|
|
|
ImportNodeOneOut<mlir::ONNXAbsOp>(node, 1, 1, {
|
|
|
|
});
|
2019-11-19 10:08:21 +08:00
|
|
|
}else if (OpName == "Acos") {
|
2019-12-21 14:58:23 +08:00
|
|
|
ImportNodeOneOut<mlir::ONNXAcosOp>(node, 1, 1, {
|
|
|
|
});
|
2019-11-19 10:08:21 +08:00
|
|
|
}else if (OpName == "Acosh") {
|
2019-12-21 14:58:23 +08:00
|
|
|
ImportNodeOneOut<mlir::ONNXAcoshOp>(node, 1, 1, {
|
|
|
|
});
|
2019-11-19 10:08:21 +08:00
|
|
|
}else if (OpName == "Add") {
|
2019-12-21 14:58:23 +08:00
|
|
|
ImportNodeOneOut<mlir::ONNXAddOp>(node, 2, 1, {
|
|
|
|
});
|
2019-11-19 10:08:21 +08:00
|
|
|
}else if (OpName == "And") {
|
2019-12-21 14:58:23 +08:00
|
|
|
ImportNodeOneOut<mlir::ONNXAndOp>(node, 2, 1, {
|
|
|
|
});
|
2019-11-19 10:08:21 +08:00
|
|
|
}else if (OpName == "ArgMax") {
|
2019-12-21 14:58:23 +08:00
|
|
|
ImportNodeOneOut<mlir::ONNXArgMaxOp>(node, 1, 1, {
|
2020-01-22 10:36:21 +08:00
|
|
|
{"axis", 0}
|
|
|
|
,{"keepdims", 1}
|
2019-12-21 14:58:23 +08:00
|
|
|
});
|
2019-11-19 10:08:21 +08:00
|
|
|
}else if (OpName == "ArgMin") {
|
2019-12-21 14:58:23 +08:00
|
|
|
ImportNodeOneOut<mlir::ONNXArgMinOp>(node, 1, 1, {
|
2020-01-22 10:36:21 +08:00
|
|
|
{"axis", 0}
|
|
|
|
,{"keepdims", 1}
|
2019-12-21 14:58:23 +08:00
|
|
|
});
|
2019-11-19 10:08:21 +08:00
|
|
|
}else if (OpName == "Asin") {
|
2019-12-21 14:58:23 +08:00
|
|
|
ImportNodeOneOut<mlir::ONNXAsinOp>(node, 1, 1, {
|
|
|
|
});
|
2019-11-19 10:08:21 +08:00
|
|
|
}else if (OpName == "Asinh") {
|
2019-12-21 14:58:23 +08:00
|
|
|
ImportNodeOneOut<mlir::ONNXAsinhOp>(node, 1, 1, {
|
|
|
|
});
|
2019-11-19 10:08:21 +08:00
|
|
|
}else if (OpName == "Atan") {
|
2019-12-21 14:58:23 +08:00
|
|
|
ImportNodeOneOut<mlir::ONNXAtanOp>(node, 1, 1, {
|
|
|
|
});
|
2019-11-19 10:08:21 +08:00
|
|
|
}else if (OpName == "Atanh") {
|
2019-12-21 14:58:23 +08:00
|
|
|
ImportNodeOneOut<mlir::ONNXAtanhOp>(node, 1, 1, {
|
|
|
|
});
|
2019-11-19 10:08:21 +08:00
|
|
|
}else if (OpName == "AveragePool") {
|
2019-12-21 14:58:23 +08:00
|
|
|
ImportNodeOneOut<mlir::ONNXAveragePoolOp>(node, 1, 1, {
|
2020-01-22 10:36:21 +08:00
|
|
|
{"auto_pad", "NOTSET"}
|
|
|
|
,{"ceil_mode", 0}
|
|
|
|
,{"count_include_pad", 0}
|
|
|
|
,{"kernel_shape", std::vector<int64_t> {}}
|
2019-12-21 14:58:23 +08:00
|
|
|
});
|
2019-11-19 10:08:21 +08:00
|
|
|
}else if (OpName == "BatchNormalization") {
|
2019-12-21 14:58:23 +08:00
|
|
|
ImportNodeMultipleOuts<mlir::ONNXBatchNormalizationOp>(node, 5, 5, {
|
2020-01-22 10:36:21 +08:00
|
|
|
{"epsilon", (float)1e-05}
|
|
|
|
,{"momentum", (float)0.9}
|
2019-12-21 14:58:23 +08:00
|
|
|
});
|
2019-11-19 10:08:21 +08:00
|
|
|
}else if (OpName == "BitShift") {
|
2019-12-21 14:58:23 +08:00
|
|
|
ImportNodeOneOut<mlir::ONNXBitShiftOp>(node, 2, 1, {
|
|
|
|
});
|
2019-11-19 10:08:21 +08:00
|
|
|
}else if (OpName == "Cast") {
|
2019-12-21 14:58:23 +08:00
|
|
|
ImportNodeOneOut<mlir::ONNXCastOp>(node, 1, 1, {
|
2020-01-22 10:36:21 +08:00
|
|
|
{"to", 0}
|
2019-12-21 14:58:23 +08:00
|
|
|
});
|
2019-11-19 10:08:21 +08:00
|
|
|
}else if (OpName == "Ceil") {
|
2019-12-21 14:58:23 +08:00
|
|
|
ImportNodeOneOut<mlir::ONNXCeilOp>(node, 1, 1, {
|
|
|
|
});
|
2019-11-19 10:08:21 +08:00
|
|
|
}else if (OpName == "Clip") {
|
2019-12-21 14:58:23 +08:00
|
|
|
ImportNodeOneOut<mlir::ONNXClipOp>(node, 3, 1, {
|
|
|
|
});
|
2019-11-19 10:08:21 +08:00
|
|
|
}else if (OpName == "Compress") {
|
2019-12-21 14:58:23 +08:00
|
|
|
ImportNodeOneOut<mlir::ONNXCompressOp>(node, 2, 1, {
|
|
|
|
});
|
2019-11-19 10:08:21 +08:00
|
|
|
}else if (OpName == "Concat") {
|
2019-12-21 14:58:23 +08:00
|
|
|
ImportNodeOneOut<mlir::ONNXConcatOp>(node, 1, 1, {
|
2020-01-22 10:36:21 +08:00
|
|
|
{"axis", 0}
|
2019-12-21 14:58:23 +08:00
|
|
|
});
|
2019-11-19 10:08:21 +08:00
|
|
|
}else if (OpName == "ConcatFromSequence") {
|
2019-12-21 14:58:23 +08:00
|
|
|
ImportNodeOneOut<mlir::ONNXConcatFromSequenceOp>(node, 1, 1, {
|
2020-01-22 10:36:21 +08:00
|
|
|
{"new_axis", 0}
|
2019-12-21 14:58:23 +08:00
|
|
|
});
|
2019-11-19 10:08:21 +08:00
|
|
|
}else if (OpName == "Constant") {
|
2019-12-21 14:58:23 +08:00
|
|
|
ImportNodeOneOut<mlir::ONNXConstantOp>(node, 0, 1, {
|
|
|
|
});
|
2019-11-19 10:08:21 +08:00
|
|
|
}else if (OpName == "ConstantOfShape") {
|
2019-12-21 14:58:23 +08:00
|
|
|
ImportNodeOneOut<mlir::ONNXConstantOfShapeOp>(node, 1, 1, {
|
|
|
|
});
|
2019-11-19 10:08:21 +08:00
|
|
|
}else if (OpName == "Conv") {
|
2020-01-22 10:36:21 +08:00
|
|
|
ImportNodeConv(node, 3, 1, {
|
|
|
|
{"auto_pad", "NOTSET"}
|
|
|
|
,{"group", 1}
|
2019-12-21 14:58:23 +08:00
|
|
|
});
|
2019-11-19 10:08:21 +08:00
|
|
|
}else if (OpName == "ConvInteger") {
|
2019-12-21 14:58:23 +08:00
|
|
|
ImportNodeOneOut<mlir::ONNXConvIntegerOp>(node, 4, 1, {
|
2020-01-22 10:36:21 +08:00
|
|
|
{"auto_pad", "NOTSET"}
|
|
|
|
,{"group", 1}
|
2019-12-21 14:58:23 +08:00
|
|
|
});
|
2019-11-19 10:08:21 +08:00
|
|
|
}else if (OpName == "ConvTranspose") {
|
2019-12-21 14:58:23 +08:00
|
|
|
ImportNodeOneOut<mlir::ONNXConvTransposeOp>(node, 3, 1, {
|
2020-01-22 10:36:21 +08:00
|
|
|
{"auto_pad", "NOTSET"}
|
|
|
|
,{"group", 1}
|
2019-12-21 14:58:23 +08:00
|
|
|
});
|
2019-11-19 10:08:21 +08:00
|
|
|
}else if (OpName == "Cos") {
|
2019-12-21 14:58:23 +08:00
|
|
|
ImportNodeOneOut<mlir::ONNXCosOp>(node, 1, 1, {
|
|
|
|
});
|
2019-11-19 10:08:21 +08:00
|
|
|
}else if (OpName == "Cosh") {
|
2019-12-21 14:58:23 +08:00
|
|
|
ImportNodeOneOut<mlir::ONNXCoshOp>(node, 1, 1, {
|
|
|
|
});
|
2019-11-19 10:08:21 +08:00
|
|
|
}else if (OpName == "CumSum") {
|
2019-12-21 14:58:23 +08:00
|
|
|
ImportNodeOneOut<mlir::ONNXCumSumOp>(node, 2, 1, {
|
2020-01-22 10:36:21 +08:00
|
|
|
{"exclusive", 0}
|
|
|
|
,{"reverse", 0}
|
2019-12-21 14:58:23 +08:00
|
|
|
});
|
2019-11-19 10:08:21 +08:00
|
|
|
}else if (OpName == "DepthToSpace") {
|
2019-12-21 14:58:23 +08:00
|
|
|
ImportNodeOneOut<mlir::ONNXDepthToSpaceOp>(node, 1, 1, {
|
2020-01-22 10:36:21 +08:00
|
|
|
{"mode", "DCR"}
|
2019-12-21 14:58:23 +08:00
|
|
|
});
|
2019-11-19 10:08:21 +08:00
|
|
|
}else if (OpName == "DequantizeLinear") {
|
2019-12-21 14:58:23 +08:00
|
|
|
ImportNodeOneOut<mlir::ONNXDequantizeLinearOp>(node, 3, 1, {
|
|
|
|
});
|
2019-11-19 10:08:21 +08:00
|
|
|
}else if (OpName == "Det") {
|
2019-12-21 14:58:23 +08:00
|
|
|
ImportNodeOneOut<mlir::ONNXDetOp>(node, 1, 1, {
|
|
|
|
});
|
2019-11-19 10:08:21 +08:00
|
|
|
}else if (OpName == "Div") {
|
2019-12-21 14:58:23 +08:00
|
|
|
ImportNodeOneOut<mlir::ONNXDivOp>(node, 2, 1, {
|
|
|
|
});
|
2019-11-19 10:08:21 +08:00
|
|
|
}else if (OpName == "Dropout") {
|
2019-12-21 14:58:23 +08:00
|
|
|
ImportNodeMultipleOuts<mlir::ONNXDropoutOp>(node, 1, 2, {
|
2020-01-22 10:36:21 +08:00
|
|
|
{"ratio", (float)0.5}
|
2019-12-21 14:58:23 +08:00
|
|
|
});
|
2019-11-19 10:08:21 +08:00
|
|
|
}else if (OpName == "DynamicQuantizeLinear") {
|
2019-12-21 14:58:23 +08:00
|
|
|
ImportNodeMultipleOuts<mlir::ONNXDynamicQuantizeLinearOp>(node, 1, 3, {
|
|
|
|
});
|
2019-11-19 10:08:21 +08:00
|
|
|
}else if (OpName == "Elu") {
|
2019-12-21 14:58:23 +08:00
|
|
|
ImportNodeOneOut<mlir::ONNXEluOp>(node, 1, 1, {
|
2020-01-22 10:36:21 +08:00
|
|
|
{"alpha", (float)1.0}
|
2019-12-21 14:58:23 +08:00
|
|
|
});
|
2019-11-19 10:08:21 +08:00
|
|
|
}else if (OpName == "Equal") {
|
2019-12-21 14:58:23 +08:00
|
|
|
ImportNodeOneOut<mlir::ONNXEqualOp>(node, 2, 1, {
|
|
|
|
});
|
2019-11-19 10:08:21 +08:00
|
|
|
}else if (OpName == "Erf") {
|
2019-12-21 14:58:23 +08:00
|
|
|
ImportNodeOneOut<mlir::ONNXErfOp>(node, 1, 1, {
|
|
|
|
});
|
2019-11-19 10:08:21 +08:00
|
|
|
}else if (OpName == "Exp") {
|
2019-12-21 14:58:23 +08:00
|
|
|
ImportNodeOneOut<mlir::ONNXExpOp>(node, 1, 1, {
|
|
|
|
});
|
2019-11-19 10:08:21 +08:00
|
|
|
}else if (OpName == "Expand") {
|
2019-12-21 14:58:23 +08:00
|
|
|
ImportNodeOneOut<mlir::ONNXExpandOp>(node, 2, 1, {
|
|
|
|
});
|
2019-11-19 10:08:21 +08:00
|
|
|
}else if (OpName == "EyeLike") {
|
2019-12-21 14:58:23 +08:00
|
|
|
ImportNodeOneOut<mlir::ONNXEyeLikeOp>(node, 1, 1, {
|
2020-01-22 10:36:21 +08:00
|
|
|
{"k", 0}
|
2019-12-21 14:58:23 +08:00
|
|
|
});
|
2019-11-19 10:08:21 +08:00
|
|
|
}else if (OpName == "Flatten") {
|
2019-12-21 14:58:23 +08:00
|
|
|
ImportNodeOneOut<mlir::ONNXFlattenOp>(node, 1, 1, {
|
2020-01-22 10:36:21 +08:00
|
|
|
{"axis", 1}
|
2019-12-21 14:58:23 +08:00
|
|
|
});
|
2019-11-19 10:08:21 +08:00
|
|
|
}else if (OpName == "Floor") {
|
2019-12-21 14:58:23 +08:00
|
|
|
ImportNodeOneOut<mlir::ONNXFloorOp>(node, 1, 1, {
|
|
|
|
});
|
2019-11-19 10:08:21 +08:00
|
|
|
}else if (OpName == "GRU") {
|
2019-12-21 14:58:23 +08:00
|
|
|
ImportNodeMultipleOuts<mlir::ONNXGRUOp>(node, 6, 2, {
|
2020-01-22 10:36:21 +08:00
|
|
|
{"direction", "forward"}
|
|
|
|
,{"linear_before_reset", 0}
|
2019-12-21 14:58:23 +08:00
|
|
|
});
|
2019-11-19 10:08:21 +08:00
|
|
|
}else if (OpName == "Gather") {
|
2019-12-21 14:58:23 +08:00
|
|
|
ImportNodeOneOut<mlir::ONNXGatherOp>(node, 2, 1, {
|
2020-01-22 10:36:21 +08:00
|
|
|
{"axis", 0}
|
2019-12-21 14:58:23 +08:00
|
|
|
});
|
2019-11-19 10:08:21 +08:00
|
|
|
}else if (OpName == "GatherElements") {
|
2019-12-21 14:58:23 +08:00
|
|
|
ImportNodeOneOut<mlir::ONNXGatherElementsOp>(node, 2, 1, {
|
2020-01-22 10:36:21 +08:00
|
|
|
{"axis", 0}
|
2019-12-21 14:58:23 +08:00
|
|
|
});
|
2019-11-19 10:08:21 +08:00
|
|
|
}else if (OpName == "GatherND") {
|
2019-12-21 14:58:23 +08:00
|
|
|
ImportNodeOneOut<mlir::ONNXGatherNDOp>(node, 2, 1, {
|
|
|
|
});
|
2019-11-19 10:08:21 +08:00
|
|
|
}else if (OpName == "Gemm") {
|
2019-12-21 14:58:23 +08:00
|
|
|
ImportNodeOneOut<mlir::ONNXGemmOp>(node, 3, 1, {
|
2020-01-22 10:36:21 +08:00
|
|
|
{"alpha", (float)1.0}
|
|
|
|
,{"beta", (float)1.0}
|
|
|
|
,{"transA", 0}
|
|
|
|
,{"transB", 0}
|
2019-12-21 14:58:23 +08:00
|
|
|
});
|
2019-11-19 10:08:21 +08:00
|
|
|
}else if (OpName == "GlobalAveragePool") {
|
2019-12-21 14:58:23 +08:00
|
|
|
ImportNodeOneOut<mlir::ONNXGlobalAveragePoolOp>(node, 1, 1, {
|
|
|
|
});
|
2019-11-19 10:08:21 +08:00
|
|
|
}else if (OpName == "GlobalLpPool") {
|
2019-12-21 14:58:23 +08:00
|
|
|
ImportNodeOneOut<mlir::ONNXGlobalLpPoolOp>(node, 1, 1, {
|
2020-01-22 10:36:21 +08:00
|
|
|
{"p", 2}
|
2019-12-21 14:58:23 +08:00
|
|
|
});
|
2019-11-19 10:08:21 +08:00
|
|
|
}else if (OpName == "GlobalMaxPool") {
|
2019-12-21 14:58:23 +08:00
|
|
|
ImportNodeOneOut<mlir::ONNXGlobalMaxPoolOp>(node, 1, 1, {
|
|
|
|
});
|
2019-11-19 10:08:21 +08:00
|
|
|
}else if (OpName == "Greater") {
|
2019-12-21 14:58:23 +08:00
|
|
|
ImportNodeOneOut<mlir::ONNXGreaterOp>(node, 2, 1, {
|
|
|
|
});
|
2019-11-19 10:08:21 +08:00
|
|
|
}else if (OpName == "HardSigmoid") {
|
2019-12-21 14:58:23 +08:00
|
|
|
ImportNodeOneOut<mlir::ONNXHardSigmoidOp>(node, 1, 1, {
|
2020-01-22 10:36:21 +08:00
|
|
|
{"alpha", (float)0.2}
|
|
|
|
,{"beta", (float)0.5}
|
2019-12-21 14:58:23 +08:00
|
|
|
});
|
2019-11-19 10:08:21 +08:00
|
|
|
}else if (OpName == "Hardmax") {
|
2019-12-21 14:58:23 +08:00
|
|
|
ImportNodeOneOut<mlir::ONNXHardmaxOp>(node, 1, 1, {
|
2020-01-22 10:36:21 +08:00
|
|
|
{"axis", 1}
|
2019-12-21 14:58:23 +08:00
|
|
|
});
|
2019-11-19 10:08:21 +08:00
|
|
|
}else if (OpName == "Identity") {
|
2019-12-21 14:58:23 +08:00
|
|
|
ImportNodeOneOut<mlir::ONNXIdentityOp>(node, 1, 1, {
|
|
|
|
});
|
2019-11-19 10:08:21 +08:00
|
|
|
}else if (OpName == "If") {
|
2019-12-21 14:58:23 +08:00
|
|
|
ImportNodeOneOut<mlir::ONNXIfOp>(node, 1, 1, {
|
|
|
|
});
|
2019-11-19 10:08:21 +08:00
|
|
|
}else if (OpName == "InstanceNormalization") {
|
2019-12-21 14:58:23 +08:00
|
|
|
ImportNodeOneOut<mlir::ONNXInstanceNormalizationOp>(node, 3, 1, {
|
2020-01-22 10:36:21 +08:00
|
|
|
{"epsilon", (float)1e-05}
|
2019-12-21 14:58:23 +08:00
|
|
|
});
|
2019-11-19 10:08:21 +08:00
|
|
|
}else if (OpName == "IsInf") {
|
2019-12-21 14:58:23 +08:00
|
|
|
ImportNodeOneOut<mlir::ONNXIsInfOp>(node, 1, 1, {
|
2020-01-22 10:36:21 +08:00
|
|
|
{"detect_negative", 1}
|
|
|
|
,{"detect_positive", 1}
|
2019-12-21 14:58:23 +08:00
|
|
|
});
|
2019-11-19 10:08:21 +08:00
|
|
|
}else if (OpName == "IsNaN") {
|
2019-12-21 14:58:23 +08:00
|
|
|
ImportNodeOneOut<mlir::ONNXIsNaNOp>(node, 1, 1, {
|
|
|
|
});
|
2019-11-19 10:08:21 +08:00
|
|
|
}else if (OpName == "LRN") {
|
2019-12-21 14:58:23 +08:00
|
|
|
ImportNodeOneOut<mlir::ONNXLRNOp>(node, 1, 1, {
|
2020-01-22 10:36:21 +08:00
|
|
|
{"alpha", (float)0.0001}
|
|
|
|
,{"beta", (float)0.75}
|
|
|
|
,{"bias", (float)1.0}
|
2019-12-21 14:58:23 +08:00
|
|
|
});
|
2019-11-19 10:08:21 +08:00
|
|
|
}else if (OpName == "LSTM") {
|
2019-12-21 14:58:23 +08:00
|
|
|
ImportNodeMultipleOuts<mlir::ONNXLSTMOp>(node, 8, 3, {
|
2020-01-22 10:36:21 +08:00
|
|
|
{"direction", "forward"}
|
|
|
|
,{"input_forget", 0}
|
2019-12-21 14:58:23 +08:00
|
|
|
});
|
2019-11-19 10:08:21 +08:00
|
|
|
}else if (OpName == "LeakyRelu") {
|
2019-12-21 14:58:23 +08:00
|
|
|
ImportNodeOneOut<mlir::ONNXLeakyReluOp>(node, 1, 1, {
|
2020-01-22 10:36:21 +08:00
|
|
|
{"alpha", (float)0.01}
|
2019-12-21 14:58:23 +08:00
|
|
|
});
|
2019-11-19 10:08:21 +08:00
|
|
|
}else if (OpName == "Less") {
|
2019-12-21 14:58:23 +08:00
|
|
|
ImportNodeOneOut<mlir::ONNXLessOp>(node, 2, 1, {
|
|
|
|
});
|
2019-11-19 10:08:21 +08:00
|
|
|
}else if (OpName == "Log") {
|
2019-12-21 14:58:23 +08:00
|
|
|
ImportNodeOneOut<mlir::ONNXLogOp>(node, 1, 1, {
|
|
|
|
});
|
2019-11-19 10:08:21 +08:00
|
|
|
}else if (OpName == "LogSoftmax") {
|
2019-12-21 14:58:23 +08:00
|
|
|
ImportNodeOneOut<mlir::ONNXLogSoftmaxOp>(node, 1, 1, {
|
2020-01-22 10:36:21 +08:00
|
|
|
{"axis", 1}
|
2019-12-21 14:58:23 +08:00
|
|
|
});
|
2019-11-19 10:08:21 +08:00
|
|
|
}else if (OpName == "Loop") {
|
2019-12-21 14:58:23 +08:00
|
|
|
ImportNodeOneOut<mlir::ONNXLoopOp>(node, 3, 1, {
|
|
|
|
});
|
2019-11-19 10:08:21 +08:00
|
|
|
}else if (OpName == "LpNormalization") {
|
2019-12-21 14:58:23 +08:00
|
|
|
ImportNodeOneOut<mlir::ONNXLpNormalizationOp>(node, 1, 1, {
|
2020-01-22 10:36:21 +08:00
|
|
|
{"axis", -1}
|
|
|
|
,{"p", 2}
|
2019-12-21 14:58:23 +08:00
|
|
|
});
|
2019-11-19 10:08:21 +08:00
|
|
|
}else if (OpName == "LpPool") {
|
2019-12-21 14:58:23 +08:00
|
|
|
ImportNodeOneOut<mlir::ONNXLpPoolOp>(node, 1, 1, {
|
2020-01-22 10:36:21 +08:00
|
|
|
{"auto_pad", "NOTSET"}
|
|
|
|
,{"p", 2}
|
2019-12-21 14:58:23 +08:00
|
|
|
});
|
2019-11-19 10:08:21 +08:00
|
|
|
}else if (OpName == "MatMul") {
|
2019-12-21 14:58:23 +08:00
|
|
|
ImportNodeOneOut<mlir::ONNXMatMulOp>(node, 2, 1, {
|
|
|
|
});
|
2019-11-19 10:08:21 +08:00
|
|
|
}else if (OpName == "MatMulInteger") {
|
2019-12-21 14:58:23 +08:00
|
|
|
ImportNodeOneOut<mlir::ONNXMatMulIntegerOp>(node, 4, 1, {
|
|
|
|
});
|
2019-11-19 10:08:21 +08:00
|
|
|
}else if (OpName == "Max") {
|
2019-12-21 14:58:23 +08:00
|
|
|
ImportNodeOneOut<mlir::ONNXMaxOp>(node, 1, 1, {
|
|
|
|
});
|
2019-11-19 10:08:21 +08:00
|
|
|
}else if (OpName == "MaxPool") {
|
2020-01-22 10:36:21 +08:00
|
|
|
ImportNodeMaxPool(node, 1, 2, {
|
|
|
|
{"auto_pad", "NOTSET"}
|
|
|
|
,{"ceil_mode", 0}
|
|
|
|
,{"kernel_shape", std::vector<int64_t> {}}
|
|
|
|
,{"storage_order", 0}
|
2019-12-21 14:58:23 +08:00
|
|
|
});
|
2019-11-19 10:08:21 +08:00
|
|
|
}else if (OpName == "MaxRoiPool") {
|
2019-12-21 14:58:23 +08:00
|
|
|
ImportNodeOneOut<mlir::ONNXMaxRoiPoolOp>(node, 2, 1, {
|
2020-01-22 10:36:21 +08:00
|
|
|
{"spatial_scale", (float)1.0}
|
2019-12-21 14:58:23 +08:00
|
|
|
});
|
2019-11-19 10:08:21 +08:00
|
|
|
}else if (OpName == "MaxUnpool") {
|
2019-12-21 14:58:23 +08:00
|
|
|
ImportNodeOneOut<mlir::ONNXMaxUnpoolOp>(node, 3, 1, {
|
|
|
|
});
|
2019-11-19 10:08:21 +08:00
|
|
|
}else if (OpName == "Mean") {
|
2019-12-21 14:58:23 +08:00
|
|
|
ImportNodeOneOut<mlir::ONNXMeanOp>(node, 1, 1, {
|
|
|
|
});
|
2019-11-19 10:08:21 +08:00
|
|
|
}else if (OpName == "MeanVarianceNormalization") {
|
2019-12-21 14:58:23 +08:00
|
|
|
ImportNodeOneOut<mlir::ONNXMeanVarianceNormalizationOp>(node, 1, 1, {
|
2020-01-22 10:36:21 +08:00
|
|
|
{"axes", std::vector<int64_t>{0, 2, 3}}
|
2019-12-21 14:58:23 +08:00
|
|
|
});
|
2019-11-19 10:08:21 +08:00
|
|
|
}else if (OpName == "Min") {
|
2019-12-21 14:58:23 +08:00
|
|
|
ImportNodeOneOut<mlir::ONNXMinOp>(node, 1, 1, {
|
|
|
|
});
|
2019-11-19 10:08:21 +08:00
|
|
|
}else if (OpName == "Mod") {
|
2019-12-21 14:58:23 +08:00
|
|
|
ImportNodeOneOut<mlir::ONNXModOp>(node, 2, 1, {
|
2020-01-22 10:36:21 +08:00
|
|
|
{"fmod", 0}
|
2019-12-21 14:58:23 +08:00
|
|
|
});
|
2019-11-19 10:08:21 +08:00
|
|
|
}else if (OpName == "Mul") {
|
2019-12-21 14:58:23 +08:00
|
|
|
ImportNodeOneOut<mlir::ONNXMulOp>(node, 2, 1, {
|
|
|
|
});
|
2019-11-19 10:08:21 +08:00
|
|
|
}else if (OpName == "Multinomial") {
|
2019-12-21 14:58:23 +08:00
|
|
|
ImportNodeOneOut<mlir::ONNXMultinomialOp>(node, 1, 1, {
|
2020-01-22 10:36:21 +08:00
|
|
|
{"dtype", 6}
|
|
|
|
,{"sample_size", 1}
|
2019-12-21 14:58:23 +08:00
|
|
|
});
|
2019-11-19 10:08:21 +08:00
|
|
|
}else if (OpName == "Neg") {
|
2019-12-21 14:58:23 +08:00
|
|
|
ImportNodeOneOut<mlir::ONNXNegOp>(node, 1, 1, {
|
|
|
|
});
|
2019-11-19 10:08:21 +08:00
|
|
|
}else if (OpName == "NonMaxSuppression") {
|
2019-12-21 14:58:23 +08:00
|
|
|
ImportNodeOneOut<mlir::ONNXNonMaxSuppressionOp>(node, 5, 1, {
|
2020-01-22 10:36:21 +08:00
|
|
|
{"center_point_box", 0}
|
2019-12-21 14:58:23 +08:00
|
|
|
});
|
2019-11-19 10:08:21 +08:00
|
|
|
}else if (OpName == "NonZero") {
|
2019-12-21 14:58:23 +08:00
|
|
|
ImportNodeOneOut<mlir::ONNXNonZeroOp>(node, 1, 1, {
|
|
|
|
});
|
2019-11-19 10:08:21 +08:00
|
|
|
}else if (OpName == "Not") {
|
2019-12-21 14:58:23 +08:00
|
|
|
ImportNodeOneOut<mlir::ONNXNotOp>(node, 1, 1, {
|
|
|
|
});
|
2019-11-19 10:08:21 +08:00
|
|
|
}else if (OpName == "OneHot") {
|
2019-12-21 14:58:23 +08:00
|
|
|
ImportNodeOneOut<mlir::ONNXOneHotOp>(node, 3, 1, {
|
2020-01-22 10:36:21 +08:00
|
|
|
{"axis", -1}
|
2019-12-21 14:58:23 +08:00
|
|
|
});
|
2019-11-19 10:08:21 +08:00
|
|
|
}else if (OpName == "Or") {
|
2019-12-21 14:58:23 +08:00
|
|
|
ImportNodeOneOut<mlir::ONNXOrOp>(node, 2, 1, {
|
|
|
|
});
|
2019-11-19 10:08:21 +08:00
|
|
|
}else if (OpName == "PRelu") {
|
2019-12-21 14:58:23 +08:00
|
|
|
ImportNodeOneOut<mlir::ONNXPReluOp>(node, 2, 1, {
|
|
|
|
});
|
2019-11-19 10:08:21 +08:00
|
|
|
}else if (OpName == "Pad") {
|
2019-12-21 14:58:23 +08:00
|
|
|
ImportNodeOneOut<mlir::ONNXPadOp>(node, 3, 1, {
|
2020-01-22 10:36:21 +08:00
|
|
|
{"mode", "constant"}
|
2019-12-21 14:58:23 +08:00
|
|
|
});
|
2019-11-19 10:08:21 +08:00
|
|
|
}else if (OpName == "Pow") {
|
2019-12-21 14:58:23 +08:00
|
|
|
ImportNodeOneOut<mlir::ONNXPowOp>(node, 2, 1, {
|
|
|
|
});
|
2019-11-19 10:08:21 +08:00
|
|
|
}else if (OpName == "QLinearConv") {
|
2019-12-21 14:58:23 +08:00
|
|
|
ImportNodeOneOut<mlir::ONNXQLinearConvOp>(node, 9, 1, {
|
2020-01-22 10:36:21 +08:00
|
|
|
{"auto_pad", "NOTSET"}
|
|
|
|
,{"group", 1}
|
2019-12-21 14:58:23 +08:00
|
|
|
});
|
2019-11-19 10:08:21 +08:00
|
|
|
}else if (OpName == "QLinearMatMul") {
|
2019-12-21 14:58:23 +08:00
|
|
|
ImportNodeOneOut<mlir::ONNXQLinearMatMulOp>(node, 8, 1, {
|
|
|
|
});
|
2019-11-19 10:08:21 +08:00
|
|
|
}else if (OpName == "QuantizeLinear") {
|
2019-12-21 14:58:23 +08:00
|
|
|
ImportNodeOneOut<mlir::ONNXQuantizeLinearOp>(node, 3, 1, {
|
|
|
|
});
|
2019-11-19 10:08:21 +08:00
|
|
|
}else if (OpName == "RNN") {
|
2019-12-21 14:58:23 +08:00
|
|
|
ImportNodeMultipleOuts<mlir::ONNXRNNOp>(node, 6, 2, {
|
2020-01-22 10:36:21 +08:00
|
|
|
{"activation_alpha", std::vector<float> {}}
|
|
|
|
,{"activation_beta", std::vector<float> {}}
|
|
|
|
,{"activations", std::vector<std::string>{"Tanh", "Tanh"}}
|
|
|
|
,{"direction", "forward"}
|
2019-12-21 14:58:23 +08:00
|
|
|
});
|
2019-11-19 10:08:21 +08:00
|
|
|
}else if (OpName == "RandomNormal") {
|
2019-12-21 14:58:23 +08:00
|
|
|
ImportNodeOneOut<mlir::ONNXRandomNormalOp>(node, 0, 1, {
|
2020-01-22 10:36:21 +08:00
|
|
|
{"dtype", 1}
|
|
|
|
,{"mean", (float)0.0}
|
|
|
|
,{"scale", (float)1.0}
|
2019-12-21 14:58:23 +08:00
|
|
|
});
|
2019-11-19 10:08:21 +08:00
|
|
|
}else if (OpName == "RandomNormalLike") {
|
2019-12-21 14:58:23 +08:00
|
|
|
ImportNodeOneOut<mlir::ONNXRandomNormalLikeOp>(node, 1, 1, {
|
2020-01-22 10:36:21 +08:00
|
|
|
{"mean", (float)0.0}
|
|
|
|
,{"scale", (float)1.0}
|
2019-12-21 14:58:23 +08:00
|
|
|
});
|
2019-11-19 10:08:21 +08:00
|
|
|
}else if (OpName == "RandomUniform") {
|
2019-12-21 14:58:23 +08:00
|
|
|
ImportNodeOneOut<mlir::ONNXRandomUniformOp>(node, 0, 1, {
|
2020-01-22 10:36:21 +08:00
|
|
|
{"dtype", 1}
|
|
|
|
,{"high", (float)1.0}
|
|
|
|
,{"low", (float)0.0}
|
2019-12-21 14:58:23 +08:00
|
|
|
});
|
2019-11-19 10:08:21 +08:00
|
|
|
}else if (OpName == "RandomUniformLike") {
|
2019-12-21 14:58:23 +08:00
|
|
|
ImportNodeOneOut<mlir::ONNXRandomUniformLikeOp>(node, 1, 1, {
|
2020-01-22 10:36:21 +08:00
|
|
|
{"high", (float)1.0}
|
|
|
|
,{"low", (float)0.0}
|
2019-12-21 14:58:23 +08:00
|
|
|
});
|
2019-11-19 10:08:21 +08:00
|
|
|
}else if (OpName == "Range") {
|
2019-12-21 14:58:23 +08:00
|
|
|
ImportNodeOneOut<mlir::ONNXRangeOp>(node, 3, 1, {
|
|
|
|
});
|
2019-11-19 10:08:21 +08:00
|
|
|
}else if (OpName == "Reciprocal") {
|
2019-12-21 14:58:23 +08:00
|
|
|
ImportNodeOneOut<mlir::ONNXReciprocalOp>(node, 1, 1, {
|
|
|
|
});
|
2019-11-19 10:08:21 +08:00
|
|
|
}else if (OpName == "ReduceL1") {
|
2019-12-21 14:58:23 +08:00
|
|
|
ImportNodeOneOut<mlir::ONNXReduceL1Op>(node, 1, 1, {
|
2020-01-22 10:36:21 +08:00
|
|
|
{"keepdims", 1}
|
2019-12-21 14:58:23 +08:00
|
|
|
});
|
2019-11-19 10:08:21 +08:00
|
|
|
}else if (OpName == "ReduceL2") {
|
2019-12-21 14:58:23 +08:00
|
|
|
ImportNodeOneOut<mlir::ONNXReduceL2Op>(node, 1, 1, {
|
2020-01-22 10:36:21 +08:00
|
|
|
{"keepdims", 1}
|
2019-12-21 14:58:23 +08:00
|
|
|
});
|
2019-11-19 10:08:21 +08:00
|
|
|
}else if (OpName == "ReduceLogSum") {
|
2019-12-21 14:58:23 +08:00
|
|
|
ImportNodeOneOut<mlir::ONNXReduceLogSumOp>(node, 1, 1, {
|
2020-01-22 10:36:21 +08:00
|
|
|
{"keepdims", 1}
|
2019-12-21 14:58:23 +08:00
|
|
|
});
|
2019-11-19 10:08:21 +08:00
|
|
|
}else if (OpName == "ReduceLogSumExp") {
|
2019-12-21 14:58:23 +08:00
|
|
|
ImportNodeOneOut<mlir::ONNXReduceLogSumExpOp>(node, 1, 1, {
|
2020-01-22 10:36:21 +08:00
|
|
|
{"keepdims", 1}
|
2019-12-21 14:58:23 +08:00
|
|
|
});
|
2019-11-19 10:08:21 +08:00
|
|
|
}else if (OpName == "ReduceMax") {
|
2019-12-21 14:58:23 +08:00
|
|
|
ImportNodeOneOut<mlir::ONNXReduceMaxOp>(node, 1, 1, {
|
2020-01-22 10:36:21 +08:00
|
|
|
{"keepdims", 1}
|
2019-12-21 14:58:23 +08:00
|
|
|
});
|
2019-11-19 10:08:21 +08:00
|
|
|
}else if (OpName == "ReduceMean") {
|
2019-12-21 14:58:23 +08:00
|
|
|
ImportNodeOneOut<mlir::ONNXReduceMeanOp>(node, 1, 1, {
|
2020-01-22 10:36:21 +08:00
|
|
|
{"keepdims", 1}
|
2019-12-21 14:58:23 +08:00
|
|
|
});
|
2019-11-19 10:08:21 +08:00
|
|
|
}else if (OpName == "ReduceMin") {
|
2019-12-21 14:58:23 +08:00
|
|
|
ImportNodeOneOut<mlir::ONNXReduceMinOp>(node, 1, 1, {
|
2020-01-22 10:36:21 +08:00
|
|
|
{"keepdims", 1}
|
2019-12-21 14:58:23 +08:00
|
|
|
});
|
2019-11-19 10:08:21 +08:00
|
|
|
}else if (OpName == "ReduceProd") {
|
2019-12-21 14:58:23 +08:00
|
|
|
ImportNodeOneOut<mlir::ONNXReduceProdOp>(node, 1, 1, {
|
2020-01-22 10:36:21 +08:00
|
|
|
{"keepdims", 1}
|
2019-12-21 14:58:23 +08:00
|
|
|
});
|
2019-11-19 10:08:21 +08:00
|
|
|
}else if (OpName == "ReduceSum") {
|
2019-12-21 14:58:23 +08:00
|
|
|
ImportNodeOneOut<mlir::ONNXReduceSumOp>(node, 1, 1, {
|
2020-01-22 10:36:21 +08:00
|
|
|
{"keepdims", 1}
|
2019-12-21 14:58:23 +08:00
|
|
|
});
|
2019-11-19 10:08:21 +08:00
|
|
|
}else if (OpName == "ReduceSumSquare") {
|
2019-12-21 14:58:23 +08:00
|
|
|
ImportNodeOneOut<mlir::ONNXReduceSumSquareOp>(node, 1, 1, {
|
2020-01-22 10:36:21 +08:00
|
|
|
{"keepdims", 1}
|
2019-12-21 14:58:23 +08:00
|
|
|
});
|
2019-11-19 10:08:21 +08:00
|
|
|
}else if (OpName == "Relu") {
|
2019-12-21 14:58:23 +08:00
|
|
|
ImportNodeOneOut<mlir::ONNXReluOp>(node, 1, 1, {
|
|
|
|
});
|
2019-11-19 10:08:21 +08:00
|
|
|
}else if (OpName == "Reshape") {
|
2019-12-21 14:58:23 +08:00
|
|
|
ImportNodeOneOut<mlir::ONNXReshapeOp>(node, 2, 1, {
|
|
|
|
});
|
2019-11-19 10:08:21 +08:00
|
|
|
}else if (OpName == "Resize") {
|
2019-12-21 14:58:23 +08:00
|
|
|
ImportNodeOneOut<mlir::ONNXResizeOp>(node, 4, 1, {
|
2020-01-22 10:36:21 +08:00
|
|
|
{"coordinate_transformation_mode", "half_pixel"}
|
|
|
|
,{"cubic_coeff_a", (float)-0.75}
|
|
|
|
,{"exclude_outside", 0}
|
|
|
|
,{"extrapolation_value", (float)0.0}
|
|
|
|
,{"mode", "nearest"}
|
|
|
|
,{"nearest_mode", "round_prefer_floor"}
|
2019-12-21 14:58:23 +08:00
|
|
|
});
|
2019-11-19 10:08:21 +08:00
|
|
|
}else if (OpName == "ReverseSequence") {
|
2019-12-21 14:58:23 +08:00
|
|
|
ImportNodeOneOut<mlir::ONNXReverseSequenceOp>(node, 2, 1, {
|
2020-01-22 10:36:21 +08:00
|
|
|
{"batch_axis", 1}
|
|
|
|
,{"time_axis", 0}
|
2019-12-21 14:58:23 +08:00
|
|
|
});
|
2019-11-19 10:08:21 +08:00
|
|
|
}else if (OpName == "RoiAlign") {
|
2019-12-21 14:58:23 +08:00
|
|
|
ImportNodeOneOut<mlir::ONNXRoiAlignOp>(node, 3, 1, {
|
2020-01-22 10:36:21 +08:00
|
|
|
{"mode", "avg"}
|
|
|
|
,{"output_height", 1}
|
|
|
|
,{"output_width", 1}
|
|
|
|
,{"sampling_ratio", 0}
|
|
|
|
,{"spatial_scale", (float)1.0}
|
2019-12-21 14:58:23 +08:00
|
|
|
});
|
2019-11-19 10:08:21 +08:00
|
|
|
}else if (OpName == "Round") {
|
2019-12-21 14:58:23 +08:00
|
|
|
ImportNodeOneOut<mlir::ONNXRoundOp>(node, 1, 1, {
|
|
|
|
});
|
2019-11-19 10:08:21 +08:00
|
|
|
}else if (OpName == "Scan") {
|
2019-12-21 14:58:23 +08:00
|
|
|
ImportNodeOneOut<mlir::ONNXScanOp>(node, 1, 1, {
|
|
|
|
});
|
2019-11-19 10:08:21 +08:00
|
|
|
}else if (OpName == "Scatter") {
|
2019-12-21 14:58:23 +08:00
|
|
|
ImportNodeOneOut<mlir::ONNXScatterOp>(node, 3, 1, {
|
2020-01-22 10:36:21 +08:00
|
|
|
{"axis", 0}
|
2019-12-21 14:58:23 +08:00
|
|
|
});
|
2019-11-19 10:08:21 +08:00
|
|
|
}else if (OpName == "ScatterElements") {
|
2019-12-21 14:58:23 +08:00
|
|
|
ImportNodeOneOut<mlir::ONNXScatterElementsOp>(node, 3, 1, {
|
2020-01-22 10:36:21 +08:00
|
|
|
{"axis", 0}
|
2019-12-21 14:58:23 +08:00
|
|
|
});
|
2019-11-19 10:08:21 +08:00
|
|
|
}else if (OpName == "ScatterND") {
|
2019-12-21 14:58:23 +08:00
|
|
|
ImportNodeOneOut<mlir::ONNXScatterNDOp>(node, 3, 1, {
|
|
|
|
});
|
2019-11-19 10:08:21 +08:00
|
|
|
}else if (OpName == "Selu") {
|
2019-12-21 14:58:23 +08:00
|
|
|
ImportNodeOneOut<mlir::ONNXSeluOp>(node, 1, 1, {
|
2020-01-22 10:36:21 +08:00
|
|
|
{"alpha", (float)1.67326}
|
|
|
|
,{"gamma", (float)1.0507}
|
2019-12-21 14:58:23 +08:00
|
|
|
});
|
2019-11-19 10:08:21 +08:00
|
|
|
}else if (OpName == "SequenceAt") {
|
2019-12-21 14:58:23 +08:00
|
|
|
ImportNodeOneOut<mlir::ONNXSequenceAtOp>(node, 2, 1, {
|
|
|
|
});
|
2019-11-19 10:08:21 +08:00
|
|
|
}else if (OpName == "SequenceConstruct") {
|
2019-12-21 14:58:23 +08:00
|
|
|
ImportNodeOneOut<mlir::ONNXSequenceConstructOp>(node, 1, 1, {
|
|
|
|
});
|
2019-11-19 10:08:21 +08:00
|
|
|
}else if (OpName == "SequenceEmpty") {
|
2019-12-21 14:58:23 +08:00
|
|
|
ImportNodeOneOut<mlir::ONNXSequenceEmptyOp>(node, 0, 1, {
|
|
|
|
});
|
2019-11-19 10:08:21 +08:00
|
|
|
}else if (OpName == "SequenceErase") {
|
2019-12-21 14:58:23 +08:00
|
|
|
ImportNodeOneOut<mlir::ONNXSequenceEraseOp>(node, 2, 1, {
|
|
|
|
});
|
2019-11-19 10:08:21 +08:00
|
|
|
}else if (OpName == "SequenceInsert") {
|
2019-12-21 14:58:23 +08:00
|
|
|
ImportNodeOneOut<mlir::ONNXSequenceInsertOp>(node, 3, 1, {
|
|
|
|
});
|
2019-11-19 10:08:21 +08:00
|
|
|
}else if (OpName == "SequenceLength") {
|
2019-12-21 14:58:23 +08:00
|
|
|
ImportNodeOneOut<mlir::ONNXSequenceLengthOp>(node, 1, 1, {
|
|
|
|
});
|
2019-11-19 10:08:21 +08:00
|
|
|
}else if (OpName == "Shape") {
|
2019-12-21 14:58:23 +08:00
|
|
|
ImportNodeOneOut<mlir::ONNXShapeOp>(node, 1, 1, {
|
|
|
|
});
|
2019-11-19 10:08:21 +08:00
|
|
|
}else if (OpName == "Shrink") {
|
2019-12-21 14:58:23 +08:00
|
|
|
ImportNodeOneOut<mlir::ONNXShrinkOp>(node, 1, 1, {
|
2020-01-22 10:36:21 +08:00
|
|
|
{"bias", (float)0.0}
|
|
|
|
,{"lambd", (float)0.5}
|
2019-12-21 14:58:23 +08:00
|
|
|
});
|
2019-11-19 10:08:21 +08:00
|
|
|
}else if (OpName == "Sigmoid") {
|
2019-12-21 14:58:23 +08:00
|
|
|
ImportNodeOneOut<mlir::ONNXSigmoidOp>(node, 1, 1, {
|
|
|
|
});
|
2019-11-19 10:08:21 +08:00
|
|
|
}else if (OpName == "Sign") {
|
2019-12-21 14:58:23 +08:00
|
|
|
ImportNodeOneOut<mlir::ONNXSignOp>(node, 1, 1, {
|
|
|
|
});
|
2019-11-19 10:08:21 +08:00
|
|
|
}else if (OpName == "Sin") {
|
2019-12-21 14:58:23 +08:00
|
|
|
ImportNodeOneOut<mlir::ONNXSinOp>(node, 1, 1, {
|
|
|
|
});
|
2019-11-19 10:08:21 +08:00
|
|
|
}else if (OpName == "Sinh") {
|
2019-12-21 14:58:23 +08:00
|
|
|
ImportNodeOneOut<mlir::ONNXSinhOp>(node, 1, 1, {
|
|
|
|
});
|
2019-11-19 10:08:21 +08:00
|
|
|
}else if (OpName == "Size") {
|
2019-12-21 14:58:23 +08:00
|
|
|
ImportNodeOneOut<mlir::ONNXSizeOp>(node, 1, 1, {
|
|
|
|
});
|
2019-11-19 10:08:21 +08:00
|
|
|
}else if (OpName == "Slice") {
|
2019-12-21 14:58:23 +08:00
|
|
|
ImportNodeOneOut<mlir::ONNXSliceOp>(node, 5, 1, {
|
|
|
|
});
|
2019-11-19 10:08:21 +08:00
|
|
|
}else if (OpName == "Softmax") {
|
2019-12-21 14:58:23 +08:00
|
|
|
ImportNodeOneOut<mlir::ONNXSoftmaxOp>(node, 1, 1, {
|
2020-01-22 10:36:21 +08:00
|
|
|
{"axis", 1}
|
2019-12-21 14:58:23 +08:00
|
|
|
});
|
2019-11-19 10:08:21 +08:00
|
|
|
}else if (OpName == "Softplus") {
|
2019-12-21 14:58:23 +08:00
|
|
|
ImportNodeOneOut<mlir::ONNXSoftplusOp>(node, 1, 1, {
|
|
|
|
});
|
2019-11-19 10:08:21 +08:00
|
|
|
}else if (OpName == "Softsign") {
|
2019-12-21 14:58:23 +08:00
|
|
|
ImportNodeOneOut<mlir::ONNXSoftsignOp>(node, 1, 1, {
|
|
|
|
});
|
2019-11-19 10:08:21 +08:00
|
|
|
}else if (OpName == "SpaceToDepth") {
|
2019-12-21 14:58:23 +08:00
|
|
|
ImportNodeOneOut<mlir::ONNXSpaceToDepthOp>(node, 1, 1, {
|
|
|
|
});
|
2019-11-19 10:08:21 +08:00
|
|
|
}else if (OpName == "Split") {
|
2019-12-21 14:58:23 +08:00
|
|
|
ImportNodeOneOut<mlir::ONNXSplitOp>(node, 1, 1, {
|
2020-01-22 10:36:21 +08:00
|
|
|
{"axis", 0}
|
2019-12-21 14:58:23 +08:00
|
|
|
});
|
2019-11-19 10:08:21 +08:00
|
|
|
}else if (OpName == "SplitToSequence") {
|
2019-12-21 14:58:23 +08:00
|
|
|
ImportNodeOneOut<mlir::ONNXSplitToSequenceOp>(node, 2, 1, {
|
2020-01-22 10:36:21 +08:00
|
|
|
{"axis", 0}
|
|
|
|
,{"keepdims", 1}
|
2019-12-21 14:58:23 +08:00
|
|
|
});
|
2019-11-19 10:08:21 +08:00
|
|
|
}else if (OpName == "Sqrt") {
|
2019-12-21 14:58:23 +08:00
|
|
|
ImportNodeOneOut<mlir::ONNXSqrtOp>(node, 1, 1, {
|
|
|
|
});
|
2019-11-19 10:08:21 +08:00
|
|
|
}else if (OpName == "Squeeze") {
|
2019-12-21 14:58:23 +08:00
|
|
|
ImportNodeOneOut<mlir::ONNXSqueezeOp>(node, 1, 1, {
|
|
|
|
});
|
2019-11-19 10:08:21 +08:00
|
|
|
}else if (OpName == "StringNormalizer") {
|
2019-12-21 14:58:23 +08:00
|
|
|
ImportNodeOneOut<mlir::ONNXStringNormalizerOp>(node, 1, 1, {
|
2020-01-22 10:36:21 +08:00
|
|
|
{"case_change_action", "NONE"}
|
|
|
|
,{"is_case_sensitive", 0}
|
2019-12-21 14:58:23 +08:00
|
|
|
});
|
2019-11-19 10:08:21 +08:00
|
|
|
}else if (OpName == "Sub") {
|
2019-12-21 14:58:23 +08:00
|
|
|
ImportNodeOneOut<mlir::ONNXSubOp>(node, 2, 1, {
|
|
|
|
});
|
2019-11-19 10:08:21 +08:00
|
|
|
}else if (OpName == "Sum") {
|
2019-12-21 14:58:23 +08:00
|
|
|
ImportNodeOneOut<mlir::ONNXSumOp>(node, 1, 1, {
|
|
|
|
});
|
2019-11-19 10:08:21 +08:00
|
|
|
}else if (OpName == "Tan") {
|
2019-12-21 14:58:23 +08:00
|
|
|
ImportNodeOneOut<mlir::ONNXTanOp>(node, 1, 1, {
|
|
|
|
});
|
2019-11-19 10:08:21 +08:00
|
|
|
}else if (OpName == "Tanh") {
|
2019-12-21 14:58:23 +08:00
|
|
|
ImportNodeOneOut<mlir::ONNXTanhOp>(node, 1, 1, {
|
|
|
|
});
|
2019-11-19 10:08:21 +08:00
|
|
|
}else if (OpName == "TfIdfVectorizer") {
|
2019-12-21 14:58:23 +08:00
|
|
|
ImportNodeOneOut<mlir::ONNXTfIdfVectorizerOp>(node, 1, 1, {
|
|
|
|
});
|
2019-11-19 10:08:21 +08:00
|
|
|
}else if (OpName == "ThresholdedRelu") {
|
2019-12-21 14:58:23 +08:00
|
|
|
ImportNodeOneOut<mlir::ONNXThresholdedReluOp>(node, 1, 1, {
|
2020-01-22 10:36:21 +08:00
|
|
|
{"alpha", (float)1.0}
|
2019-12-21 14:58:23 +08:00
|
|
|
});
|
2019-11-19 10:08:21 +08:00
|
|
|
}else if (OpName == "Tile") {
|
2019-12-21 14:58:23 +08:00
|
|
|
ImportNodeOneOut<mlir::ONNXTileOp>(node, 2, 1, {
|
|
|
|
});
|
2019-11-19 10:08:21 +08:00
|
|
|
}else if (OpName == "TopK") {
|
2019-12-21 14:58:23 +08:00
|
|
|
ImportNodeMultipleOuts<mlir::ONNXTopKOp>(node, 2, 2, {
|
2020-01-22 10:36:21 +08:00
|
|
|
{"axis", -1}
|
|
|
|
,{"largest", 1}
|
|
|
|
,{"sorted", 1}
|
2019-12-21 14:58:23 +08:00
|
|
|
});
|
2019-11-19 10:08:21 +08:00
|
|
|
}else if (OpName == "Transpose") {
|
2019-12-21 14:58:23 +08:00
|
|
|
ImportNodeOneOut<mlir::ONNXTransposeOp>(node, 1, 1, {
|
|
|
|
});
|
2019-11-19 10:08:21 +08:00
|
|
|
}else if (OpName == "Unique") {
|
2019-12-21 14:58:23 +08:00
|
|
|
ImportNodeMultipleOuts<mlir::ONNXUniqueOp>(node, 1, 4, {
|
2020-01-22 10:36:21 +08:00
|
|
|
{"sorted", 1}
|
2019-12-21 14:58:23 +08:00
|
|
|
});
|
2019-11-19 10:08:21 +08:00
|
|
|
}else if (OpName == "Unsqueeze") {
|
2019-12-21 14:58:23 +08:00
|
|
|
ImportNodeOneOut<mlir::ONNXUnsqueezeOp>(node, 1, 1, {
|
2020-01-22 10:36:21 +08:00
|
|
|
{"axes", std::vector<int64_t> {}}
|
2019-12-21 14:58:23 +08:00
|
|
|
});
|
2019-11-19 10:08:21 +08:00
|
|
|
}else if (OpName == "Upsample") {
|
2019-12-21 14:58:23 +08:00
|
|
|
ImportNodeOneOut<mlir::ONNXUpsampleOp>(node, 2, 1, {
|
2020-01-22 10:36:21 +08:00
|
|
|
{"mode", "nearest"}
|
2019-12-21 14:58:23 +08:00
|
|
|
});
|
2019-11-19 10:08:21 +08:00
|
|
|
}else if (OpName == "Where") {
|
2019-12-21 14:58:23 +08:00
|
|
|
ImportNodeOneOut<mlir::ONNXWhereOp>(node, 3, 1, {
|
|
|
|
});
|
2019-11-19 10:08:21 +08:00
|
|
|
}else if (OpName == "Xor") {
|
2019-12-21 14:58:23 +08:00
|
|
|
ImportNodeOneOut<mlir::ONNXXorOp>(node, 2, 1, {
|
|
|
|
});
|
2020-01-22 10:36:21 +08:00
|
|
|
}
|