Solve test case failure issue for 32bits (#15857)

* Solve test case failure issue for 32bits
  1. ov_core_unit_test
  2. ov_cpu_unit_test

Change-Id: I5e6afda0865fedc1de7fe84dd5f132e642263303

* Solve windows build issue

Change-Id: I1e6ea4d930c41322a73a701d566f0cdee2a4e098

* Disable several 64bit test cases in case of 32bit system

Change-Id: Ib8ef784953bf15cb42048dd905f17a85e52482b1

* Update a simple solution

Change-Id: Ie2e2cd369fe98bfcd26f3416bf36d4dfb0f24c25

* update for 64bits failure

Change-Id: I6571b7842a0fecc01fff169a21fa7aae9eb9da14

* Use OPENVINO_ARCH_64_BIT replace custom macro

Change-Id: I7e72b74aed8f0226513bc0e06ce2381322b42f71
This commit is contained in:
River Li 2023-02-24 14:20:31 +08:00 committed by GitHub
parent be5f90199d
commit 2d960fc6c5
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
2 changed files with 7 additions and 4 deletions

View File

@ -134,7 +134,11 @@ inline int64_t get_sliced_value(const int64_t& dim, const int64_t& start, const
constexpr int64_t inf_bound = -1;
const auto& norm_dim = dim == inf_bound ? std::numeric_limits<int64_t>::max() : dim;
#ifdef OPENVINO_ARCH_64_BIT
const auto is_norm_dim_max = ov::internal::is_max(norm_dim);
#else
const auto is_norm_dim_max = ov::internal::is_max(size_t(norm_dim));
#endif
const int64_t lower_max = is_reverse_step ? norm_dim - 1 : norm_dim;
const int64_t upper_min = is_reverse_step ? inf_bound : min_bound;

View File

@ -152,12 +152,11 @@ protected:
if (!labels.empty()) {
auto repeats = repeats_val;
int64_t size_diff = labels.size() - repeats.size();
if (size_diff >= 0) {
repeats.insert(repeats.begin(), size_diff, 1);
if (labels.size() > repeats.size()) {
repeats.insert(repeats.begin(), labels.size() - repeats.size(), 1);
} else {
labels.insert(labels.begin(), -size_diff, ov::no_label);
labels.insert(labels.begin(), repeats.size() - labels.size(), ov::no_label);
}
std::transform(labels.begin(),