52 phase.emplace_back(std::make_unique<TypeInferencePass>());
53 phase.emplace_back(std::make_unique<ShapeInferencePass>());
56 phase.emplace_back(std::make_unique<AvgPool2DConverter>());
57 phase.emplace_back(std::make_unique<ConstGenConverter>());
58 phase.emplace_back(std::make_unique<Conv2DConverter>());
59 phase.emplace_back(std::make_unique<DepthwiseConv2DConverter>());
61 phase.emplace_back(std::make_unique<EltwiseAddConverter>());
62 phase.emplace_back(std::make_unique<EltwiseDivConverter>());
63 phase.emplace_back(std::make_unique<EltwiseMaxConverter>());
64 phase.emplace_back(std::make_unique<EltwiseMulConverter>());
65 phase.emplace_back(std::make_unique<EltwiseSqrtConverter>());
66 phase.emplace_back(std::make_unique<EltwiseSubConverter>());
67 phase.emplace_back(std::make_unique<FeatureBiasAddConverter>());
69 phase.emplace_back(std::make_unique<MatMulConverter>());
70 phase.emplace_back(std::make_unique<MaxPool2DConverter>());
71 phase.emplace_back(std::make_unique<ReluConverter>());
72 phase.emplace_back(std::make_unique<Relu6Converter>());
74 phase.emplace_back(std::make_unique<TensorConcatConverter>());
76 phase.emplace_back(std::make_unique<TensorBroadcastConverter>());
77 phase.emplace_back(std::make_unique<TensorReduceConverter>());
79 phase.emplace_back(std::make_unique<TensorTransposeConverter>());
80 phase.emplace_back(std::make_unique<TransposedConv2DConverter>());
83 phase.emplace_back(std::make_unique<logo::SimplifyDomainConversionPass>());
84 phase.emplace_back(std::make_unique<logo::RemoveForwardNodePass>());
85 phase.emplace_back(std::make_unique<logo::RemoveDeadNodePass>());
91 phase_runner.attach(&prog);
92 phase_runner.run(phase);