Replace an instance of custom atomics with standard ones.
authorBenjamin Kramer <benny.kra@googlemail.com>
Thu, 11 Jun 2015 17:30:34 +0000 (17:30 +0000)
committerBenjamin Kramer <benny.kra@googlemail.com>
Thu, 11 Jun 2015 17:30:34 +0000 (17:30 +0000)
Eventually I want to get rid of them entirely, but Statistic.h is still blocked
on MSVC bugs. No functionality change.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@239545 91177308-0d34-0410-b5e6-96231b3b80d8

lib/IR/DiagnosticInfo.cpp

index 45be100ae0534621c263620816d5f1958bf7ca5f..50e1ccf834f7e88f8f6faa52e57083ea729b8c37 100644 (file)
@@ -22,9 +22,9 @@
 #include "llvm/IR/Instruction.h"
 #include "llvm/IR/Metadata.h"
 #include "llvm/IR/Module.h"
-#include "llvm/Support/Atomic.h"
 #include "llvm/Support/CommandLine.h"
 #include "llvm/Support/Regex.h"
+#include <atomic>
 #include <string>
 
 using namespace llvm;
@@ -87,8 +87,8 @@ PassRemarksAnalysis(
 }
 
 int llvm::getNextAvailablePluginDiagnosticKind() {
-  static sys::cas_flag PluginKindID = DK_FirstPluginKind;
-  return (int)sys::AtomicIncrement(&PluginKindID);
+  static std::atomic<int> PluginKindID(DK_FirstPluginKind);
+  return ++PluginKindID;
 }
 
 DiagnosticInfoInlineAsm::DiagnosticInfoInlineAsm(const Instruction &I,