Mark all atomic functions as Q_DECL_NOTHROW
authorThiago Macieira <thiago.macieira@intel.com>
Mon, 6 Aug 2012 15:48:42 +0000 (17:48 +0200)
committerQt by Nokia <qt-info@nokia.com>
Thu, 9 Aug 2012 01:26:24 +0000 (03:26 +0200)
commit6bf4e448fee554153eab09c755ba6fdca012bd52
tree0efb1e49ef18b1e80d3bf8bb6569d4a284674a3c
parent2d9c2c0562aa895b46a7c01902660aa51981e989
Mark all atomic functions as Q_DECL_NOTHROW

Actually, only the "new" atomics are marked. The old implementation,
based on qoldbasicatomic.h is unchanged, but should still work without a
problem.

The following configurations were tested and do work:
 - x86 64-bit
 - x86 32-bit
 - generic GCC
 - generic C++11 std::atomic
 - bootstrap
 - ARMv6 and 7
 - MIPS
 - MSVC 2010 32-bit
 - MSVC 2010 64-bit

The only two configurations untested are IA-64 and ARMv5. Except for
MSVC, all configurations were tested with GCC 4.6 (MIPS and ARM) and 4.7
(x86 and generics).

Change-Id: Iecbfeacd9d20b535453e91335165e9a221e0b47e
Reviewed-by: Marc Mutz <marc.mutz@kdab.com>
Reviewed-by: Lars Knoll <lars.knoll@nokia.com>
12 files changed:
src/corelib/arch/qatomic_armv5.h
src/corelib/arch/qatomic_armv6.h
src/corelib/arch/qatomic_bootstrap.h
src/corelib/arch/qatomic_cxx11.h
src/corelib/arch/qatomic_gcc.h
src/corelib/arch/qatomic_ia64.h
src/corelib/arch/qatomic_mips.h
src/corelib/arch/qatomic_msvc.h
src/corelib/arch/qatomic_unix.cpp
src/corelib/arch/qatomic_unix.h
src/corelib/arch/qatomic_x86.h
src/corelib/thread/qgenericatomic.h