Author: lebedevri Date: Fri Mar 22 12:46:01 2019 New Revision: 356800 URL: http://llvm.org/viewvc/llvm-project?rev=356800&view=rev Log: [clang-tidy] A new OpenMP module
Summary: Just the empty skeleton. Previously reviewed as part of D57113. Reviewers: JonasToth, aaron.ballman, alexfh, xazax.hun, hokein, gribozavr Reviewed By: JonasToth, gribozavr Subscribers: jdoerfert, mgorny, rnkovacs, guansong, arphaman, cfe-commits Tags: #clang-tools-extra, #openmp, #clang Differential Revision: https://reviews.llvm.org/D57571 Added: clang-tools-extra/trunk/clang-tidy/openmp/ clang-tools-extra/trunk/clang-tidy/openmp/CMakeLists.txt clang-tools-extra/trunk/clang-tidy/openmp/OpenMPTidyModule.cpp Modified: clang-tools-extra/trunk/clang-tidy/CMakeLists.txt clang-tools-extra/trunk/clang-tidy/ClangTidyForceLinker.h clang-tools-extra/trunk/clang-tidy/plugin/CMakeLists.txt clang-tools-extra/trunk/clang-tidy/tool/CMakeLists.txt clang-tools-extra/trunk/docs/ReleaseNotes.rst clang-tools-extra/trunk/docs/clang-tidy/index.rst Modified: clang-tools-extra/trunk/clang-tidy/CMakeLists.txt URL: http://llvm.org/viewvc/llvm-project/clang-tools-extra/trunk/clang-tidy/CMakeLists.txt?rev=356800&r1=356799&r2=356800&view=diff ============================================================================== --- clang-tools-extra/trunk/clang-tidy/CMakeLists.txt (original) +++ clang-tools-extra/trunk/clang-tidy/CMakeLists.txt Fri Mar 22 12:46:01 2019 @@ -50,6 +50,7 @@ if(CLANG_ENABLE_STATIC_ANALYZER) add_subdirectory(mpi) endif() add_subdirectory(objc) +add_subdirectory(openmp) add_subdirectory(performance) add_subdirectory(plugin) add_subdirectory(portability) Modified: clang-tools-extra/trunk/clang-tidy/ClangTidyForceLinker.h URL: http://llvm.org/viewvc/llvm-project/clang-tools-extra/trunk/clang-tidy/ClangTidyForceLinker.h?rev=356800&r1=356799&r2=356800&view=diff ============================================================================== --- clang-tools-extra/trunk/clang-tidy/ClangTidyForceLinker.h (original) +++ clang-tools-extra/trunk/clang-tidy/ClangTidyForceLinker.h Fri Mar 22 12:46:01 2019 @@ -77,6 +77,11 @@ static int LLVM_ATTRIBUTE_UNUSED MPIModu MPIModuleAnchorSource; #endif +// This anchor is used to force the linker to link the OpenMPModule. +extern volatile int OpenMPModuleAnchorSource; +static int LLVM_ATTRIBUTE_UNUSED OpenMPModuleAnchorDestination = + OpenMPModuleAnchorSource; + // This anchor is used to force the linker to link the PerformanceModule. extern volatile int PerformanceModuleAnchorSource; static int LLVM_ATTRIBUTE_UNUSED PerformanceModuleAnchorDestination = Added: clang-tools-extra/trunk/clang-tidy/openmp/CMakeLists.txt URL: http://llvm.org/viewvc/llvm-project/clang-tools-extra/trunk/clang-tidy/openmp/CMakeLists.txt?rev=356800&view=auto ============================================================================== --- clang-tools-extra/trunk/clang-tidy/openmp/CMakeLists.txt (added) +++ clang-tools-extra/trunk/clang-tidy/openmp/CMakeLists.txt Fri Mar 22 12:46:01 2019 @@ -0,0 +1,11 @@ +set(LLVM_LINK_COMPONENTS support) + +add_clang_library(clangTidyOpenMPModule + OpenMPTidyModule.cpp + + LINK_LIBS + clangAST + clangASTMatchers + clangBasic + clangTidy + ) Added: clang-tools-extra/trunk/clang-tidy/openmp/OpenMPTidyModule.cpp URL: http://llvm.org/viewvc/llvm-project/clang-tools-extra/trunk/clang-tidy/openmp/OpenMPTidyModule.cpp?rev=356800&view=auto ============================================================================== --- clang-tools-extra/trunk/clang-tidy/openmp/OpenMPTidyModule.cpp (added) +++ clang-tools-extra/trunk/clang-tidy/openmp/OpenMPTidyModule.cpp Fri Mar 22 12:46:01 2019 @@ -0,0 +1,35 @@ +//===--- OpenMPTidyModule.cpp - clang-tidy--------------------------------===// +// +// Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions. +// See https://llvm.org/LICENSE.txt for license information. +// SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception +// +//===----------------------------------------------------------------------===// + +#include "../ClangTidy.h" +#include "../ClangTidyModule.h" +#include "../ClangTidyModuleRegistry.h" + +namespace clang { +namespace tidy { +namespace openmp { + +/// This module is for OpenMP-specific checks. +class OpenMPModule : public ClangTidyModule { +public: + void addCheckFactories(ClangTidyCheckFactories &CheckFactories) override { + } +}; + +// Register the OpenMPTidyModule using this statically initialized variable. +static ClangTidyModuleRegistry::Add<OpenMPModule> + X("openmp-module", "Adds OpenMP-specific checks."); + +} // namespace openmp + +// This anchor is used to force the linker to link in the generated object file +// and thus register the OpenMPModule. +volatile int OpenMPModuleAnchorSource = 0; + +} // namespace tidy +} // namespace clang Modified: clang-tools-extra/trunk/clang-tidy/plugin/CMakeLists.txt URL: http://llvm.org/viewvc/llvm-project/clang-tools-extra/trunk/clang-tidy/plugin/CMakeLists.txt?rev=356800&r1=356799&r2=356800&view=diff ============================================================================== --- clang-tools-extra/trunk/clang-tidy/plugin/CMakeLists.txt (original) +++ clang-tools-extra/trunk/clang-tidy/plugin/CMakeLists.txt Fri Mar 22 12:46:01 2019 @@ -21,6 +21,7 @@ add_clang_library(clangTidyPlugin clangTidyMiscModule clangTidyModernizeModule clangTidyObjCModule + clangTidyOpenMPModule clangTidyPerformanceModule clangTidyPortabilityModule clangTidyReadabilityModule Modified: clang-tools-extra/trunk/clang-tidy/tool/CMakeLists.txt URL: http://llvm.org/viewvc/llvm-project/clang-tools-extra/trunk/clang-tidy/tool/CMakeLists.txt?rev=356800&r1=356799&r2=356800&view=diff ============================================================================== --- clang-tools-extra/trunk/clang-tidy/tool/CMakeLists.txt (original) +++ clang-tools-extra/trunk/clang-tidy/tool/CMakeLists.txt Fri Mar 22 12:46:01 2019 @@ -30,6 +30,7 @@ target_link_libraries(clang-tidy clangTidyMiscModule clangTidyModernizeModule clangTidyObjCModule + clangTidyOpenMPModule clangTidyPerformanceModule clangTidyPortabilityModule clangTidyReadabilityModule Modified: clang-tools-extra/trunk/docs/ReleaseNotes.rst URL: http://llvm.org/viewvc/llvm-project/clang-tools-extra/trunk/docs/ReleaseNotes.rst?rev=356800&r1=356799&r2=356800&view=diff ============================================================================== --- clang-tools-extra/trunk/docs/ReleaseNotes.rst (original) +++ clang-tools-extra/trunk/docs/ReleaseNotes.rst Fri Mar 22 12:46:01 2019 @@ -67,6 +67,10 @@ The improvements are... Improvements to clang-tidy -------------------------- +- New OpenMP module. + + For checks specific to `OpenMP <https://www.openmp.org/>`_ API. + - New :doc:`abseil-duration-addition <clang-tidy/checks/abseil-duration-addition>` check. Modified: clang-tools-extra/trunk/docs/clang-tidy/index.rst URL: http://llvm.org/viewvc/llvm-project/clang-tools-extra/trunk/docs/clang-tidy/index.rst?rev=356800&r1=356799&r2=356800&view=diff ============================================================================== --- clang-tools-extra/trunk/docs/clang-tidy/index.rst (original) +++ clang-tools-extra/trunk/docs/clang-tidy/index.rst Fri Mar 22 12:46:01 2019 @@ -73,6 +73,7 @@ Name prefix Description means "C++11") language constructs. ``mpi-`` Checks related to MPI (Message Passing Interface). ``objc-`` Checks related to Objective-C coding conventions. +``openmp-`` Checks related to OpenMP API. ``performance-`` Checks that target performance-related issues. ``portability-`` Checks that target portability-related issues that don't relate to any particular coding style. _______________________________________________ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits