From 99bbe468700accb4d3f2527a45b6e9bd2abfcbfe Mon Sep 17 00:00:00 2001 From: yuzhenhua Date: Wed, 27 Jul 2022 11:11:47 +0800 Subject: [PATCH] clean code --- .../ccsrc/transform/express_ir/mindir_exporter.cc | 10 +++++----- mindspore/ccsrc/transform/express_ir/onnx_exporter.cc | 7 +++---- mindspore/ccsrc/transform/graph_ir/transform_util.cc | 10 ++++++++-- 3 files changed, 16 insertions(+), 11 deletions(-) diff --git a/mindspore/ccsrc/transform/express_ir/mindir_exporter.cc b/mindspore/ccsrc/transform/express_ir/mindir_exporter.cc index 94164d41732..ca6f1046d54 100644 --- a/mindspore/ccsrc/transform/express_ir/mindir_exporter.cc +++ b/mindspore/ccsrc/transform/express_ir/mindir_exporter.cc @@ -550,11 +550,11 @@ bool IrExportBuilder::SetCSRTensorToProto(const AbstractBasePtr &abstract, mind_ mind_ir::AttributeProto *indptr = attr_proto->add_values(); bool res = SetAbstractToNodeProto(csr_tensor_abs->indptr(), indptr); mind_ir::AttributeProto *indices = attr_proto->add_values(); - res &= SetAbstractToNodeProto(csr_tensor_abs->indices(), indices); + res = res && SetAbstractToNodeProto(csr_tensor_abs->indices(), indices); mind_ir::AttributeProto *values = attr_proto->add_values(); - res &= SetAbstractToNodeProto(csr_tensor_abs->values(), values); + res = res && SetAbstractToNodeProto(csr_tensor_abs->values(), values); mind_ir::AttributeProto *shape = attr_proto->add_values(); - res &= SetAbstractToNodeProto(csr_tensor_abs->shape(), shape); + res = res && SetAbstractToNodeProto(csr_tensor_abs->shape(), shape); return res; } @@ -565,9 +565,9 @@ bool IrExportBuilder::SetCOOTensorToProto(const AbstractBasePtr &abstract, mind_ mind_ir::AttributeProto *indices = attr_proto->add_values(); bool res = SetAbstractToNodeProto(coo_tensor_abs->indices(), indices); mind_ir::AttributeProto *values = attr_proto->add_values(); - res &= SetAbstractToNodeProto(coo_tensor_abs->values(), values); + res = res && SetAbstractToNodeProto(coo_tensor_abs->values(), values); mind_ir::AttributeProto *shape = attr_proto->add_values(); - res &= SetAbstractToNodeProto(coo_tensor_abs->shape(), shape); + res = res && SetAbstractToNodeProto(coo_tensor_abs->shape(), shape); return res; } diff --git a/mindspore/ccsrc/transform/express_ir/onnx_exporter.cc b/mindspore/ccsrc/transform/express_ir/onnx_exporter.cc index 94bb67f24a7..1d18ce6aac9 100644 --- a/mindspore/ccsrc/transform/express_ir/onnx_exporter.cc +++ b/mindspore/ccsrc/transform/express_ir/onnx_exporter.cc @@ -3039,8 +3039,8 @@ void OnnxExporter::ExportPrimTensorCopySlices(const FuncGraphPtr &, const CNodeP [](auto x) { return x - 1; }); size_t flat_end_index = RavelIndex(end_inclusive, x_shape) + 1; - size_t x_size = std::accumulate(x_shape.begin(), x_shape.end(), 1UL, std::multiplies()); - size_t value_size = std::accumulate(value_shape.begin(), value_shape.end(), 1UL, std::multiplies()); + int64_t x_size = std::accumulate(x_shape.begin(), x_shape.end(), 1, std::multiplies()); + size_t value_size = std::accumulate(value_shape.begin(), value_shape.end(), 1, std::multiplies()); MS_EXCEPTION_IF_CHECK_FAIL(value_size == flat_end_index - flat_begin_index, "Cannot copy 'value' to target slice"); auto flat_x_name = node_name + "_flat_x"; @@ -3048,8 +3048,7 @@ void OnnxExporter::ExportPrimTensorCopySlices(const FuncGraphPtr &, const CNodeP auto begin_slice_name = node_name + "_begin_slice"; AddSliceOp(flat_x_name, begin_slice_name, {0}, {static_cast(flat_begin_index)}, {0}, {1}, graph_proto); auto end_slice_name = node_name + "_end_slice"; - AddSliceOp(flat_x_name, end_slice_name, {static_cast(flat_end_index)}, {static_cast(x_size)}, {0}, - {1}, graph_proto); + AddSliceOp(flat_x_name, end_slice_name, {static_cast(flat_end_index)}, {x_size}, {0}, {1}, graph_proto); auto flat_value_name = node_name + "_flat_value"; AddReshapeOp(value_input_name, flat_value_name, {-1}, graph_proto); diff --git a/mindspore/ccsrc/transform/graph_ir/transform_util.cc b/mindspore/ccsrc/transform/graph_ir/transform_util.cc index afa4fa121a3..378abe3ca4c 100644 --- a/mindspore/ccsrc/transform/graph_ir/transform_util.cc +++ b/mindspore/ccsrc/transform/graph_ir/transform_util.cc @@ -17,6 +17,7 @@ #include "transform/graph_ir/transform_util.h" #include #include +#include #include "include/common/utils/convert_utils.h" #include "include/common/utils/utils.h" @@ -202,9 +203,10 @@ GeTensorPtr ConvertStringTensor(const MeTensorPtr &tensor, const std::string &fo } size_t elements_num = (data_buff_size / single_char_offset) / string_max_length; std::vector string_vector; + char *string_element = new char[string_max_length]; + size_t string_length = 0; for (size_t i = 0; i < elements_num; i++) { - char *string_element = new char[string_max_length]; - size_t string_length = 0; + std::fill_n(string_element, string_max_length, '\0'); for (size_t j = 0; j < string_max_length; j++) { char char_element = data_ptr[i * string_max_length * single_char_offset + single_char_offset * j]; if (static_cast(char_element) == 0) { @@ -217,6 +219,8 @@ GeTensorPtr ConvertStringTensor(const MeTensorPtr &tensor, const std::string &fo std::string string_to_add(string_element, string_length); (void)string_vector.emplace_back(string_to_add); } + delete string_element; + string_element = nullptr; tensor_ptr = make_shared(*desc); (void)tensor_ptr->SetData(string_vector); } else { @@ -232,6 +236,8 @@ GeTensorPtr ConvertStringTensor(const MeTensorPtr &tensor, const std::string &fo std::string string_to_add(string_element, string_length); tensor_ptr = make_shared(*desc); (void)tensor_ptr->SetData(string_to_add); + delete string_element; + string_element = nullptr; } return tensor_ptr; }