Commit Graph

401 Commits

Author SHA1 Message Date
Niall Douglas (s [underscore] sourceforge {at} nedprod [dot] com)
465bacb78f Many bug fixes. Nearly passes test suite, there is some problem remaining in the threaded test. 2015-07-12 03:18:02 +01:00
Niall Douglas (s [underscore] sourceforge {at} nedprod [dot] com)
af50ecd711 Removed accidentally still present vptr from future-promise. 2015-07-11 15:57:15 +01:00
Niall Douglas (s [underscore] sourceforge {at} nedprod [dot] com)
cb4e62d9d2 Fully refactored, compiling clean, constexpr tests are nearly all green. Hangs during unit tests though (tomorrow!). 2015-07-10 04:24:34 +01:00
Niall Douglas (s [underscore] sourceforge {at} nedprod [dot] com)
990b2b67fe wip in refactoring. Note that only monad is currently enabled and working, all future promise stuff fails to compile.
- [x] Split implementation policy for value_storage into separate policy (allows value_storage
to convert without considering future-promise type).
 - [x] Get value_storage<bool> and value_storage<void> to consume 1 byte, not 2 bytes.
2015-07-09 03:31:43 +01:00
Niall Douglas (s [underscore] sourceforge {at} nedprod [dot] com)
7b5a78d8ab wip removed any knowledge of the future type from promise, thus permanently closing the door to ever type slicing the future. 2015-07-08 04:56:21 +01:00
Niall Douglas (s [underscore] sourceforge {at} nedprod [dot] com)
ebb1573bbf wip refactoring basic_future to match the earlier refactoring of basic_monad 2015-07-07 20:40:57 +01:00
Niall Douglas (s [underscore] sourceforge {at} nedprod [dot] com)
de13b706f3 wip ground up refactor to eliminate all reinterpret_cast completely 2015-07-07 19:42:11 +01:00
Niall Douglas (s [underscore] sourceforge {at} nedprod [dot] com)
7f190808d0 Allow monads to explicitly convert when compatible. 2015-07-06 15:21:48 +01:00
Niall Douglas (s [underscore] sourceforge {at} nedprod [dot] com)
af6014049b Should work now on all compilers. 2015-07-04 04:23:36 +01:00
Niall Douglas (s [underscore] sourceforge {at} nedprod [dot] com)
2b9298ce22 More tightening of then() callable constraints. 2015-07-04 03:55:37 +01:00
Niall Douglas (s [underscore] sourceforge {at} nedprod [dot] com)
d1ce67aec2 Improved the static asserting, compiles on GCC now but MSVC is failing. 2015-07-04 03:39:11 +01:00
Niall Douglas (s [underscore] sourceforge {at} nedprod [dot] com)
120a8cda34 Fixed broken C++ 11 support. 2015-07-04 03:08:47 +01:00
Niall Douglas (s [underscore] sourceforge {at} nedprod [dot] com)
0dde08e428 Fix clang problems. 2015-07-03 18:05:53 +01:00
Niall Douglas (s [underscore] sourceforge {at} nedprod [dot] com)
207143f1eb Try disabling gcc 4.8 2015-07-03 17:56:09 +01:00
Niall Douglas (s [underscore] sourceforge {at} nedprod [dot] com)
d64f4c20c5 First working future continuations. Lots more testing to be added later, but this actually seems to work. 2015-07-03 17:09:59 +01:00
Niall Douglas (s [underscore] sourceforge {at} nedprod [dot] com)
2ab25936fb Added future.then(), but it is not compiling. 2015-07-03 14:34:21 +01:00
Niall Douglas (s [underscore] sourceforge {at} nedprod [dot] com)
1153088b6a - [x] Refactor the tribool logic mapping such that empty => unknown. 2015-07-03 11:26:54 +01:00
Niall Douglas (s [underscore] sourceforge {at} nedprod [dot] com)
6c852498f6 Fixed failing constexpr tests. 2015-07-02 13:39:45 +01:00
Niall Douglas (s [underscore] sourceforge {at} nedprod [dot] com)
840f3470da monad.next() now has build time optimised do_next implemented, and therefore is now available without BOOST_SPINLOCK_MONAD_ENABLE_OPERATORS. 2015-07-02 13:13:44 +01:00
Niall Douglas (s [underscore] sourceforge {at} nedprod [dot] com)
43b2b7df49 Added test of make_ready_XXX. 2015-07-02 02:59:27 +01:00
Niall Douglas (s [underscore] sourceforge {at} nedprod [dot] com)
975bcde6b6 Fixed two standard conformance failures.
Updated benchmarks for VS2015.

