Imported Upstream version 1.7.0
[platform/core/ml/nnfw.git] / tests / nnfw_api / src / common.cc
1
2 /*
3  * Copyright (c) 2020 Samsung Electronics Co., Ltd. All Rights Reserved
4  *
5  * Licensed under the Apache License, Version 2.0 (the "License");
6  * you may not use this file except in compliance with the License.
7  * You may obtain a copy of the License at
8  *
9  *    http://www.apache.org/licenses/LICENSE-2.0
10  *
11  * Unless required by applicable law or agreed to in writing, software
12  * distributed under the License is distributed on an "AS IS" BASIS,
13  * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
14  * See the License for the specific language governing permissions and
15  * limitations under the License.
16  */
17
18 #include "common.h"
19
20 bool tensorInfoEqual(const nnfw_tensorinfo &info1, const nnfw_tensorinfo &info2)
21 {
22   if (info1.dtype != info2.dtype)
23     return false;
24   if (info1.rank != info2.rank)
25     return false;
26   for (int i = 0; i < info1.rank; i++)
27     if (info1.dims[i] != info2.dims[i])
28       return false;
29   return true;
30 }
31
32 uint64_t tensorInfoNumElements(const nnfw_tensorinfo &ti)
33 {
34   uint64_t n = 1;
35   for (uint32_t i = 0; i < ti.rank; ++i)
36   {
37     n *= ti.dims[i];
38   }
39   return n;
40 }