From 362290dda5280bf1ec8a0e64b06330a09abd1f8e Mon Sep 17 00:00:00 2001 From: Li Xiaoquan Date: Fri, 19 Apr 2019 15:47:16 +0800 Subject: [PATCH] [RELAY] Avoid unnecessarily reconstructing FunctionNode. --- src/relay/ir/expr_functor.cc | 12 ++++++------ 1 file changed, 6 insertions(+), 6 deletions(-) diff --git a/src/relay/ir/expr_functor.cc b/src/relay/ir/expr_functor.cc index 7a6250cd6580..e09d79082227 100644 --- a/src/relay/ir/expr_functor.cc +++ b/src/relay/ir/expr_functor.cc @@ -83,27 +83,27 @@ Expr ExprMutator::VisitExpr_(const TupleNode* op) { Expr ExprMutator::VisitExpr_(const FunctionNode* op) { tvm::Array ty_params; - bool all_ty_params_changed = true; + bool all_ty_params_unchanged = true; for (auto ty_param : op->type_params) { TypeVar new_ty_param = Downcast(VisitType(ty_param)); ty_params.push_back(new_ty_param); - all_ty_params_changed &= new_ty_param.same_as(ty_param); + all_ty_params_unchanged &= new_ty_param.same_as(ty_param); } tvm::Array params; - bool all_params_changed = true; + bool all_params_unchanged = true; for (auto param : op->params) { Var new_param = Downcast(this->Mutate(param)); params.push_back(new_param); - all_params_changed &= param.same_as(new_param); + all_params_unchanged &= param.same_as(new_param); } auto ret_type = this->VisitType(op->ret_type); auto body = this->Mutate(op->body); - if (ty_params.same_as(op->type_params) && - params.same_as(op->params) && + if (all_ty_params_unchanged && + all_params_unchanged && ret_type.same_as(op->ret_type) && body.same_as(op->body)) { return GetRef(op);