Added unit testing for alignment and size multiple of promise future.
2015-07-01 13:54:01 +01:00
Niall Douglas (s [underscore] sourceforge {at} nedprod [dot] com)
46fa713841 Made optional the future constexpr folding. 2015-07-01 04:30:23 +01:00
Niall Douglas (s [underscore] sourceforge {at} nedprod [dot] com)
2cfbd8cc54 Added future_option, future_result plus tests for them. 2015-07-01 03:17:34 +01:00
Niall Douglas (s [underscore] sourceforge {at} nedprod [dot] com)
f680c76236 - [x] Implement shared_future_ptr which thunks a shared_future API through a shared_ptr to
basic_future<shared_future_policy>.
2015-06-30 14:45:58 +01:00
Niall Douglas (s [underscore] sourceforge {at} nedprod [dot] com)
8a491994a6 Fixes for GCC 4.8 2015-06-30 13:08:55 +01:00
Niall Douglas (s [underscore] sourceforge {at} nedprod [dot] com)
2d55d44998 Hopefully now fully passing on all platforms. 2015-06-30 12:42:27 +01:00
Niall Douglas (s [underscore] sourceforge {at} nedprod [dot] com)
863853fa99 Fixed rebind_cast and added conformance test for it. 2015-06-30 12:20:44 +01:00
Niall Douglas (s [underscore] sourceforge {at} nedprod [dot] com)
bcd2e99bc0 - [x] Implement shared_future_policy and a conformance suite for shared_future. 2015-06-30 04:00:56 +01:00
Niall Douglas (s [underscore] sourceforge {at} nedprod [dot] com)
046860e78b - [x] Return monad_errc::exception_present error code for when get_error() sees an excepted state. 2015-06-30 01:55:45 +01:00
Niall Douglas (s [underscore] sourceforge {at} nedprod [dot] com)
5a8313adbc - [x] Add iostream overloads for basic_monad 2015-06-30 01:32:59 +01:00
Niall Douglas (s [underscore] sourceforge {at} nedprod [dot] com)
ad994b7868 Now thread sanitiser and valgrind drd problem free and totally green across the board. 2015-06-29 15:09:26 +01:00
Niall Douglas (s [underscore] sourceforge {at} nedprod [dot] com)
fcb5e645b7 Fixed bug in spinlock where is_lockable_locked was taking slow path.
Fixed compile errors on MSVC.
2015-06-29 13:26:41 +01:00
Niall Douglas (s [underscore] sourceforge {at} nedprod [dot] com)
c1c3ae2592 Added unit test for testing performance of lightweight future promise 2015-06-29 04:22:37 +01:00
Niall Douglas (s [underscore] sourceforge {at} nedprod [dot] com)
97ac5bc4c8 - [x] Have future-promise conformance suite also run for std::future.
Fixed a number of conformance failures illustrated by the above.
2015-06-29 01:31:02 +01:00
Niall Douglas (s [underscore] sourceforge {at} nedprod [dot] com)
23a0906ec0 Added some benchmarks for future-promise. 2015-06-28 03:47:24 +01:00
Niall Douglas (s [underscore] sourceforge {at} nedprod [dot] com)
278749235e Lots of work on getting next gen promise-future into shape. Compiles but fails its unit tests quite badly. 2015-06-26 17:52:32 +01:00
Niall Douglas (s [underscore] sourceforge {at} nedprod [dot] com)
b031a4e3db Updated for MSVC. 2015-06-26 04:10:06 +01:00
Niall Douglas (s [underscore] sourceforge {at} nedprod [dot] com)
44a89e0533 Try getting constexpr msvc test to use finished executables. 2015-06-26 03:49:38 +01:00
Niall Douglas (s [underscore] sourceforge {at} nedprod [dot] com)
a1799b7082 Disable renamed constexpr test 2015-06-25 16:55:49 +01:00
Niall Douglas (s [underscore] sourceforge {at} nedprod [dot] com)
321c35a7f3 Fix parse failure in count_opcodes.py 2015-06-25 16:50:20 +01:00
Niall Douglas (s [underscore] sourceforge {at} nedprod [dot] com)
b94b1f6aeb Redisable renamed test. 2015-06-25 16:29:20 +01:00
Niall Douglas (s [underscore] sourceforge {at} nedprod [dot] com)
2e430e3ff2 Forgot to enable monadic operators for MSVC constexpr 2015-06-25 16:24:05 +01:00
Niall Douglas (s [underscore] sourceforge {at} nedprod [dot] com)
964ce2d756 Added constexpr testing for result<T>, option<T>. 2015-06-25 16:20:10 +01:00
Niall Douglas (s [underscore] sourceforge {at} nedprod [dot] com)
657fac5d37 Added &, | and >> operators. 2015-06-25 14:42:11 +01:00
Niall Douglas (s [underscore] sourceforge {at} nedprod [dot] com)
bb24f6aa27 - [x] Add match() function which visits a callable on the contents. 2015-06-25 13:50:53 +01:00
Niall Douglas (s [underscore] sourceforge {at} nedprod [dot] com)
ca766c4894 - [x] If monad type is a callable, let the monad be callable.
- [x] Rename .then() to .next().
2015-06-25 10:56:17 +01:00
Niall Douglas (s [underscore] sourceforge {at} nedprod [dot] com)
fee843dd2e Fixed option<bool> being silly large, and added unit testing to ensure it remains so. 2015-06-25 03:24:13 +01:00
Niall Douglas (s [underscore] sourceforge {at} nedprod [dot] com)
58b807469a Finished porting code over to new policy based design. 2015-06-25 02:37:27 +01:00
Niall Douglas (s [underscore] sourceforge {at} nedprod [dot] com)
a6494320bd Reenable unwrap() 2015-06-24 14:54:07 +01:00
Niall Douglas (s [underscore] sourceforge {at} nedprod [dot] com)
bdf09d6e01 Still need to restore unwrap(), then(), bind() and map() but ...
- [x] In addition to value_or(), error_or() etc add value_and(), error_and() etc.
 - [x] Expose detail::value_storage such that it can be specialised for optimal space e.g. for bool.
 - [x] Add null_exception_ptr, null_error_code.
 - [x] Make how error_type is converted into exception_type configurable.
 - [x] Add monad<void>.
 - [x] Add template aliases for different configurations of monad<T> (one of maybe, result, holder, value, retval, potential, likely). Add two additional aliases, one for a monad without exception_ptr, and another for a monad with neither error_code nor exception_ptr (option<T>?).
