[compiler-rt] 2f91751 - [scudo] Avoid deprecated-volatile warning in HybridMutex::delayLoop (#67135)
via llvm-commits
llvm-commits at lists.llvm.org
Fri Sep 22 10:11:21 PDT 2023
Author: Fabio D'Urso
Date: 2023-09-22T19:11:17+02:00
New Revision: 2f91751daef168ff1959ad1df2d64d7bea6b3152
URL: https://github.com/llvm/llvm-project/commit/2f91751daef168ff1959ad1df2d64d7bea6b3152
DIFF: https://github.com/llvm/llvm-project/commit/2f91751daef168ff1959ad1df2d64d7bea6b3152.diff
LOG: [scudo] Avoid deprecated-volatile warning in HybridMutex::delayLoop (#67135)
That can prevent compilation with -Werror and -std=c++20:
mutex.h:63:7: error: increment of object of volatile-qualified type 'volatile u32' (aka 'volatile unsigned int') is deprecated [-Werror,-Wdeprecated-volatile]
Added:
Modified:
compiler-rt/lib/scudo/standalone/mutex.h
Removed:
################################################################################
diff --git a/compiler-rt/lib/scudo/standalone/mutex.h b/compiler-rt/lib/scudo/standalone/mutex.h
index 38108397b1654bb..4caa945219b5233 100644
--- a/compiler-rt/lib/scudo/standalone/mutex.h
+++ b/compiler-rt/lib/scudo/standalone/mutex.h
@@ -59,8 +59,10 @@ class CAPABILITY("mutex") HybridMutex {
// fast operations.
constexpr u32 SpinTimes = 16;
volatile u32 V = 0;
- for (u32 I = 0; I < SpinTimes; ++I)
- ++V;
+ for (u32 I = 0; I < SpinTimes; ++I) {
+ u32 Tmp = V + 1;
+ V = Tmp;
+ }
}
void assertHeldImpl();
More information about the llvm-commits
mailing list