[enco] Simplify arguments of ANNModuleBuilder (#1776)
author박종현/동작제어Lab(SR)/Staff Engineer/삼성전자 <jh1302.park@samsung.com>
Mon, 8 Oct 2018 05:46:30 +0000 (14:46 +0900)
committerGitHub Enterprise <noreply-CODE@samsung.com>
Mon, 8 Oct 2018 05:46:30 +0000 (14:46 +0900)
coco::Code and coco::Data are never used inside ANNModuleBuilder.

Signed-off-by: Jonghyun Park <jh1302.park@samsung.com>
contrib/enco/core/src/Transforms/Split.cpp

index a48959b..d9c54d2 100644 (file)
@@ -517,21 +517,12 @@ void ANNGroupBuilder::build(void) const
 
 class ANNModuleBuilder
 {
-public:
-  ANNModuleBuilder(enco::Code *code) : _code{code}
-  {
-    // DO NOTHING
-  }
-
 private:
   std::set<coco::Bag *> inputs(coco::Block *blk) const;
   std::set<coco::Bag *> outputs(coco::Block *blk) const;
 
 public:
-  void build(void) const;
-
-private:
-  enco::Code *_code;
+  void build(ANNContext *ann_ctx) const;
 };
 
 std::set<coco::Bag *> ANNModuleBuilder::inputs(coco::Block *blk) const
@@ -580,11 +571,11 @@ std::set<coco::Bag *> ANNModuleBuilder::outputs(coco::Block *blk) const
   return res;
 }
 
-void ANNModuleBuilder::build(void) const
+void ANNModuleBuilder::build(ANNContext *ann_ctx) const
 {
-  for (uint32_t n = 0; n < _code->ann()->count(); ++n)
+  for (uint32_t n = 0; n < ann_ctx->count(); ++n)
   {
-    auto binder = _code->ann()->nth(n);
+    auto binder = ann_ctx->nth(n);
     auto block = binder->block();
 
     // Let's identify input/output bags
@@ -603,8 +594,8 @@ void SplitPass::runOnCode(enco::Code *code) const
   ANNGroupBuilder group_builder{code};
   group_builder.build();
 
-  ANNModuleBuilder module_builder{code};
-  module_builder.build();
+  ANNModuleBuilder module_builder;
+  module_builder.build(code->ann());
 }
 
 } // namespace enco