2015-06-24 14:36:18 +01:00
Niall Douglas (s [underscore] sourceforge {at} nedprod [dot] com)
36586c6555 Make tribool nature of monad very explicit with an actual tribool. 2015-06-23 14:23:44 +01:00
Niall Douglas (s [underscore] sourceforge {at} nedprod [dot] com)
1bdef95a0f Add tribool 2015-06-23 14:08:55 +01:00
Niall Douglas
71a6954ade Add definitive assembler for all remaining tests. 2015-06-19 02:18:56 +01:00
Niall Douglas (s [underscore] sourceforge {at} nedprod [dot] com)
b3b4f95ee4 Added max and min constexpr tests for then and bind 2015-06-19 02:11:32 +01:00
Niall Douglas
d9f858384f min_monad_then for clang and gcc. 2015-06-19 01:35:15 +01:00
Niall Douglas (s [underscore] sourceforge {at} nedprod [dot] com)
5ddd2dcbdd Add min_monad_then constexpr test. 2015-06-19 01:26:56 +01:00
Niall Douglas (s [underscore] sourceforge {at} nedprod [dot] com)
c57472adbc try again 2015-06-16 18:04:34 +01:00
Niall Douglas (s [underscore] sourceforge {at} nedprod [dot] com)
388cab042d Disable failing constexpr test in VS2015. 2015-06-16 18:01:10 +01:00
Niall Douglas (s [underscore] sourceforge {at} nedprod [dot] com)
9e6020714d Disable tests for VS2015 where the compiler is clearly suffering memory corruption internally. 2015-06-16 17:57:47 +01:00
Niall Douglas (s [underscore] sourceforge {at} nedprod [dot] com)
853b5fb128 Have withmsvc generate single and multithreaded test executables 2015-06-16 17:51:08 +01:00
Niall Douglas (s [underscore] sourceforge {at} nedprod [dot] com)
0d1a435eef map() and bind() fully working and passing all tests. Finally. 2015-06-16 17:33:14 +01:00
Niall Douglas (s [underscore] sourceforge {at} nedprod [dot] com)
0d241ff17f bind() is nearly working. Currently it fails to detect an auto lambda which returns a monad, a problem I shall have to ponder how to solve as it isn't entirely straightforward. 2015-06-16 04:23:55 +01:00
Niall Douglas (s [underscore] sourceforge {at} nedprod [dot] com)
921dcb101d wip 2015-06-15 19:00:30 +01:00
Niall Douglas (s [underscore] sourceforge {at} nedprod [dot] com)
a655ca7f7d more tidy 2015-06-15 04:44:27 +01:00
Niall Douglas (s [underscore] sourceforge {at} nedprod [dot] com)
8f58896bac minor tidy 2015-06-15 04:43:15 +01:00
Niall Douglas (s [underscore] sourceforge {at} nedprod [dot] com)
01d0b3150d Figured out the problem. Now working very well indeed. Next step tomorrow is to add the detection of callables taking not value_type, and in theory we are then feature complete. 2015-06-15 04:36:59 +01:00
Niall Douglas (s [underscore] sourceforge {at} nedprod [dot] com)
0b2e91fe6e Added in rvalue detection traits. Working now, except that I am stuck on how to best detect when an implicit conversion is being done when calling the callable. 2015-06-15 04:23:48 +01:00
Niall Douglas (s [underscore] sourceforge {at} nedprod [dot] com)
6a653f3d1f Broke coverage. 2015-06-13 18:03:43 +01:00
Niall Douglas (s [underscore] sourceforge {at} nedprod [dot] com)
af81789eb2 Disabled failing tests for now. 2015-06-13 18:01:24 +01:00
Niall Douglas (s [underscore] sourceforge {at} nedprod [dot] com)
3dffba1beb then(), bind() and map() all now working perfectly except that automatic move semantics isn't. Asked stackoverflow on that one. 2015-06-12 12:59:05 +01:00
Niall Douglas (s [underscore] sourceforge {at} nedprod [dot] com)
f6ec99c0a1 Added then() and bind() monadic operations. 2015-06-12 04:08:39 +01:00
Niall Douglas (s [underscore] sourceforge {at} nedprod [dot] com)
0c8d3347ab Workaround GCC failure 2015-06-12 02:16:54 +01:00
Niall Douglas (s [underscore] sourceforge {at} nedprod [dot] com)
5b35f714a2 More minor warnings. 2015-06-12 01:59:33 +01:00
Niall Douglas (s [underscore] sourceforge {at} nedprod [dot] com)
995293467c More clang warnings. 2015-06-12 01:55:28 +01:00
Niall Douglas (s [underscore] sourceforge {at} nedprod [dot] com)
1c9c063b83 Remove clang warnings. 2015-06-12 01:53:17 +01:00
Niall Douglas (s [underscore] sourceforge {at} nedprod [dot] com)
0d867577ba Add unwrap(). 2015-06-12 01:34:12 +01:00
Niall Douglas (s [underscore] sourceforge {at} nedprod [dot] com)
dbd850034a Added complexity guarantees. 2015-06-11 14:39:48 +01:00
Niall Douglas (s [underscore] sourceforge {at} nedprod [dot] com)
6789930fee Fix POSIX build breakage 2015-06-11 13:26:57 +01:00
Niall Douglas (s [underscore] sourceforge {at} nedprod [dot] com)
943c26da03 upd msvc. 2015-06-11 13:14:54 +01:00
Niall Douglas
37c7361a70 Regen for gcc and clang 2015-06-11 10:35:13 +01:00
Niall Douglas
ca34db3e7f Rename all constexpr tests to min_* 2015-06-11 10:25:03 +01:00
Niall Douglas (s [underscore] sourceforge {at} nedprod [dot] com)
6a2b65715c Use doxygen snippets 2015-06-11 04:01:12 +01:00
Niall Douglas (s [underscore] sourceforge {at} nedprod [dot] com)
84c058b1c8 Fixed broken vcproj file 2015-06-11 03:35:20 +01:00
Niall Douglas (s [underscore] sourceforge {at} nedprod [dot] com)
f538c990a3 Missing header fix 2015-06-11 03:20:58 +01:00
Niall Douglas (s [underscore] sourceforge {at} nedprod [dot] com)
43ff504d66 Added test of monad as an optional. 2015-06-11 03:11:53 +01:00
Niall Douglas (s [underscore] sourceforge {at} nedprod [dot] com)
86060e14d8 Added test that swap() works. 2015-06-11 02:45:00 +01:00
Niall Douglas (s [underscore] sourceforge {at} nedprod [dot] com)
00c341d218 Added test for whether monad can hold a STL container and itself be inside a STL container. 2015-06-11 02:33:30 +01:00
Niall Douglas (s [underscore] sourceforge {at} nedprod [dot] com)
297c7013d1 Added noexcept and weird udt unit tests. 2015-06-11 02:19:23 +01:00
Niall Douglas (s [underscore] sourceforge {at} nedprod [dot] com)
330c9cc5ba More doc fixes 2015-06-11 00:46:48 +01:00
Niall Douglas (s [underscore] sourceforge {at} nedprod [dot] com)
8d1d58e6bb Increase opcount counter loop timeout to 1000 2015-06-10 14:57:48 +01:00
Niall Douglas (s [underscore] sourceforge {at} nedprod [dot] com)
944139beca Bad logic for detecting failing gcc test. 2015-06-10 12:58:51 +01:00
Niall Douglas (s [underscore] sourceforge {at} nedprod [dot] com)
11c6377810 count_opcodes.py now works using offsets instead of names for call inlining. 2015-06-10 12:51:38 +01:00
Niall Douglas (s [underscore] sourceforge {at} nedprod [dot] com)
d7dcab1dd0 monad, promise and future all now take their error and exception types as template parameters.
monad now throws monad_error with monad_category by default.
2015-06-07 03:13:26 +01:00
Niall Douglas (s [underscore] sourceforge {at} nedprod [dot] com)
f14ece6b4b Actually change limit instead 2015-06-05 03:30:03 +01:00
Niall Douglas (s [underscore] sourceforge {at} nedprod [dot] com)
1241e2c500 Disabled another failing test on gcc/clang. 2015-06-05 03:26:20 +01:00
Niall Douglas (s [underscore] sourceforge {at} nedprod [dot] com)
e5a5a15f92 Added unit test for monad. 2015-06-05 03:14:24 +01:00
Niall Douglas (s [underscore] sourceforge {at} nedprod [dot] com)
208cdd85b3 Stop count_opcodes.py from counting anything but test1() 2015-06-05 01:11:30 +01:00
Niall Douglas (s [underscore] sourceforge {at} nedprod [dot] com)
01e6a82f61 More constexpr monad tests 2015-06-05 00:45:24 +01:00
Niall Douglas (s [underscore] sourceforge {at} nedprod [dot] com)
2243b0ceaa Fixed excessive constexpr 2015-06-04 23:34:14 +01:00
Niall Douglas (s [underscore] sourceforge {at} nedprod [dot] com)
a6e4203bea Fleshed out the monad class 2015-06-04 19:04:14 +01:00
Niall Douglas (s [underscore] sourceforge {at} nedprod [dot] com)
a599913419 Fix bad paths being sent to coveralls 2015-06-04 17:19:52 +01:00
Niall Douglas (s [underscore] sourceforge {at} nedprod [dot] com)
697b35a408 Marked known failing tests with skipped. 2015-06-04 15:15:01 +01:00
Niall Douglas (s [underscore] sourceforge {at} nedprod [dot] com)
61ab65e89f Fix bad xml 2015-06-04 14:20:05 +01:00
Niall Douglas (s [underscore] sourceforge {at} nedprod [dot] com)
61cf82ecd1 fix bad coveralls path 2015-06-04 13:13:23 +01:00
Niall Douglas (s [underscore] sourceforge {at} nedprod [dot] com)
aea34e9e95 tsan suppress spurious openmp 2015-06-04 13:09:27 +01:00
Niall Douglas (s [underscore] sourceforge {at} nedprod [dot] com)
be4cc1f07b Thread sanitiser was disabled :( 2015-06-04 13:02:17 +01:00
Niall Douglas (s [underscore] sourceforge {at} nedprod [dot] com)
8c1c449410 Accidentally disabled building coverage binary 2015-06-04 12:56:38 +01:00
Niall Douglas (s [underscore] sourceforge {at} nedprod [dot] com)
cd8c45c08f Stop CATCH being counted in the coverage 2015-06-04 12:51:34 +01:00
Niall Douglas (s [underscore] sourceforge {at} nedprod [dot] com)
141dfb050d Disable clang junit output as clang fails across the board currently. 2015-06-04 12:45:11 +01:00
Niall Douglas (s [underscore] sourceforge {at} nedprod [dot] com)
5ce16e92af Disabled concurrent_unordered_map completely so I can concentrate on lightweight futures. 2015-06-04 12:43:19 +01:00
Niall Douglas (s [underscore] sourceforge {at} nedprod [dot] com)
330f5ea798 Get constexpr juint xml to use CDATA 2015-06-04 12:32:33 +01:00
Niall Douglas (s [underscore] sourceforge {at} nedprod [dot] com)
7a65af971d Disable concurrent_unordered_map tests. 2015-06-04 12:13:51 +01:00
Niall Douglas (s [underscore] sourceforge {at} nedprod [dot] com)
eb7c3b8060 MSVC scripts now also output junit XML 2015-06-04 11:59:11 +01:00
Niall Douglas
2f3203b0ef Opcode counting scripts now work on POSIX, and output JUnit XML. 2015-06-04 11:06:52 +01:00
Niall Douglas (s [underscore] sourceforge {at} nedprod [dot] com)
7a17c598a3 Wrote python script to parse assembler dump of lightweight future promise and construct an opcount.
Persuaded MSVC to constexpr fold almost all of the time.
2015-06-04 03:53:45 +01:00
Niall Douglas (s [underscore] sourceforge {at} nedprod [dot] com)
d693beb9fe Add gitattributes 2015-06-04 01:14:47 +01:00
Niall Douglas
5294048c61 Might as well add the clang assembler outputs too for bug reporting. 2015-05-26 00:30:50 +01:00
Niall Douglas
39a9334e55 Yay constexpr folding works! 2015-05-26 00:29:06 +01:00
Niall Douglas (s [underscore] sourceforge {at} nedprod [dot] com)
226e081f66 Broke monad out from future 2015-05-25 18:54:42 +01:00
Niall Douglas (s [underscore] sourceforge {at} nedprod [dot] com)
3da8d3bb2a Small fixes. 2015-05-25 03:08:41 +01:00
Niall Douglas (s [underscore] sourceforge {at} nedprod [dot] com)
2fdd81e75e Added constexpr folding for future, and future from promise. 2015-05-25 02:51:44 +01:00
Niall Douglas (s [underscore] sourceforge {at} nedprod [dot] com)
b8468a730d Yay got it constexpr reducing on gcc yay! 2015-05-24 03:09:57 +01:00
Niall Douglas (s [underscore] sourceforge {at} nedprod [dot] com)
bd0b230ac7 Got lightweight future-promise working on VS2015. Still no joy on the constexpr reduction :( 2015-05-24 02:56:49 +01:00
Niall Douglas (s [underscore] sourceforge {at} nedprod [dot] com)
72045c4fe3 Added beginnings of assembler dump unit testing 2015-05-23 22:09:15 +01:00
Niall Douglas (s [underscore] sourceforge {at} nedprod [dot] com)
12a534d886 Added first edition of lightweight future-promise. 2015-05-23 21:27:08 +01:00
Niall Douglas (s [underscore] sourceforge {at} nedprod [dot] com)
3b992806e8 Add atomic fences after every modification of std::vector holding bucket items. Almost certainly unnecessary, but no harm to have these. 2015-03-09 19:09:53 +00:00
Niall Douglas (s [underscore] sourceforge {at} nedprod [dot] com)
0a27daf4e1 Try to see if I can see the cause of the suppressed _rehash() race reported by tsan. 2015-03-07 21:06:35 +00:00
Niall Douglas (s [underscore] sourceforge {at} nedprod [dot] com)
22e1fd15bd Revert "Use clang for the thread sanitiser, see what happens."
This reverts commit 3a27694925.
2015-03-07 01:46:55 +00:00
Niall Douglas (s [underscore] sourceforge {at} nedprod [dot] com)
3a27694925 Use clang for the thread sanitiser, see what happens. 2015-03-06 05:30:19 +00:00
Niall Douglas (s [underscore] sourceforge {at} nedprod [dot] com)
f2bc84768a Make compiler used for build selectable. 2015-03-06 01:08:16 +00:00
Niall Douglas (s [underscore] sourceforge {at} nedprod [dot] com)
9a4646421a Removed the dependency on Expected, and the expected_future as no longer needed. 2015-01-28 17:50:21 +00:00
Niall Douglas (s [underscore] sourceforge {at} nedprod [dot] com)
b00b283ea3 Added unit testing for tristate and pointer spinlocks. 2014-12-12 20:58:13 +00:00
Niall Douglas (s [underscore] sourceforge {at} nedprod [dot] com)
a959792674 unordered map performance testing now uses identical hash on all platforms. 2014-12-11 22:24:07 +00:00
Niall Douglas (s [underscore] sourceforge {at} nedprod [dot] com)
b2ecbdfcca Replaced CATCH with BindLib unit testing. 2014-12-11 22:21:58 +00:00
Niall Douglas (s [underscore] sourceforge {at} nedprod [dot] com)
051875b795 Fixed build failures. Added a FNV-1a hash implementation. 2014-12-11 21:28:17 +00:00
Niall Douglas (s [underscore] sourceforge {at} nedprod [dot] com)
a0e25e9729 Got it compiling under VS2013 again. 2014-12-03 23:04:26 +00:00
Niall Douglas (s [underscore] sourceforge {at} nedprod [dot] com)
9700ccdf5c Now working with improved BindLib. 2014-11-20 18:40:53 +00:00
Niall Douglas (s [underscore] sourceforge {at} nedprod [dot] com)
991c79c627 Missed one in former commit 2014-10-30 18:25:47 +00:00
Niall Douglas (s [underscore] sourceforge {at} nedprod [dot] com)
83e7f521bb Stopped spinlock's valgrind use conflicting with anyone else's.
Fixed broken tsan suppression.
2014-10-30 18:21:36 +00:00
Niall Douglas (s [underscore] sourceforge {at} nedprod [dot] com)
cdd6965925 Fixed bad standalone bindlib include path 2014-10-30 17:43:38 +00:00
Niall Douglas (s [underscore] sourceforge {at} nedprod [dot] com)
e1287e567c Relocated bindlib and expected into includes 2014-10-29 20:05:58 +00:00
Niall Douglas (s [underscore] sourceforge {at} nedprod [dot] com)
6f57b937c2 Reorged to match Boost library directory conventions.
concurrent_unordered_map now has its own header.
2014-10-29 19:51:30 +00:00
Niall Douglas (s [underscore] sourceforge {at} nedprod [dot] com)
bfdb5f79b3 Added a shared_future implementation. I still need to invert the Continuations... relationship between future and promise, and promise needs to not care about whether the future consumes or not. 2014-10-16 19:33:21 +01:00
Niall Douglas (s [underscore] sourceforge {at} nedprod [dot] com)
d0f4a5f828 First working expected-based future promise implementation. 2014-10-15 20:37:03 +01:00
Niall Douglas (s [underscore] sourceforge {at} nedprod [dot] com)
f5f1d9148a Wip expected future promise 2014-10-13 20:06:47 +01:00
Niall Douglas (s [underscore] sourceforge {at} nedprod [dot] com)
b1450545a2 Ended up suppressing the tsan warnings about unsynchronised use of bucket.count as it's only a speculative early out of doing a lock acquire, so it has relaxed ordering. This optimisation adds about 7% to benchmarks, so is probably worth it. 2014-10-11 21:39:29 +01:00
Niall Douglas (s [underscore] sourceforge {at} nedprod [dot] com)
74d9c55b03 Fixed bug where std:🧵:hardware_concurrency doesn't work on ARM. 2014-10-11 20:20:37 +01:00
Niall Douglas (s [underscore] sourceforge {at} nedprod [dot] com)
bbbb0c6bc3 Build script no longer builds everything unless asked 2014-10-11 19:32:24 +01:00
Niall Douglas (s [underscore] sourceforge {at} nedprod [dot] com)
75dc814006 Fixed bad Doxyfile
Made a start on noexcept markup
2014-10-11 17:37:17 +01:00
Niall Douglas (s [underscore] sourceforge {at} nedprod [dot] com)
710974c9d3 Fixed up renaming to work. 2014-10-11 17:11:50 +01:00
Niall Douglas (s [underscore] sourceforge {at} nedprod [dot] com)
d44d6d8b5c Moved everything into Boost library directory org 2014-10-11 16:56:49 +01:00