[moco-tf] Enable canonicalization for Add and Mul (#6096)
author박세희/On-Device Lab(SR)/Principal Engineer/삼성전자 <saehie.park@samsung.com>
Thu, 1 Aug 2019 05:44:53 +0000 (14:44 +0900)
committer박종현/On-Device Lab(SR)/Staff Engineer/삼성전자 <jh1302.park@samsung.com>
Thu, 1 Aug 2019 05:44:53 +0000 (14:44 +0900)
This will enable Canonicalization for TFAdd and TFMul node

Signed-off-by: SaeHie Park <saehie.park@samsung.com>
compiler/moco-tf/src/Canonicalizer.cpp

index 56c3aa6..89d6d63 100644 (file)
@@ -20,6 +20,7 @@
 #include "Phase.h"
 #include "Transforms.h"
 
+#include "Canonicalization/AddCanonicalizer.h"
 #include "Canonicalization/AvgPoolCanonicalizer.h"
 #include "Canonicalization/BiasAddCanonicalizer.h"
 #include "Canonicalization/ConstCanonicalizer.h"
@@ -27,6 +28,7 @@
 #include "Canonicalization/DepthwiseConv2dNativeCanonicalizer.h"
 #include "Canonicalization/IdentityCanonicalizer.h"
 #include "Canonicalization/MaxPoolCanonicalizer.h"
+#include "Canonicalization/MulCanonicalizer.h"
 
 #include "Dialect/TFDialect.h"
 #include "Dialect/TFNodes.h"
@@ -66,6 +68,7 @@ void Canonicalizer::canonicalize(loco::Graph *g) const
   moco::tf::Phase phase;
 
   /* TRANSFORM DECLARATION BEGIN */
+  phase.emplace_back(stdex::make_unique<AddCanonicalizer>());
   phase.emplace_back(stdex::make_unique<AvgPoolCanonicalizer>());
   phase.emplace_back(stdex::make_unique<BiasAddCanonicalizer>());
   phase.emplace_back(stdex::make_unique<ConstCanonicalizer>());
@@ -73,6 +76,7 @@ void Canonicalizer::canonicalize(loco::Graph *g) const
   phase.emplace_back(stdex::make_unique<DepthwiseConv2dNativeCanonicalizer>());
   phase.emplace_back(stdex::make_unique<IdentityCanonicalizer>());
   phase.emplace_back(stdex::make_unique<MaxPoolCanonicalizer>());
+  phase.emplace_back(stdex::make_unique<MulCanonicalizer>());
   /* TRANSFORM DECLARATION END */
 
   moco::tf::PhaseRunner<moco::tf::PhaseStrategy::Saturate> phase_runner{g};