| @@ -143,26 +143,25 @@ void MarkForceUnknownForCondPass::MarkUnknownForSwitch(const std::map<NodePtr, s | |||||
| continue; | continue; | ||||
| } | } | ||||
| if (IsUnknownShapeTensor(op_desc1->GetOutputDesc(0))) { | |||||
| int64_t group_index = op_desc1->GetId(); | |||||
| GELOGI("Mark %s as unknown shape control flow, group index: %ld", op_desc1->GetName().c_str(), group_index); | |||||
| MarkForceUnknownShape(op_node1, true, group_index); | |||||
| for (const auto &n : it1->second) { | |||||
| MarkForceUnknownShape(n, true, group_index); | |||||
| } | |||||
| for (auto it2 = switch_groups.begin(); it2 != switch_groups.end(); ++it2) { | |||||
| const auto &op_node2 = it2->first; | |||||
| const auto &op_desc2 = op_node2->GetOpDesc(); | |||||
| if (op_desc2->HasAttr(ATTR_NAME_CONTROL_FLOW_GROUP)) { | |||||
| continue; | |||||
| } | |||||
| int64_t group_index = op_desc1->GetId(); | |||||
| GELOGI("Mark %s as unknown shape control flow, group index: %ld", op_desc1->GetName().c_str(), group_index); | |||||
| MarkForceUnknownShape(op_node1, true, group_index); | |||||
| for (const auto &n : it1->second) { | |||||
| MarkForceUnknownShape(n, true, group_index); | |||||
| } | |||||
| if (std::any_of(it2->second.begin(), it2->second.end(), callback)) { | |||||
| MarkForceUnknownShape(op_node2, true, group_index); | |||||
| for (const auto &n : it2->second) { | |||||
| MarkForceUnknownShape(n, true, group_index); | |||||
| } | |||||
| for (auto it2 = switch_groups.begin(); it2 != switch_groups.end(); ++it2) { | |||||
| const auto &op_node2 = it2->first; | |||||
| const auto &op_desc2 = op_node2->GetOpDesc(); | |||||
| if (op_desc2->HasAttr(ATTR_NAME_CONTROL_FLOW_GROUP)) { | |||||
| continue; | |||||
| } | |||||
| if (std::any_of(it2->second.begin(), it2->second.end(), callback)) { | |||||
| MarkForceUnknownShape(op_node2, true, group_index); | |||||
| for (const auto &n : it2->second) { | |||||
| MarkForceUnknownShape(n, true, group_index); | |||||
| } | } | ||||
| } | } | ||||
| } | } | ||||