summaryrefslogtreecommitdiffstats
path: root/src/corelib/thread
diff options
context:
space:
mode:
authorThiago Macieira <thiago.macieira@intel.com>2021-04-01 23:27:48 -0700
committerThiago Macieira <thiago.macieira@intel.com>2021-04-02 11:12:17 -0700
commitc2a09242c82b07064ddd99557e7eaf98556d5170 (patch)
treed88d9a75c8601dc91054be713074eff2a0055502 /src/corelib/thread
parent30ac9d5db4ff40b8a09c376c27acde770dc61e02 (diff)
QGenericAtomicOps: allow pointer-sized non-atomic atomics
Change-Id: Id2983978ad544ff79911fffd1671f696b8a9ca35 Reviewed-by: Giuseppe D'Angelo <giuseppe.dangelo@kdab.com>
Diffstat (limited to 'src/corelib/thread')
-rw-r--r--src/corelib/thread/qgenericatomic.h6
1 files changed, 4 insertions, 2 deletions
diff --git a/src/corelib/thread/qgenericatomic.h b/src/corelib/thread/qgenericatomic.h
index 0fa9a9a418..e9f9218644 100644
--- a/src/corelib/thread/qgenericatomic.h
+++ b/src/corelib/thread/qgenericatomic.h
@@ -53,8 +53,10 @@ QT_END_NAMESPACE
#pragma qt_sync_stop_processing
#endif
-template<int> struct QAtomicOpsSupport { enum { IsSupported = 0 }; };
-template<> struct QAtomicOpsSupport<4> { enum { IsSupported = 1 }; };
+template<int Size> struct QAtomicOpsSupport
+{
+ enum { IsSupported = (Size == sizeof(int) || Size == sizeof(qptrdiff)) };
+};
template <typename T> struct QAtomicAdditiveType
{