!18064 Fix param elimination bug, caused by non-refnode count err

Merge pull request !18064 from liangzelang/gpt3_assign
This commit is contained in:
i-robot 2021-06-10 20:01:46 +08:00 committed by Gitee
commit a4af96e498
1 changed files with 5 additions and 1 deletions

View File

@ -1723,9 +1723,13 @@ class ExecuteOrderGenerator {
(void)refed_parameters.insert(validate_ref_parameter(std::get<1>(iter->second)));
}
}
// Search all nodes for parameter write assigns.
// Search all refnodes for parameter write assigns.
for (auto &item : search_list) {
auto &node = item.first;
if (ref_multimap.find(node) == ref_multimap.end()) {
// if node is not refnode which cannot write param, skip it.
continue;
}
for (auto &in : node->inputs()) {
auto visit_node = AnfAlgo::VisitKernelWithReturnType(in, 0).first;
visit_node = validate_ref_parameter(visit_node);