• Marko Mäkelä's avatar
    MDEV-26467: Use LOCK BTS also with the Microsoft compiler · 309209c5
    Marko Mäkelä authored
    Microsoft does not define inline assembler syntax for AMD64,
    but it defines the intrinsic function _interlockedbittestandset()
    that we can use.
    
    ssux_lock_impl<bool>::rd_wait(): Remove a call to yield,
    because writer.wr_lock() will take care of context switches
    between loop iterations.
    
    This addresses suggestions by Vladislav Vaintroub.
    309209c5
srw_lock.cc 16.5 KB