Commit Graph

1018 Commits

Author SHA1 Message Date
daan ef8e5d18a6 replace atomics with C11/C++ atomics with explicit memory order; passes tsan. Issue #130 2020-07-26 18:01:33 -07:00
daan a468430772 strengthen memory order of bit operations; insert memory fences 2020-07-26 14:19:30 -07:00
daan a9f46dc86f reduce memory order constraints for better efficiency on ARM etc 2020-07-26 11:58:02 -07:00
daan 116159cd40 use RtlGenRandom on windows to enable compilation as C++ even with dynamic override 2020-07-26 11:57:14 -07:00
daan 53cbc68de3 display compiler in cmake summary 2020-07-26 00:21:10 -07:00
daan 28014ee2bc fix atomic access for MADV_FREE in os_reset 2020-07-26 00:16:17 -07:00
daan ebf951e851 extra checks for atomic ptr exchange; extend mi_atomic_yield for win32 2020-07-26 00:15:57 -07:00
daan 95afd0509f make segment abandoned_next atomic; tsan passes without warnings now (issue #130) 2020-07-25 23:50:22 -07:00
daan 09ade02429 bring inline with C11 atomics; no volatile and cas order of expected/desired 2020-07-25 22:52:27 -07:00
daan e27422adca switch to using C++ atomics in MSVC as well 2020-07-25 20:55:45 -07:00
daan 73c109a04e add cmake option to build with ubsan 2020-07-25 19:55:36 -07:00
daan afe29cb8f5 fix ub on shift, issue #279 2020-07-25 19:33:02 -07:00
daan a9a21f39d8 fix memory order for CAS failure, issue #130 2020-07-23 15:52:02 -07:00
daan b74caddcc1 fix memory order to acq_rel for atomic and/or, issue #130, thanks @mpoeter! 2020-07-23 15:00:49 -07:00
daan 70be91d6b8 reduce tsan warning by ensuring a require edge; issue #130 2020-07-22 15:28:14 -07:00
daan 8aa18d3661 fix TSAN warning for statistics maximum, issue #130 2020-07-22 14:16:18 -07:00
daan 444afa934f fix memory order for weak CAS, issue #130, thanks @mary3000! 2020-07-22 13:58:00 -07:00
daan 2e1b4f512d make max update in the stats atomic 2020-07-22 13:45:04 -07:00
daan 529d74a282 use O1 with thread sanitizer 2020-07-22 12:45:53 -07:00
daan 341048f61e avoid atomic operations on statistics if zero 2020-07-22 11:08:16 -07:00
daan c5406f327e move include 'limits.h' outside of definition 2020-07-21 18:51:25 -07:00
Daan 532447fb33 Merge pull request #272 from devnexen/illumos_build
illumos support/build fix and large page support
2020-07-21 18:46:28 -07:00
Daan e5ede9c723 Merge pull request #264 from DerVogel2020/dev
use stored pointer #257
2020-07-21 18:35:51 -07:00
Daan 56b58a8021 Merge pull request #267 from devnexen/haiku_support
haiku support.
2020-07-21 18:32:40 -07:00
daan 76756ad63c update documentation 2020-07-21 18:27:54 -07:00