diff options
author | Georgios Pinitas <georgios.pinitas@arm.com> | 2019-09-09 17:40:33 +0100 |
---|---|---|
committer | Georgios Pinitas <georgios.pinitas@arm.com> | 2019-09-16 11:45:48 +0000 |
commit | e874ef9b845424dceeac4211ca9dfec24949f03c (patch) | |
tree | 053e1ecedfc3250f70578b7833e5a268f87b0f49 /src/core/NEON | |
parent | 7470d059a676d217c57c20cf3cd5da5cfbd37c75 (diff) | |
download | ComputeLibrary-e874ef9b845424dceeac4211ca9dfec24949f03c.tar.gz |
COMPMID-2646: Wrap thread-related structure to ease bare-metal support
Wraps "lock_guard" and "unique_lock" to ease bare-metal support.
Adds basic armclang compilation flow.
Change-Id: I44ccd042652acd6a9b442c57c879db3891abb0e2
Signed-off-by: Georgios Pinitas <georgios.pinitas@arm.com>
Reviewed-on: https://review.mlplatform.org/c/1923
Tested-by: Arm Jenkins <bsgcomp@arm.com>
Reviewed-by: Pablo Marquez <pablo.tello@arm.com>
Comments-Addressed: Arm Jenkins <bsgcomp@arm.com>
Diffstat (limited to 'src/core/NEON')
-rw-r--r-- | src/core/NEON/kernels/NEHOGDetectorKernel.cpp | 4 | ||||
-rw-r--r-- | src/core/NEON/kernels/NEHistogramKernel.cpp | 2 | ||||
-rw-r--r-- | src/core/NEON/kernels/NEMeanStdDevKernel.cpp | 2 | ||||
-rw-r--r-- | src/core/NEON/kernels/NEMinMaxLayerKernel.cpp | 2 | ||||
-rw-r--r-- | src/core/NEON/kernels/NEMinMaxLocationKernel.cpp | 2 |
5 files changed, 6 insertions, 6 deletions
diff --git a/src/core/NEON/kernels/NEHOGDetectorKernel.cpp b/src/core/NEON/kernels/NEHOGDetectorKernel.cpp index 2c02ab8997..8f523998d8 100644 --- a/src/core/NEON/kernels/NEHOGDetectorKernel.cpp +++ b/src/core/NEON/kernels/NEHOGDetectorKernel.cpp @@ -1,5 +1,5 @@ /* - * Copyright (c) 2016-2018 ARM Limited. + * Copyright (c) 2016-2019 ARM Limited. * * SPDX-License-Identifier: MIT * @@ -177,7 +177,7 @@ void NEHOGDetectorKernel::run(const Window &window, const ThreadInfo &info) win.idx_class = _idx_class; win.score = score; - std::unique_lock<arm_compute::Mutex> lock(_mutex); + arm_compute::unique_lock<arm_compute::Mutex> lock(_mutex); _detection_windows->push_back(win); lock.unlock(); } diff --git a/src/core/NEON/kernels/NEHistogramKernel.cpp b/src/core/NEON/kernels/NEHistogramKernel.cpp index b088a232a8..211ea1ff9c 100644 --- a/src/core/NEON/kernels/NEHistogramKernel.cpp +++ b/src/core/NEON/kernels/NEHistogramKernel.cpp @@ -41,7 +41,7 @@ class Coordinates; inline void NEHistogramKernel::merge_histogram(uint32_t *global_hist, const uint32_t *local_hist, size_t bins) { - std::lock_guard<arm_compute::Mutex> lock(_hist_mtx); + arm_compute::lock_guard<arm_compute::Mutex> lock(_hist_mtx); const unsigned int v_end = (bins / 4) * 4; diff --git a/src/core/NEON/kernels/NEMeanStdDevKernel.cpp b/src/core/NEON/kernels/NEMeanStdDevKernel.cpp index 0af63059fb..afab6d6e51 100644 --- a/src/core/NEON/kernels/NEMeanStdDevKernel.cpp +++ b/src/core/NEON/kernels/NEMeanStdDevKernel.cpp @@ -142,7 +142,7 @@ void NEMeanStdDevKernel::run(const Window &window, const ThreadInfo &info) const float num_pixels = _input->info()->dimension(0) * _input->info()->dimension(1); // Merge sum and calculate mean and stddev - std::unique_lock<arm_compute::Mutex> lock(_mtx); + arm_compute::unique_lock<arm_compute::Mutex> lock(_mtx); *_global_sum += vget_lane_u64(local_sum, 0); diff --git a/src/core/NEON/kernels/NEMinMaxLayerKernel.cpp b/src/core/NEON/kernels/NEMinMaxLayerKernel.cpp index fe3af0b44f..f69c88324b 100644 --- a/src/core/NEON/kernels/NEMinMaxLayerKernel.cpp +++ b/src/core/NEON/kernels/NEMinMaxLayerKernel.cpp @@ -212,7 +212,7 @@ void NEMinMaxLayerKernel::reset() void NEMinMaxLayerKernel::update_min_max(float *out_ptr, float min, float max) { - std::lock_guard<Mutex> lock(_mtx); + arm_compute::lock_guard<Mutex> lock(_mtx); const float32x2_t old_min = vld1_dup_f32(out_ptr); const float32x2_t old_max = vld1_dup_f32(out_ptr + 1); diff --git a/src/core/NEON/kernels/NEMinMaxLocationKernel.cpp b/src/core/NEON/kernels/NEMinMaxLocationKernel.cpp index 08b27e319e..7fa2dc1c8a 100644 --- a/src/core/NEON/kernels/NEMinMaxLocationKernel.cpp +++ b/src/core/NEON/kernels/NEMinMaxLocationKernel.cpp @@ -117,7 +117,7 @@ void NEMinMaxKernel::reset() template <typename T> void NEMinMaxKernel::update_min_max(const T min, const T max) { - std::lock_guard<arm_compute::Mutex> lock(_mtx); + arm_compute::lock_guard<arm_compute::Mutex> lock(_mtx); using type = typename std::conditional<std::is_same<T, float>::value, float, int32_t>::type; |