Commit Graph

846 Commits

Author SHA1 Message Date
Peter Dimov
053779f3ee Add BOOST_SP_NOEXCEPT to sp_counted_base_clang.hpp 2019-01-28 20:52:28 +02:00
Peter Dimov
51d8167fbf Add more BOOST_SP_NOEXCEPT 2019-01-28 18:46:39 +02:00
Nikita Kniazev
eac6411867 Do not include the whole Predef for a single macro 2018-12-28 03:03:02 +03:00
Peter Dimov
2932ca4203 Change sp_counted_base_nt/_pt to use boost::int_least32_t instead of long (which may be 64 bit) 2018-12-23 01:54:36 +02:00
Peter Dimov
f6c3508aee Add make_local_shared_const_test 2018-11-10 21:04:22 +02:00
Romain Geissler
456da93897 Use BOOST_NOEXCEPT_OR_NOTHROW in public headers to prepare for C++20. 2018-11-09 14:55:34 +00:00
Glen Fernandes
29a08cdff6 Use BOOST_SYMBOL_VISIBLE with local_counted_base and children 2018-09-19 13:50:13 -04:00
Peter Dimov
6d3af760f6 Generously dispense BOOST_SYMBOL_VISIBLE 2018-09-18 03:18:23 +03:00
Peter Dimov
4eb53db537 Use intrin.h under clang-cl 2018-08-12 01:26:59 +03:00
Glen Fernandes
a2b6ba85f3 Simplify exception safety in array construct utilities 2018-08-01 08:45:10 -04:00
Peter Dimov
8563fc5c4e Add tests that include <windows.h> 2018-03-11 23:00:50 +02:00
Peter Dimov
67fab5c9ec Clang x64 warns that __stdcall is ignored, so don't use it there 2018-03-08 06:53:28 +02:00
Peter Dimov
f16fbdce26 Fix sp_interlocked on Cygwin 64 2018-03-08 05:15:49 +02:00
Peter Dimov
c3b3835a58 Mingw doesn't have _RTL_CRITICAL_SECTION 2018-03-08 03:34:00 +02:00
Peter Dimov
d1600b8abc Do not define pthread_* in lightweight_thread.hpp; mingw-w64 includes pthread.h in the standard library headers 2018-03-08 01:19:44 +02:00
Peter Dimov
4129bb6a5c Use unique_ptr instead of auto_ptr when available 2018-02-19 06:16:11 +02:00
Peter Dimov
4025698fe8 Change atomic operations to take an arbitrary MemoryOrder type, to fix test breakage caused by transition to scoped enum in Boost.Atomic, tracking C++20 2018-02-07 17:45:07 +02:00
Peter Dimov
937a3e0e93 Remove tabs 2018-01-23 06:29:17 +02:00
YunQiang Su
4252ed31de disable .set mips2 for mips release r6
MIPS r6 changed the encoding for `ll' instruction,
if we `.set mips2', it will generate the old encoding for `ll'.

So here we disable it for r6.
2017-12-31 14:14:11 +08:00
Glen Fernandes
5dfcd2a6e4 Rename parameters to cope with gcc 4.8 -Wshadow 2017-11-27 23:47:13 -05:00
Glen Fernandes
57a585ed46 sp_array_construct condition for trivial should include has_trivial_destructor 2017-11-02 11:53:41 -04:00
Peter Dimov
868a870a59 Fix lightweight_mutex w/ BOOST_USE_WINDOWS_H 2017-09-01 13:25:19 +03:00
Benjamin Worpitz
966786e7f9 fix compilation for nvcc+clang
nvcc seems to use the host compiler for preprocessing the source for the device and host compilation.
When compiling the host code with the host compiler (clang), `__builtin_assume` is detected correctly and is also available during compilation.
When compiling the device code with nvcc, this builtin function is not available.
2017-08-28 08:12:48 +02:00
Glen Fernandes
a3c8c2125a Use has_trivial_assign in construction utilities 2017-07-04 13:45:56 -04:00
Glen Fernandes
3aa419463c Simplify lsp state types 2017-07-01 10:00:47 -04:00
Glen Fernandes
e4ba116d7e Minor refactoring in allocate_shared implementations 2017-06-29 22:33:43 -04:00
Glen Fernandes
be736e5088 Implement allocate_local_shared for arrays
Also fix the local_shared_ptr constructor to use element_type
2017-06-29 13:05:03 -04:00
Glen Fernandes
48294c483f Use new shared_count constructors in allocate_shared 2017-06-29 09:24:02 -04:00
Peter Dimov
13e73d6a78 Do not use UINT_MAX to avoid -Wmicrosoft-enum-value from Clang 2017-06-27 16:23:18 +03:00
Peter Dimov
20a517cc3d Clang/C2 doesn't have _mm_pause 2017-06-27 15:41:56 +03:00
Peter Dimov
0adb1fb212 Add shared_count constructor taking sp_counted_base* 2017-06-22 15:24:49 +03:00
Peter Dimov
2d087d0003 Do not use A::destroy in allocate_shared_noinit 2017-06-21 13:44:17 +03:00
Peter Dimov
81e1cfe301 Merge branch 'develop' into feature/local_shared_ptr 2017-06-21 03:04:16 +03:00
Glen Fernandes
4046186a2d Use BOOST_NOEXCEPT_OR_NOTHROW for get_deleter
throw() optimizes better there with older versions of GCC in C++98.
2017-06-20 19:27:58 -04:00
Peter Dimov
f901988e57 Store shared_count in local_counted_base, not shared_ptr 2017-06-20 21:38:03 +03:00
Peter Dimov
fb17bf685e Add more tests; fix errors 2017-06-20 20:38:26 +03:00
Peter Dimov
052ebd1946 Merge branch 'develop' into feature/local_get_deleter 2017-06-20 19:35:23 +03:00
Peter Dimov
028bb2cee8 Fix get_deleter in allocate_shared_array.hpp 2017-06-20 19:33:39 +03:00
Peter Dimov
6e5a382b6b Start work on get_deleter for local_shared_ptr 2017-06-20 19:01:16 +03:00
Peter Dimov
b104d85d95 Fix use of allocator_traits 2017-06-20 05:36:47 +03:00
Peter Dimov
2b5869882a Optimize make_local_shared to use a single allocation 2017-06-20 04:27:45 +03:00
Peter Dimov
6218c52c1a Add make_local_shared 2017-06-20 01:42:45 +03:00
Peter Dimov
edf02ab0f9 Add more tests 2017-06-19 01:05:01 +03:00
Peter Dimov
7ed8583a9c Document shared_ptr atomic access functions 2017-06-18 15:24:00 +03:00
Peter Dimov
6474847481 Make atomic_shared_ptr's default constructor constexpr 2017-06-18 07:56:42 +03:00
Peter Dimov
0e78e219f5 Make default constructors constexpr 2017-06-18 02:43:20 +03:00
Peter Dimov
67d897a533 Add a spinlock to atomic_shared_ptr 2017-06-17 23:37:18 +03:00
Peter Dimov
7bd389c95e Merge branch 'develop' into feature/local_shared_ptr 2017-06-17 00:15:39 +03:00
Peter Dimov
1cae5c5696 Fix documentation links in headers 2017-06-17 00:13:21 +03:00
Peter Dimov
369fdbe38d Merge branch 'develop' into feature/local_shared_ptr 2017-06-16 20:20:54 +03:00