[Libreoffice-commits] core.git: vcl/inc
Rene Engelhard (via logerrit)
logerrit at kemper.freedesktop.org
Sat Nov 9 12:29:37 UTC 2019
vcl/inc/opengl/zone.hxx | 4 ++++
1 file changed, 4 insertions(+)
New commits:
commit 9336ae40d51e9a95ea31dd5fcfa5b67a9b2bafd7
Author: Rene Engelhard <rene at debian.org>
AuthorDate: Sat Nov 9 11:03:47 2019 +0100
Commit: Rene Engelhard <rene at debian.org>
CommitDate: Sat Nov 9 13:28:21 2019 +0100
disable static_assert on AtomicCounter::is_always_lock_free on armel ...
... since AtomicCounter::is_always_lock_free seems to be
always false on armel
Change-Id: I89c15fd41337ac5b29f781722423427825e6ff45
Reviewed-on: https://gerrit.libreoffice.org/82165
Tested-by: Rene Engelhard <rene at debian.org>
Reviewed-by: Rene Engelhard <rene at debian.org>
diff --git a/vcl/inc/opengl/zone.hxx b/vcl/inc/opengl/zone.hxx
index 3210186c3096..90b7f48fd5a8 100644
--- a/vcl/inc/opengl/zone.hxx
+++ b/vcl/inc/opengl/zone.hxx
@@ -35,8 +35,12 @@ class VCL_DLLPUBLIC OpenGLZone {
// that is actually lock-free. However, gnEnterCount and gnLeaveCount are both monotonically
// increasing, so will eventually overflow, so the underlying type better be unsigned, which
// sig_atomic_t is not guaranteed to be:
+#if !defined ARM32 || (defined ARM32 && defined __ARM_PCS_VFP)
using AtomicCounter = std::atomic<std::make_unsigned_t<std::sig_atomic_t>>;
static_assert(AtomicCounter::is_always_lock_free);
+#else
+ using AtomicCounter = volatile std::make_unsigned_t<std::sig_atomic_t>;
+#endif
/// how many times have we entered a GL zone
static AtomicCounter gnEnterCount;
More information about the Libreoffice-commits
mailing list