diff options
Diffstat (limited to 'libc/src/__support/CPP/atomic.h')
-rw-r--r-- | libc/src/__support/CPP/atomic.h | 4 |
1 files changed, 4 insertions, 0 deletions
diff --git a/libc/src/__support/CPP/atomic.h b/libc/src/__support/CPP/atomic.h index 495d492a0b7c..6922a367289a 100644 --- a/libc/src/__support/CPP/atomic.h +++ b/libc/src/__support/CPP/atomic.h @@ -90,6 +90,10 @@ public: return __atomic_fetch_or(&val, mask, int(mem_ord)); } + T fetch_and(T mask, MemoryOrder mem_ord = MemoryOrder::SEQ_CST) { + return __atomic_fetch_and(&val, mask, int(mem_ord)); + } + T fetch_sub(T decrement, MemoryOrder mem_ord = MemoryOrder::SEQ_CST) { return __atomic_fetch_sub(&val, decrement, int(mem_ord)); } |