diff --git a/mindspore/lite/src/runtime/kernel/arm/fp32/flatten.h b/mindspore/lite/src/runtime/kernel/arm/fp32/flatten.h index 84b1b3b89bb0660b6c0157541e41ed581b99443f..944259a3133bd538cb8b3d58c969876e7bbeb14d 100644 --- a/mindspore/lite/src/runtime/kernel/arm/fp32/flatten.h +++ b/mindspore/lite/src/runtime/kernel/arm/fp32/flatten.h @@ -33,7 +33,7 @@ class FlattenCPUKernel : public LiteKernel { : LiteKernel(parameter, inputs, outputs, ctx, primitive) { flatten_param_ = reinterpret_cast(parameter); } - ~FlattenCPUKernel() override { delete flatten_param_; } + ~FlattenCPUKernel() override = default;; int Init() override; int ReSize() override; diff --git a/mindspore/lite/tools/converter/parser/caffe/caffe_flatten_parser.cc b/mindspore/lite/tools/converter/parser/caffe/caffe_flatten_parser.cc new file mode 100644 index 0000000000000000000000000000000000000000..9eb1f050952d32d816609762fa1ec942a90b9b27 --- /dev/null +++ b/mindspore/lite/tools/converter/parser/caffe/caffe_flatten_parser.cc @@ -0,0 +1,38 @@ +/** + * Copyright 2020 Huawei Technologies Co., Ltd + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ +#include +#include "mindspore/lite/tools/converter/parser/caffe/caffe_flatten_parser.h" + +namespace mindspore { +namespace lite { +STATUS CaffeFlattenParser::Parse(const caffe::LayerParameter &proto, const caffe::LayerParameter &weight, + schema::CNodeT *op, std::vector *weightVec) { + if (op == nullptr) { + // MS_LOGE("null pointer dereferencing."); + return RET_NULL_PTR; + } + std::unique_ptr attr(new schema::ReshapeT()); + attr->format = schema::Format_NCHW; + + op->primitive = std::make_unique(); + op->primitive->value.type = schema::PrimitiveType_Flatten; + op->primitive->value.value = attr.release(); + return RET_OK; +} + +CaffeNodeRegistrar g_CaffeFlattenParser("Flatten", new CaffeFlattenParser()); +} // namespace lite +} // namespace mindspore diff --git a/mindspore/lite/tools/converter/parser/caffe/caffe_flatten_parser.h b/mindspore/lite/tools/converter/parser/caffe/caffe_flatten_parser.h new file mode 100644 index 0000000000000000000000000000000000000000..249fc6254185a94a12ad38f19a105fae03c51e6d --- /dev/null +++ b/mindspore/lite/tools/converter/parser/caffe/caffe_flatten_parser.h @@ -0,0 +1,36 @@ +/** + * Copyright 2020 Huawei Technologies Co., Ltd + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +#ifndef PREDICT_CONVERTER_PARSER_CAFFE_CAFFE_FLATTEN_PARSER_H_ +#define PREDICT_CONVERTER_PARSER_CAFFE_CAFFE_FLATTEN_PARSER_H_ + +#include +#include "mindspore/lite/tools/converter/parser/caffe/caffe_node_parser.h" +#include "mindspore/lite/tools/converter/parser/caffe/caffe_node_parser_registry.h" + +namespace mindspore { +namespace lite { +class CaffeFlattenParser : public CaffeNodeParser { + public: + CaffeFlattenParser() : CaffeNodeParser("flatten") {} + + STATUS Parse(const caffe::LayerParameter &proto, const caffe::LayerParameter &weight, schema::CNodeT *op, + std::vector *weightVec) override; +}; +} // namespace lite +} // namespace mindspore + +#endif // PREDICT_CONVERTER_PARSER_CAFFE_CAFFE_FLATTEN_PARSER_H_