From 960d2bd158234b2e3ae4f581bcf7d155976dd7a2 Mon Sep 17 00:00:00 2001
From: Joshua Ashton <joshua@froggi.es>
Date: Sat, 11 Jan 2020 03:23:52 +0000
Subject: [PATCH] [util] Add exchange helper to bitset

---
 src/util/util_bit.h | 6 ++++++
 1 file changed, 6 insertions(+)

diff --git a/src/util/util_bit.h b/src/util/util_bit.h
index 319dbae1..23b9cb7b 100644
--- a/src/util/util_bit.h
+++ b/src/util/util_bit.h
@@ -205,6 +205,12 @@ namespace dxvk::bit {
         m_dwords[dword] &= ~(1u << bit);
     }
 
+    constexpr bool exchange(uint32_t idx, bool value) {
+      bool oldValue = get(idx);
+      set(idx, value);
+      return oldValue;
+    }
+
     constexpr void flip(uint32_t idx) {
       uint32_t dword = 0;
       uint32_t bit   = idx;