src/relay/backend/build_module.cc
std::unique_ptr<ExecutorCodegen> MakeExecutorCodegen(String executor_str) {
  std::unique_ptr<ExecutorCodegen> ret;
  if (executor_str == runtime::kTvmExecutorGraph) {
    ret = std::make_unique<GraphCodegen>();
  } else if (executor_str == runtime::kTvmExecutorAot) {
    ret = std::make_unique<AOTCodegen>();
  } else {
    CHECK(false) << "Executor " << executor_str << " not supported";
  }
  return ret;
}
/*!
 * \brief Executor codegen factory function
 */
\brief Executor codegen factory function
\ brief Executor codegen factory function
std::unique_ptr<ExecutorCodegen> MakeExecutorCodegen(String executor_str) {
  std::unique_ptr<ExecutorCodegen> ret;
  if (executor_str == runtime::kTvmExecutorGraph) {
    ret = std::make_unique<GraphCodegen>();
  } else if (executor_str == runtime::kTvmExecutorAot) {
    ret = std::make_unique<AOTCodegen>();
  } else {
    CHECK(false) << "Executor " << executor_str << " not supported";
  }
  return ret;
}
std :: unique_ptr < ExecutorCodegen > MakeExecutorCodegen ( String executor_str ) { std :: unique_ptr < ExecutorCodegen > ret ; if ( executor_str == runtime :: kTvmExecutorGraph ) { ret = std :: make_unique < GraphCodegen > ( ) ; } else if ( executor_str == runtime :: kTvmExecutorAot ) { ret = std :: make_unique < AOTCodegen > ( ) ; } else { CHECK ( false ) << " " << executor_str << " " ; } return ret ; }
\brief Executor codegen factory function
\ brief Executor codegen factory function