1375 Commits

Author SHA1 Message Date
Christian Mazakas
4c927cd2f2 Implement myriad insert() overloads, get first threaded test working 2023-03-20 16:00:54 -07:00
joaquintides
2fae05ed31 made concurrent_table use table_core's automatic capacity growth formula 2023-03-20 12:43:57 -07:00
joaquintides
63f51e7c41 fixed concurrent_table_arrays::delete_ 2023-03-20 12:43:57 -07:00
joaquintides
ba4f321934 removed unused typedef 2023-03-20 12:43:57 -07:00
joaquintides
68563fab72 removed unused typedef 2023-03-20 12:43:57 -07:00
joaquintides
d8e9503869 made table_arrays non-aggregate for the benefit of older compilers 2023-03-20 12:43:57 -07:00
joaquintides
86e998cbc7 fixed UB in dummy_group_accesses 2023-03-20 12:43:57 -07:00
joaquintides
ce722e4d56 avoided shadowing 2023-03-20 12:43:57 -07:00
joaquintides
77eaab4803 provided concurrent_table_arrays ctor to satisfy older compilers 2023-03-20 12:43:57 -07:00
joaquintides
96562f4c3b hardened non-embedded group_access 2023-03-20 12:43:57 -07:00
joaquintides
d66ceaf7fe avoided std::atomic_* aliases 2023-03-20 12:43:57 -07:00
joaquintides
2e44769247 added preliminary version of non-embedded group_access 2023-03-20 12:43:57 -07:00
joaquintides
e64fd45760 removed inefficient group15::match_really_occupied 2023-03-20 12:43:57 -07:00
joaquintides
454fc7501e extended shutting down VS C4324 warning 2023-03-20 12:43:57 -07:00
joaquintides
a89c62728a removed unnecessary mutable 2023-03-20 12:43:57 -07:00
joaquintides
1d8c0f91f8 avoided name hiding 2023-03-20 12:43:57 -07:00
joaquintides
25ba8e4dfc shut down VS C4324 warning 2023-03-20 12:43:57 -07:00
joaquintides
fb4437219f fixed memory ordering in atomic_integral 2023-03-20 12:43:57 -07:00
joaquintides
0d1fdae84c implemented safe concurrent_table::load_factor 2023-03-20 12:43:57 -07:00
joaquintides
c5debf11cf added explicit disabling/enabling of parallel algorithms 2023-03-20 12:43:57 -07:00
Christian Mazakas
9e4f89aa43 Continue fleshing out insert_tests 2023-03-20 12:43:57 -07:00
Christian Mazakas
12935eb695 Add minimal prototype of concurrent_flat_map 2023-03-20 12:43:57 -07:00
Christian Mazakas
2386188d69 Relocate macros needed by test suite into detail/fwd.hpp 2023-03-20 12:43:57 -07:00
Christian Mazakas
e4b32f7f5e Update rw_spinlock impl to mirror github.com/pdimov's impl 2023-03-20 12:43:57 -07:00
Christian Mazakas
3df435d4d3 Temporarily suppress warning about memset'ing non-trivial types by using a constructor loop 2023-03-20 12:43:57 -07:00
Christian Mazakas
ed076facc4 Stabilize ABI of cacheline_protected by hardcoding its alignment to 64 2023-03-20 12:43:57 -07:00
Christian Mazakas
b09c5bdcf0 Add missing <execution> header 2023-03-20 12:43:57 -07:00
Christian Mazakas
6abb94bb68 Silence unused variable warnings in for_all_elements_exec 2023-03-20 12:43:57 -07:00
Christian Mazakas
d2b1f095c8 Update atomic_uint nsdmi to eschew potentially deleted copy constructor 2023-03-20 12:43:57 -07:00
joaquintides
3d34571654 tried yest another variation for for_all_elements_while 2023-03-20 12:43:57 -07:00
joaquintides
d683b3ac3e disabled use of match_really_occupied in for_all_elements_while 2023-03-20 12:43:57 -07:00
joaquintides
e16a8737f4 shut down GCC Winterference-size 2023-03-20 12:43:57 -07:00
joaquintides
8f348aea26 temporarily disabled parallel algorithms 2023-03-20 12:43:57 -07:00
joaquintides
9a8ba2bdff re-enabled match_really_occupied in for_all_elements_while 2023-03-20 12:43:57 -07:00
joaquintides
3aaefdcc78 completed concurrent_table's API 2023-03-20 12:43:57 -07:00
joaquintides
ca59ed8c50 avoided usage of match_really_occupied on for_all_elements_while (used by rehash) 2023-03-20 12:43:57 -07:00
joaquintides
ff78ef25c0 removed unnecessary forwards and captures 2023-03-20 12:43:57 -07:00
joaquintides
ec487b5c6c stylistic 2023-03-20 12:43:57 -07:00
joaquintides
0a03ed8170 weakened atomic_integral ops, fixed some trivial bugs 2023-03-20 12:43:57 -07:00
joaquintides
5881dcc2b2 done reverse unlock in multimutex 2023-03-20 12:43:57 -07:00
joaquintides
2070cbe2cc fixed regression in table_core(table_core&&) 2023-03-20 12:43:57 -07:00
joaquintides
8198b9c57c dropped erroneous call to user-provided f 2023-03-20 12:43:57 -07:00
joaquintides
c35e9fc631 made slot setting on insertion exception safe 2023-03-20 12:43:57 -07:00
joaquintides
f244ba55de switched from available to size_ 2023-03-20 12:43:57 -07:00
joaquintides
5e225fe46c micro-optimized reserve_available 2023-03-20 12:43:57 -07:00
joaquintides
06535e518e uploaded first draft of foa::concurrent_table 2023-03-20 12:43:57 -07:00
joaquintides
81584c22cf swapped member order in alloc_cted_insert_type to suppress padding warnings 2023-03-20 12:43:57 -07:00
joaquintides
83040211e8 recovered warninng supression pragmas 2023-03-20 12:43:56 -07:00
joaquintides
4ed301df97 refactored insert_type creation in emplace 2023-03-20 12:43:56 -07:00
joaquintides
8010f506a6 added SizeImpl and fixed some size arithmetic bugs 2023-03-20 12:43:56 -07:00