From 52ca089ab586deaabcf528b39f633a5d9cade537 Mon Sep 17 00:00:00 2001 From: Frank Date: Fri, 3 Sep 2021 11:10:30 +0800 Subject: [PATCH 1/5] Add a non-recursive Let VisitExpr_ for LabelOps --- src/relay/transforms/label_ops.cc | 19 +++++++++++++++++++ 1 file changed, 19 insertions(+) diff --git a/src/relay/transforms/label_ops.cc b/src/relay/transforms/label_ops.cc index 861342b03a76..b23b1d92e77a 100644 --- a/src/relay/transforms/label_ops.cc +++ b/src/relay/transforms/label_ops.cc @@ -77,6 +77,25 @@ class LabelOpsMutator : public MixedModeMutator { } return std::move(f); } + Expr VisitExpr_(const LetNode* op) final { + auto pre_visit = [this](const LetNode* op) { + this->Mutate(op->var); + this->Mutate(op->value); + }; + auto post_visit = [this](const LetNode* op) { + Var var = Downcast(this->Mutate(op->var)); + auto value = this->Mutate(op->value); + auto body = this->Mutate(op->body); + auto expr = GetRef(op); + if (var.same_as(op->var) && value.same_as(op->value) && body.same_as(op->body)) { + this->memo_[expr] = expr; + } else { + this->memo_[expr] = Let(var, value, body); + } + }; + ExpandANormalForm(op, pre_visit, post_visit); + return memo_[GetRef(op)]; + } Expr Rewrite_(const CallNode* op, const Expr& post) final { auto updated = MixedModeMutator::Rewrite_(op, post); From 99611e1e612446da4778188a1d8baad0b4c15dc6 Mon Sep 17 00:00:00 2001 From: Frank Date: Sat, 4 Sep 2021 18:51:17 +0800 Subject: [PATCH 2/5] fake commit to retrigger CI --- src/relay/transforms/label_ops.cc | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/relay/transforms/label_ops.cc b/src/relay/transforms/label_ops.cc index b23b1d92e77a..fb1066722e86 100644 --- a/src/relay/transforms/label_ops.cc +++ b/src/relay/transforms/label_ops.cc @@ -95,7 +95,7 @@ class LabelOpsMutator : public MixedModeMutator { }; ExpandANormalForm(op, pre_visit, post_visit); return memo_[GetRef(op)]; - } + } Expr Rewrite_(const CallNode* op, const Expr& post) final { auto updated = MixedModeMutator::Rewrite_(op, post); From a146ab8c62cee2a9d6d788580a96966c30b4e186 Mon Sep 17 00:00:00 2001 From: Frank Date: Sat, 4 Sep 2021 18:56:50 +0800 Subject: [PATCH 3/5] fake commit to retrigger the CI --- src/relay/transforms/label_ops.cc | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/relay/transforms/label_ops.cc b/src/relay/transforms/label_ops.cc index fb1066722e86..b23b1d92e77a 100644 --- a/src/relay/transforms/label_ops.cc +++ b/src/relay/transforms/label_ops.cc @@ -95,7 +95,7 @@ class LabelOpsMutator : public MixedModeMutator { }; ExpandANormalForm(op, pre_visit, post_visit); return memo_[GetRef(op)]; - } + } Expr Rewrite_(const CallNode* op, const Expr& post) final { auto updated = MixedModeMutator::Rewrite_(op, post); From 763a7f31c9d67674b44163e5589ca2969e80fa70 Mon Sep 17 00:00:00 2001 From: Frank Date: Mon, 6 Sep 2021 23:50:16 +0800 Subject: [PATCH 4/5] fix CI issue --- src/relay/transforms/label_ops.cc | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/relay/transforms/label_ops.cc b/src/relay/transforms/label_ops.cc index b23b1d92e77a..fb1066722e86 100644 --- a/src/relay/transforms/label_ops.cc +++ b/src/relay/transforms/label_ops.cc @@ -95,7 +95,7 @@ class LabelOpsMutator : public MixedModeMutator { }; ExpandANormalForm(op, pre_visit, post_visit); return memo_[GetRef(op)]; - } + } Expr Rewrite_(const CallNode* op, const Expr& post) final { auto updated = MixedModeMutator::Rewrite_(op, post); From 2b2c491a2f264405e3934dc80e616be9f0d33f10 Mon Sep 17 00:00:00 2001 From: Frank Date: Mon, 6 Sep 2021 23:50:57 +0800 Subject: [PATCH 5/5] fix CI issue --- src/relay/transforms/label_ops.cc | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/relay/transforms/label_ops.cc b/src/relay/transforms/label_ops.cc index fb1066722e86..b23b1d92e77a 100644 --- a/src/relay/transforms/label_ops.cc +++ b/src/relay/transforms/label_ops.cc @@ -95,7 +95,7 @@ class LabelOpsMutator : public MixedModeMutator { }; ExpandANormalForm(op, pre_visit, post_visit); return memo_[GetRef(op)]; - } + } Expr Rewrite_(const CallNode* op, const Expr& post) final { auto updated = MixedModeMutator::Rewrite_(op, post);