atomics.cpp: add support for waiting on 128-bit atomics

Complementarily.
Also refactored to make waiting mask non-template arg.
This commit is contained in:
Nekotekina 2020-10-26 23:32:40 +03:00
parent 13de773486
commit c50233cc92
4 changed files with 60 additions and 7 deletions

View file

@ -12,7 +12,7 @@ void cond_variable::imp_wait(u32 _old, u64 _timeout) noexcept
verify(HERE), _old;
// Wait with timeout
m_value.wait<c_signal_mask>(_old, atomic_wait_timeout{_timeout > max_timeout ? UINT64_MAX : _timeout * 1000});
m_value.wait(_old, c_signal_mask, atomic_wait_timeout{_timeout > max_timeout ? UINT64_MAX : _timeout * 1000});
// Cleanup
m_value.atomic_op([](u32& value)