[nnc] Bugfix for the SVACE warning (#2743)
authorТимур Отеллович Аблязимов/AI Tools Lab /SRR/Staff Engineer/삼성전자 <t.ablyazimov@samsung.com>
Fri, 11 Jan 2019 14:09:33 +0000 (17:09 +0300)
committerEfimov Alexander/AI Tools Lab/./Samsung Electronics <a.efimov@samsung.com>
Fri, 11 Jan 2019 14:09:33 +0000 (17:09 +0300)
Pass large arguments by reference and small by value

Signed-off-by: Timur Ablyazimov <t.ablyazimov@samsung.com>
contrib/nnc/unittests/soft_backend/CPPOperations.cpp

index e3068cb..5d184f9 100644 (file)
@@ -349,7 +349,7 @@ TEST(cpp_operations_test, bias) {
   fillTensors(input_ntensors[0], input_atensor, input_shape_data, 1.0f);
 
   mir::TensorVariant weights = createNTensor(weights_shape, 1.0f);
-  auto op_generator = [weights](mir::Graph& g, const std::vector<mir::IODescriptor>& inputs) {
+  auto op_generator = [&weights](mir::Graph& g, const std::vector<mir::IODescriptor>& inputs) {
     return g.create<mir::ops::BiasAddOp>("y", inputs[0], weights);
   };
 
@@ -364,7 +364,7 @@ TEST(cpp_operations_test, scale) {
   fillTensors(input_ntensors[0], input_atensor, input_shape_data, 1.0f);
 
   mir::TensorVariant weights = createNTensor(weights_shape, 1.0f);
-  auto op_generator = [weights](mir::Graph& g, const std::vector<mir::IODescriptor>& inputs) {
+  auto op_generator = [&weights](mir::Graph& g, const std::vector<mir::IODescriptor>& inputs) {
     return g.create<mir::ops::ScaleOp>("y", inputs[0], weights);
   };
 
@@ -595,12 +595,12 @@ TEST(cpp_operations_test, convTransposed2d) {
               vector<unique_ptr<mir::TensorVariant>> input_ntensors(1);
               Tensor input_atensor;
               fillTensors(input_ntensors[0], input_atensor, input_shape_data, 1.0f);
-              auto padT = mir::ops::PaddingType::Same;
+              auto pad_t = mir::ops::PaddingType::Same;
               mir::TensorVariant kernel = createNTensor(kernel_shape, 1.0f);
-              auto op_generator = [kernel, strides, padT](
+              auto op_generator = [&kernel, &strides, pad_t](
                 mir::Graph& g, const std::vector<mir::IODescriptor>& inputs) {
 
-                return g.create<mir::ops::DeConv2DOp>("y", inputs[0], kernel, strides, padT);
+                return g.create<mir::ops::DeConv2DOp>("y", inputs[0], kernel, strides, pad_t);
               };
 
               createAndRunTestGraph(op_generator, convTransposed2d, input_ntensors, input_atensor);
@@ -626,7 +626,7 @@ TEST(cpp_operations_test, conv2d) {
               Tensor input_atensor;
               fillTensors(input_ntensors[0], input_atensor, input_shape_data, 1.0f);
               mir::TensorVariant kernel = createNTensor(kernel_shape, 1.0f);
-              auto op_generator = [kernel, strides](mir::Graph& g,
+              auto op_generator = [&kernel, &strides](mir::Graph& g,
                                                    const std::vector<mir::IODescriptor>& inputs) {
                 std::vector<int32_t> padding{0, 0};
                 return g.create<mir::ops::Conv2DOp>("y", inputs[0], kernel, strides, padding,
@@ -657,7 +657,7 @@ TEST(cpp_operations_test, depthwise_conv) {
               Tensor input_atensor;
               fillTensors(input_ntensors[0], input_atensor, input_shape_data, 1.0f);
               mir::TensorVariant kernel = createNTensor(kernel_shape, 1.0f);
-              auto op_generator = [kernel, strides](mir::Graph& g,
+              auto op_generator = [&kernel, &strides](mir::Graph& g,
                                                     const std::vector<mir::IODescriptor>& inputs) {
                 std::vector<int32_t> padding{0, 0};
                 return g.create<mir::ops::DepthwiseConv2DOp>("y", inputs[0], kernel, strides,
@@ -675,7 +675,7 @@ TEST(cpp_operations_test, fully_connected) {
   Tensor input_atensor;
   fillTensors(input_ntensors[0], input_atensor, input_shape_data, 1.0f);
   mir::TensorVariant weights = createNTensor(weights_shape, 1.0f);
-  auto op_generator = [weights](mir::Graph& g, const std::vector<mir::IODescriptor>& inputs) {
+  auto op_generator = [&weights](mir::Graph& g, const std::vector<mir::IODescriptor>& inputs) {
     return g.create<mir::ops::FullyConnectedOp>("y", inputs[0], weights);
   };
 
@@ -697,7 +697,7 @@ TEST(cpp_operations_test, resize_NN_test) {
     vector<unique_ptr<mir::TensorVariant>> input_ntensors(1);
     Tensor input_atensor;
     fillTensors(input_ntensors[0], input_atensor, input_shape_data, 1.0f);
-    auto op_generator = [res_shape](mir::Graph& g, const std::vector<mir::IODescriptor>& inputs) {
+    auto op_generator = [&res_shape](mir::Graph& g, const std::vector<mir::IODescriptor>& inputs) {
       return g.create<mir::ops::ResizeOp>(
         "y", inputs[0],
         mir::ops::ResizeOp::ResizeMethod::nearestNeighbor, res_shape);
@@ -721,7 +721,7 @@ TEST(cpp_operations_test, resize_NN_test_scales) {
     vector<unique_ptr<mir::TensorVariant>> input_ntensors(1);
     Tensor input_atensor;
     fillTensors(input_ntensors[0], input_atensor, input_shape_data, 1.0f);
-    auto op_generator = [scales](mir::Graph& g, const std::vector<mir::IODescriptor>& inputs) {
+    auto op_generator = [&scales](mir::Graph& g, const std::vector<mir::IODescriptor>& inputs) {
       return g.create<mir::ops::ResizeOp>(
         "y", inputs[0],
         mir::ops::ResizeOp::ResizeMethod::nearestNeighbor, scales);
@@ -870,7 +870,7 @@ TEST(cpp_operations_test, reduceMeanTst) {
       Tensor input_atensor;
       vector<unique_ptr<mir::TensorVariant>> input_ntensors(1);
       fillTensors(input_ntensors[0], input_atensor, input_shape_data, 1.0f);
-      auto op_generator = [axis_list, keep_dims](mir::Graph& g,
+      auto op_generator = [&axis_list, keep_dims](mir::Graph& g,
                                                 const std::vector<mir::IODescriptor>& inputs) {
         auto op = g.create<mir::ops::ReduceFOp>(
           "y", inputs[0], axis_list, keep_dims,
@@ -916,7 +916,7 @@ TEST(cpp_operations_test, slice4d) {
       Tensor input_atensor;
       vector<unique_ptr<mir::TensorVariant>> input_n_tensor(1);
       fillTensors(input_n_tensor[0], input_atensor, shape_data, 1.0f);
-      auto op_gen = [&st, &sz](mir::Graph& g, const std::vector<mir::IODescriptor>& inputs) {
+      auto op_gen = [st, sz](mir::Graph& g, const std::vector<mir::IODescriptor>& inputs) {
         return g.create<mir::ops::SliceOp>("y", inputs[0], mir::Shape(st),
                                            mir::Shape(sz));
       };
@@ -934,7 +934,7 @@ TEST(cpp_operations_test, reshape) {
   Tensor input_atensor;
   vector<unique_ptr<mir::TensorVariant>> input_ntensors(1);
   fillTensors(input_ntensors[0], input_atensor, input_shape_data, 1.0f);
-  auto op_generator = [output_nshape](mir::Graph& g, const std::vector<mir::IODescriptor>& inputs) {
+  auto op_generator = [&output_nshape](mir::Graph& g, const std::vector<mir::IODescriptor>& inputs) {
     return g.create<mir::ops::ReshapeOp>("y", inputs[0], output_nshape);
   };