[clang-tidy] Rename objc-avoid-spinlock check to darwin-avoid-spinlock
Summary:
OSSpinLock* are Apple/Darwin functions, but were previously located with ObjC checks as those were most closely tied to Apple platforms before.
Now that there's a specific Darwin module, relocating the check there.
This change was prepared by running rename_check.py.
Contributed By: mwyman
Reviewers: stephanemoore, dmaclach
Reviewed By: stephanemoore
Subscribers: Eugene.Zelenko, mgorny, xazax.hun, cfe-commits
Tags: #clang-tools-extra, #clang, #llvm
Differential Revision: https://reviews.llvm.org/D68148
git-svn-id: https://llvm.org/svn/llvm-project/clang-tools-extra/trunk@373392 91177308-0d34-0410-b5e6-96231b3b80d8
diff --git a/clang-tidy/objc/AvoidSpinlockCheck.cpp b/clang-tidy/darwin/AvoidSpinlockCheck.cpp
similarity index 96%
rename from clang-tidy/objc/AvoidSpinlockCheck.cpp
rename to clang-tidy/darwin/AvoidSpinlockCheck.cpp
index ac3d2b2..2a52725 100644
--- a/clang-tidy/objc/AvoidSpinlockCheck.cpp
+++ b/clang-tidy/darwin/AvoidSpinlockCheck.cpp
@@ -14,7 +14,7 @@
namespace clang {
namespace tidy {
-namespace objc {
+namespace darwin {
void AvoidSpinlockCheck::registerMatchers(MatchFinder *Finder) {
Finder->addMatcher(
@@ -31,6 +31,6 @@
"deprecated OSSpinLock");
}
-} // namespace objc
+} // namespace darwin
} // namespace tidy
} // namespace clang
diff --git a/clang-tidy/objc/AvoidSpinlockCheck.h b/clang-tidy/darwin/AvoidSpinlockCheck.h
similarity index 73%
rename from clang-tidy/objc/AvoidSpinlockCheck.h
rename to clang-tidy/darwin/AvoidSpinlockCheck.h
index dd40962..6ea10c5 100644
--- a/clang-tidy/objc/AvoidSpinlockCheck.h
+++ b/clang-tidy/darwin/AvoidSpinlockCheck.h
@@ -6,20 +6,20 @@
//
//===----------------------------------------------------------------------===//
-#ifndef LLVM_CLANG_TOOLS_EXTRA_CLANG_TIDY_OBJC_AVOID_SPINLOCK_H
-#define LLVM_CLANG_TOOLS_EXTRA_CLANG_TIDY_OBJC_AVOID_SPINLOCK_H
+#ifndef LLVM_CLANG_TOOLS_EXTRA_CLANG_TIDY_DARWIN_AVOIDSPINLOCKCHECK_H
+#define LLVM_CLANG_TOOLS_EXTRA_CLANG_TIDY_DARWIN_AVOIDSPINLOCKCHECK_H
#include "../ClangTidyCheck.h"
namespace clang {
namespace tidy {
-namespace objc {
+namespace darwin {
/// Finds usages of OSSpinlock, which is deprecated due to potential livelock
/// problems.
///
/// For the user-facing documentation see:
-/// http://clang.llvm.org/extra/clang-tidy/checks/objc-avoid-spinlock.html
+/// http://clang.llvm.org/extra/clang-tidy/checks/darwin-avoid-spinlock.html
class AvoidSpinlockCheck : public ClangTidyCheck {
public:
AvoidSpinlockCheck(StringRef Name, ClangTidyContext *Context)
@@ -28,8 +28,8 @@
void check(const ast_matchers::MatchFinder::MatchResult &Result) override;
};
-} // namespace objc
+} // namespace darwin
} // namespace tidy
} // namespace clang
-#endif // LLVM_CLANG_TOOLS_EXTRA_CLANG_TIDY_OBJC_AVOID_SPINLOCK_H
+#endif // LLVM_CLANG_TOOLS_EXTRA_CLANG_TIDY_DARWIN_AVOIDSPINLOCKCHECK_H
diff --git a/clang-tidy/darwin/CMakeLists.txt b/clang-tidy/darwin/CMakeLists.txt
index 5a34bd1..c650efb 100644
--- a/clang-tidy/darwin/CMakeLists.txt
+++ b/clang-tidy/darwin/CMakeLists.txt
@@ -1,6 +1,7 @@
set(LLVM_LINK_COMPONENTS support)
add_clang_library(clangTidyDarwinModule
+ AvoidSpinlockCheck.cpp
DarwinTidyModule.cpp
DispatchOnceNonstaticCheck.cpp
diff --git a/clang-tidy/darwin/DarwinTidyModule.cpp b/clang-tidy/darwin/DarwinTidyModule.cpp
index 5c10cdf..d11ef1f 100644
--- a/clang-tidy/darwin/DarwinTidyModule.cpp
+++ b/clang-tidy/darwin/DarwinTidyModule.cpp
@@ -9,6 +9,7 @@
#include "../ClangTidy.h"
#include "../ClangTidyModule.h"
#include "../ClangTidyModuleRegistry.h"
+#include "AvoidSpinlockCheck.h"
#include "DispatchOnceNonstaticCheck.h"
namespace clang {
@@ -18,6 +19,8 @@
class DarwinModule : public ClangTidyModule {
public:
void addCheckFactories(ClangTidyCheckFactories &CheckFactories) override {
+ CheckFactories.registerCheck<AvoidSpinlockCheck>(
+ "darwin-avoid-spinlock");
CheckFactories.registerCheck<DispatchOnceNonstaticCheck>(
"darwin-dispatch-once-nonstatic");
}
diff --git a/clang-tidy/objc/CMakeLists.txt b/clang-tidy/objc/CMakeLists.txt
index 0a12e4a..68dda65 100644
--- a/clang-tidy/objc/CMakeLists.txt
+++ b/clang-tidy/objc/CMakeLists.txt
@@ -2,7 +2,6 @@
add_clang_library(clangTidyObjCModule
AvoidNSErrorInitCheck.cpp
- AvoidSpinlockCheck.cpp
ForbiddenSubclassingCheck.cpp
MissingHashCheck.cpp
ObjCTidyModule.cpp
diff --git a/clang-tidy/objc/ObjCTidyModule.cpp b/clang-tidy/objc/ObjCTidyModule.cpp
index c9b57d5..6991312 100644
--- a/clang-tidy/objc/ObjCTidyModule.cpp
+++ b/clang-tidy/objc/ObjCTidyModule.cpp
@@ -10,7 +10,6 @@
#include "../ClangTidyModule.h"
#include "../ClangTidyModuleRegistry.h"
#include "AvoidNSErrorInitCheck.h"
-#include "AvoidSpinlockCheck.h"
#include "ForbiddenSubclassingCheck.h"
#include "MissingHashCheck.h"
#include "PropertyDeclarationCheck.h"
@@ -27,8 +26,6 @@
void addCheckFactories(ClangTidyCheckFactories &CheckFactories) override {
CheckFactories.registerCheck<AvoidNSErrorInitCheck>(
"objc-avoid-nserror-init");
- CheckFactories.registerCheck<AvoidSpinlockCheck>(
- "objc-avoid-spinlock");
CheckFactories.registerCheck<ForbiddenSubclassingCheck>(
"objc-forbidden-subclassing");
CheckFactories.registerCheck<MissingHashCheck>(
diff --git a/docs/ReleaseNotes.rst b/docs/ReleaseNotes.rst
index b3a245d..2ba944b 100644
--- a/docs/ReleaseNotes.rst
+++ b/docs/ReleaseNotes.rst
@@ -115,6 +115,9 @@
Now also checks if any calls to ``pthread_*`` functions expect negative return
values.
+- The 'objc-avoid-spinlock' check was renamed to :doc:`darwin-avoid-spinlock
+ <clang-tidy/checks/darwin-avoid-spinlock>`
+
Improvements to include-fixer
-----------------------------
diff --git a/docs/clang-tidy/checks/objc-avoid-spinlock.rst b/docs/clang-tidy/checks/darwin-avoid-spinlock.rst
similarity index 79%
rename from docs/clang-tidy/checks/objc-avoid-spinlock.rst
rename to docs/clang-tidy/checks/darwin-avoid-spinlock.rst
index d1b11fc..fd1f5d2 100644
--- a/docs/clang-tidy/checks/objc-avoid-spinlock.rst
+++ b/docs/clang-tidy/checks/darwin-avoid-spinlock.rst
@@ -1,7 +1,7 @@
-.. title:: clang-tidy - objc-avoid-spinlock
+.. title:: clang-tidy - darwin-avoid-spinlock
-objc-avoid-spinlock
-===================
+darwin-avoid-spinlock
+=====================
Finds usages of ``OSSpinlock``, which is deprecated due to potential livelock
problems.
diff --git a/docs/clang-tidy/checks/list.rst b/docs/clang-tidy/checks/list.rst
index 36ecb0a..ae7ca49 100644
--- a/docs/clang-tidy/checks/list.rst
+++ b/docs/clang-tidy/checks/list.rst
@@ -212,6 +212,7 @@
cppcoreguidelines-pro-type-vararg
cppcoreguidelines-slicing
cppcoreguidelines-special-member-functions
+ darwin-avoid-spinlock
darwin-dispatch-once-nonstatic
fuchsia-default-arguments-calls
fuchsia-default-arguments-declarations
@@ -325,7 +326,6 @@
mpi-buffer-deref
mpi-type-mismatch
objc-avoid-nserror-init
- objc-avoid-spinlock
objc-forbidden-subclassing
objc-missing-hash
objc-property-declaration
diff --git a/test/clang-tidy/objc-avoid-spinlock.m b/test/clang-tidy/darwin-avoid-spinlock.m
similarity index 78%
rename from test/clang-tidy/objc-avoid-spinlock.m
rename to test/clang-tidy/darwin-avoid-spinlock.m
index f9f05cb..c870e0a 100644
--- a/test/clang-tidy/objc-avoid-spinlock.m
+++ b/test/clang-tidy/darwin-avoid-spinlock.m
@@ -1,4 +1,4 @@
-// RUN: %check_clang_tidy %s objc-avoid-spinlock %t
+// RUN: %check_clang_tidy %s darwin-avoid-spinlock %t
typedef int OSSpinLock;
@@ -6,10 +6,10 @@
- (void)f {
int i = 1;
OSSpinlockLock(&i);
- // CHECK-MESSAGES: :[[@LINE-1]]:5: warning: use os_unfair_lock_lock() or dispatch queue APIs instead of the deprecated OSSpinLock [objc-avoid-spinlock]
+ // CHECK-MESSAGES: :[[@LINE-1]]:5: warning: use os_unfair_lock_lock() or dispatch queue APIs instead of the deprecated OSSpinLock [darwin-avoid-spinlock]
OSSpinlockTry(&i);
- // CHECK-MESSAGES: :[[@LINE-1]]:5: warning: use os_unfair_lock_lock() or dispatch queue APIs instead of the deprecated OSSpinLock [objc-avoid-spinlock]
+ // CHECK-MESSAGES: :[[@LINE-1]]:5: warning: use os_unfair_lock_lock() or dispatch queue APIs instead of the deprecated OSSpinLock [darwin-avoid-spinlock]
OSSpinlockUnlock(&i);
- // CHECK-MESSAGES: :[[@LINE-1]]:5: warning: use os_unfair_lock_lock() or dispatch queue APIs instead of the deprecated OSSpinLock [objc-avoid-spinlock]
+ // CHECK-MESSAGES: :[[@LINE-1]]:5: warning: use os_unfair_lock_lock() or dispatch queue APIs instead of the deprecated OSSpinLock [darwin-avoid-spinlock]
}
@end