diff options
author | Ioan-Cristian Szabo <ioan-cristian.szabo@arm.com> | 2017-12-22 17:32:17 +0000 |
---|---|---|
committer | Anthony Barbier <anthony.barbier@arm.com> | 2018-11-02 16:42:33 +0000 |
commit | 77eb21f7d9c6e34e985dfa96152fb8b6c40f9a8a (patch) | |
tree | 0b1cb2c0d7bd38bd2f7eacf41d90ea3a2b758f21 /src/runtime/CL/CLScheduler.cpp | |
parent | 88b8d8c2651ee52467fb9e2029ddc9820d442228 (diff) | |
download | ComputeLibrary-77eb21f7d9c6e34e985dfa96152fb8b6c40f9a8a.tar.gz |
Fix destruction order of singleton objects and resolve hang GLES issue.
Change-Id: I9df42d4255b371b275a74aa521406e6796ee436b
Reviewed-on: https://eu-gerrit-1.euhpc.arm.com/113901
Reviewed-by: Anthony Barbier <anthony.barbier@arm.com>
Tested-by: Anthony Barbier <anthony.barbier@arm.com>
Diffstat (limited to 'src/runtime/CL/CLScheduler.cpp')
-rw-r--r-- | src/runtime/CL/CLScheduler.cpp | 5 |
1 files changed, 4 insertions, 1 deletions
diff --git a/src/runtime/CL/CLScheduler.cpp b/src/runtime/CL/CLScheduler.cpp index 71a749fe52..bf13a25693 100644 --- a/src/runtime/CL/CLScheduler.cpp +++ b/src/runtime/CL/CLScheduler.cpp @@ -28,6 +28,8 @@ using namespace arm_compute; +std::once_flag CLScheduler::_initialize_symbols; + CLScheduler::CLScheduler() : _context(), _queue(), _target(GPUTarget::MIDGARD), _is_initialised(false), _cl_tuner() { @@ -35,6 +37,7 @@ CLScheduler::CLScheduler() CLScheduler &CLScheduler::get() { + std::call_once(_initialize_symbols, opencl_is_available); static CLScheduler scheduler; return scheduler; } @@ -59,4 +62,4 @@ void CLScheduler::enqueue(ICLKernel &kernel, bool flush) { _queue.flush(); } -}
\ No newline at end of file +} |