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 |
|