atomic.cpp: waitable atomics got brutally rewritten

Hashtable increased and flatten, tree-alike extensions removed.
Some things simplified, so it can actually decrease perf a bit.
But most platforms shouldn't be affected.
Removed limit of 56 waiters per pointer.
Real limit now is about 65535.
This commit is contained in:
Nekotekina 2020-11-11 04:08:54 +03:00
parent 52fa69d93d
commit c047ab6147
2 changed files with 475 additions and 615 deletions

File diff suppressed because it is too large Load Diff

View File

@ -19,8 +19,7 @@ namespace atomic_wait
{
constexpr uint max_list = 8;
struct sync_var;
struct slot_info;
struct root_info;
struct sema_handle;
struct info