llvmbot wrote:
<!--LLVM PR SUMMARY COMMENT--> @llvm/pr-subscribers-backend-x86 Author: Naveen Seth Hanig (naveen-seth) <details> <summary>Changes</summary> Reverts llvm/llvm-project#<!-- -->163659 due to missing one reference clang/Driver/Options.h in `clang/include/clang/Driver/Driver.h`. See https://github.com/llvm/llvm-project/pull/163659#issuecomment-3512979187 --- Patch is 188.19 KiB, truncated to 20.00 KiB below, full version: https://github.com/llvm/llvm-project/pull/167348.diff 118 Files Affected: - (modified) clang-tools-extra/clangd/CMakeLists.txt (-1) - (modified) clang-tools-extra/clangd/CompileCommands.cpp (+14-13) - (modified) clang-tools-extra/modularize/CMakeLists.txt (-1) - (modified) clang-tools-extra/modularize/CoverageChecker.cpp (+3-3) - (modified) clang-tools-extra/modularize/Modularize.cpp (+2-2) - (modified) clang-tools-extra/modularize/ModularizeUtilities.cpp (+3-3) - (modified) clang-tools-extra/pp-trace/CMakeLists.txt (-1) - (modified) clang-tools-extra/pp-trace/PPTrace.cpp (+1-1) - (modified) clang/docs/CMakeLists.txt (+1-1) - (modified) clang/docs/InternalsManual.rst (+4-4) - (modified) clang/docs/ReleaseNotes.rst (-3) - (modified) clang/include/clang/CMakeLists.txt (+1-1) - (renamed) clang/include/clang/Driver/CMakeLists.txt () - (renamed) clang/include/clang/Driver/ClangOptionDocs.td () - (modified) clang/include/clang/Driver/Driver.h (+1-1) - (renamed) clang/include/clang/Driver/OptionUtils.h (+3-3) - (renamed) clang/include/clang/Driver/Options.h (+11-9) - (renamed) clang/include/clang/Driver/Options.td () - (modified) clang/include/clang/Frontend/Utils.h (+1-1) - (modified) clang/include/module.modulemap (-1) - (modified) clang/lib/CMakeLists.txt (-1) - (modified) clang/lib/Driver/CMakeLists.txt (+2-1) - (modified) clang/lib/Driver/Compilation.cpp (+1-1) - (modified) clang/lib/Driver/Driver.cpp (+1-1) - (renamed) clang/lib/Driver/DriverOptions.cpp (+10-9) - (renamed) clang/lib/Driver/OptionUtils.cpp (+1-1) - (modified) clang/lib/Driver/SanitizerArgs.cpp (+1-1) - (modified) clang/lib/Driver/ToolChain.cpp (+3-3) - (modified) clang/lib/Driver/ToolChains/AIX.cpp (+3-3) - (modified) clang/lib/Driver/ToolChains/AMDGPU.cpp (+12-9) - (modified) clang/lib/Driver/ToolChains/AMDGPU.h (+1-1) - (modified) clang/lib/Driver/ToolChains/AMDGPUOpenMP.cpp (+1-1) - (modified) clang/lib/Driver/ToolChains/AVR.cpp (+1-1) - (modified) clang/lib/Driver/ToolChains/Arch/AArch64.cpp (+2-2) - (modified) clang/lib/Driver/ToolChains/Arch/ARM.cpp (+2-2) - (modified) clang/lib/Driver/ToolChains/Arch/CSKY.cpp (+3-3) - (modified) clang/lib/Driver/ToolChains/Arch/LoongArch.cpp (+3-2) - (modified) clang/lib/Driver/ToolChains/Arch/M68k.cpp (+8-8) - (modified) clang/lib/Driver/ToolChains/Arch/Mips.cpp (+3-2) - (modified) clang/lib/Driver/ToolChains/Arch/PPC.cpp (+1-1) - (modified) clang/lib/Driver/ToolChains/Arch/RISCV.cpp (+1-1) - (modified) clang/lib/Driver/ToolChains/Arch/Sparc.cpp (+2-2) - (modified) clang/lib/Driver/ToolChains/Arch/SystemZ.cpp (+5-5) - (modified) clang/lib/Driver/ToolChains/Arch/VE.cpp (+1-1) - (modified) clang/lib/Driver/ToolChains/Arch/X86.cpp (+9-9) - (modified) clang/lib/Driver/ToolChains/BareMetal.cpp (+2-2) - (modified) clang/lib/Driver/ToolChains/CSKYToolChain.cpp (+1-1) - (modified) clang/lib/Driver/ToolChains/Clang.cpp (+7-6) - (modified) clang/lib/Driver/ToolChains/CommonArgs.cpp (+13-11) - (modified) clang/lib/Driver/ToolChains/CrossWindows.cpp (+1-1) - (modified) clang/lib/Driver/ToolChains/Cuda.cpp (+4-4) - (modified) clang/lib/Driver/ToolChains/Cygwin.cpp (+2-2) - (modified) clang/lib/Driver/ToolChains/Darwin.cpp (+3-3) - (modified) clang/lib/Driver/ToolChains/DragonFly.cpp (+2-2) - (modified) clang/lib/Driver/ToolChains/Flang.cpp (+2-2) - (modified) clang/lib/Driver/ToolChains/FreeBSD.cpp (+2-2) - (modified) clang/lib/Driver/ToolChains/Fuchsia.cpp (+2-2) - (modified) clang/lib/Driver/ToolChains/Gnu.cpp (+6-4) - (modified) clang/lib/Driver/ToolChains/HIPAMD.cpp (+1-1) - (modified) clang/lib/Driver/ToolChains/HIPSPV.cpp (+2-2) - (modified) clang/lib/Driver/ToolChains/HIPUtility.cpp (+1-1) - (modified) clang/lib/Driver/ToolChains/Hexagon.cpp (+1-1) - (modified) clang/lib/Driver/ToolChains/Hurd.cpp (+2-2) - (modified) clang/lib/Driver/ToolChains/Linux.cpp (+2-2) - (modified) clang/lib/Driver/ToolChains/MSP430.cpp (+1-1) - (modified) clang/lib/Driver/ToolChains/MSVC.cpp (+1-1) - (modified) clang/lib/Driver/ToolChains/Managarm.cpp (+2-2) - (modified) clang/lib/Driver/ToolChains/MinGW.cpp (+1-1) - (modified) clang/lib/Driver/ToolChains/MipsLinux.cpp (+2-2) - (modified) clang/lib/Driver/ToolChains/NetBSD.cpp (+2-2) - (modified) clang/lib/Driver/ToolChains/OHOS.cpp (+2-2) - (modified) clang/lib/Driver/ToolChains/OpenBSD.cpp (+2-2) - (modified) clang/lib/Driver/ToolChains/PPCFreeBSD.cpp (+2-2) - (modified) clang/lib/Driver/ToolChains/PPCLinux.cpp (+2-2) - (modified) clang/lib/Driver/ToolChains/PS4CPU.cpp (+1-1) - (modified) clang/lib/Driver/ToolChains/SPIRV.cpp (+1-1) - (modified) clang/lib/Driver/ToolChains/SYCL.cpp (+1-1) - (modified) clang/lib/Driver/ToolChains/Solaris.cpp (+2-2) - (modified) clang/lib/Driver/ToolChains/UEFI.cpp (+1-1) - (modified) clang/lib/Driver/ToolChains/VEToolchain.cpp (+3-3) - (modified) clang/lib/Driver/ToolChains/WebAssembly.cpp (+3-3) - (modified) clang/lib/Driver/ToolChains/XCore.cpp (+3-3) - (modified) clang/lib/Driver/ToolChains/ZOS.cpp (+1-1) - (modified) clang/lib/Driver/XRayArgs.cpp (+1-1) - (modified) clang/lib/Frontend/CMakeLists.txt (-1) - (modified) clang/lib/Frontend/CompilerInvocation.cpp (+27-27) - (modified) clang/lib/Frontend/CreateInvocationFromCommandLine.cpp (+3-3) - (modified) clang/lib/FrontendTool/CMakeLists.txt (-1) - (modified) clang/lib/FrontendTool/ExecuteCompilerInvocation.cpp (+3-3) - (modified) clang/lib/Interpreter/Interpreter.cpp (+2-2) - (modified) clang/lib/Interpreter/InterpreterUtils.h (+1-1) - (removed) clang/lib/Options/CMakeLists.txt (-18) - (modified) clang/lib/Tooling/CMakeLists.txt (-1) - (modified) clang/lib/Tooling/InterpolatingCompilationDatabase.cpp (+6-6) - (modified) clang/lib/Tooling/Tooling.cpp (+7-5) - (modified) clang/tools/clang-check/CMakeLists.txt (-1) - (modified) clang/tools/clang-check/ClangCheck.cpp (+2-2) - (modified) clang/tools/clang-installapi/CMakeLists.txt (-1) - (modified) clang/tools/clang-installapi/ClangInstallAPI.cpp (+2-2) - (modified) clang/tools/clang-installapi/Options.cpp (+28-27) - (modified) clang/tools/driver/CMakeLists.txt (-1) - (modified) clang/tools/driver/cc1_main.cpp (+1-1) - (modified) clang/tools/driver/cc1as_main.cpp (+5-3) - (modified) clang/tools/driver/driver.cpp (+1-1) - (modified) clang/unittests/Driver/DXCModeTest.cpp (+2-2) - (modified) clang/www/OpenProjects.html (+1-1) - (modified) flang/docs/CMakeLists.txt (+1-1) - (modified) flang/docs/FlangDriver.md (+4-4) - (modified) flang/lib/Frontend/CMakeLists.txt (-1) - (modified) flang/lib/Frontend/CompilerInvocation.cpp (+291-256) - (modified) flang/lib/FrontendTool/CMakeLists.txt (-1) - (modified) flang/lib/FrontendTool/ExecuteCompilerInvocation.cpp (+3-3) - (modified) flang/tools/flang-driver/CMakeLists.txt (-1) - (modified) flang/tools/flang-driver/driver.cpp (+2-2) - (modified) lldb/source/Plugins/Platform/MacOSX/PlatformDarwin.cpp (+2-2) - (modified) llvm/include/llvm/MC/MCAsmInfo.h (+1-1) - (modified) llvm/include/llvm/Option/Arg.h (+1-1) - (modified) utils/bazel/llvm-project-overlay/clang/BUILD.bazel (+2-2) ``````````diff diff --git a/clang-tools-extra/clangd/CMakeLists.txt b/clang-tools-extra/clangd/CMakeLists.txt index d7ec853af862f..fb3f05329be21 100644 --- a/clang-tools-extra/clangd/CMakeLists.txt +++ b/clang-tools-extra/clangd/CMakeLists.txt @@ -165,7 +165,6 @@ clang_target_link_libraries(clangDaemon clangBasic clangDependencyScanning clangDriver - clangOptions clangFormat clangFrontend clangIndex diff --git a/clang-tools-extra/clangd/CompileCommands.cpp b/clang-tools-extra/clangd/CompileCommands.cpp index 7990f2719e9a0..c1be93730129a 100644 --- a/clang-tools-extra/clangd/CompileCommands.cpp +++ b/clang-tools-extra/clangd/CompileCommands.cpp @@ -11,8 +11,8 @@ #include "support/Logger.h" #include "support/Trace.h" #include "clang/Driver/Driver.h" +#include "clang/Driver/Options.h" #include "clang/Frontend/CompilerInvocation.h" -#include "clang/Options/Options.h" #include "clang/Tooling/CompilationDatabase.h" #include "clang/Tooling/Tooling.h" #include "llvm/ADT/ArrayRef.h" @@ -206,7 +206,7 @@ void CommandMangler::operator()(tooling::CompileCommand &Command, if (Cmd.empty()) return; - auto &OptTable = getDriverOptTable(); + auto &OptTable = clang::driver::getDriverOptTable(); // OriginalArgs needs to outlive ArgList. llvm::SmallVector<const char *, 16> OriginalArgs; OriginalArgs.reserve(Cmd.size()); @@ -222,8 +222,8 @@ void CommandMangler::operator()(tooling::CompileCommand &Command, llvm::opt::InputArgList ArgList; ArgList = OptTable.ParseArgs( llvm::ArrayRef(OriginalArgs).drop_front(), IgnoredCount, IgnoredCount, - llvm::opt::Visibility(IsCLMode ? options::CLOption - : options::ClangOption)); + llvm::opt::Visibility(IsCLMode ? driver::options::CLOption + : driver::options::ClangOption)); llvm::SmallVector<unsigned, 1> IndicesToDrop; // Having multiple architecture options (e.g. when building fat binaries) @@ -232,7 +232,7 @@ void CommandMangler::operator()(tooling::CompileCommand &Command, // As there are no signals to figure out which one user actually wants. They // can explicitly specify one through `CompileFlags.Add` if need be. unsigned ArchOptCount = 0; - for (auto *Input : ArgList.filtered(options::OPT_arch)) { + for (auto *Input : ArgList.filtered(driver::options::OPT_arch)) { ++ArchOptCount; for (auto I = 0U; I <= Input->getNumValues(); ++I) IndicesToDrop.push_back(Input->getIndex() + I); @@ -262,12 +262,13 @@ void CommandMangler::operator()(tooling::CompileCommand &Command, // explicitly at the end of the flags. This ensures modifications done in the // following steps apply in more cases (like setting -x, which only affects // inputs that come after it). - for (auto *Input : ArgList.filtered(options::OPT_INPUT)) { + for (auto *Input : ArgList.filtered(driver::options::OPT_INPUT)) { SawInput(Input->getValue(0)); IndicesToDrop.push_back(Input->getIndex()); } // Anything after `--` is also treated as input, drop them as well. - if (auto *DashDash = ArgList.getLastArgNoClaim(options::OPT__DASH_DASH)) { + if (auto *DashDash = + ArgList.getLastArgNoClaim(driver::options::OPT__DASH_DASH)) { auto DashDashIndex = DashDash->getIndex() + 1; // +1 accounts for Cmd[0] // Another +1 so we don't treat the `--` itself as an input. for (unsigned I = DashDashIndex + 1; I < Cmd.size(); ++I) @@ -423,11 +424,11 @@ DriverMode getDriverMode(const std::vector<std::string> &Args) { // Returns the set of DriverModes where an option may be used. unsigned char getModes(const llvm::opt::Option &Opt) { unsigned char Result = DM_None; - if (Opt.hasVisibilityFlag(options::ClangOption)) + if (Opt.hasVisibilityFlag(driver::options::ClangOption)) Result |= DM_GCC; - if (Opt.hasVisibilityFlag(options::CC1Option)) + if (Opt.hasVisibilityFlag(driver::options::CC1Option)) Result |= DM_CC1; - if (Opt.hasVisibilityFlag(options::CLOption)) + if (Opt.hasVisibilityFlag(driver::options::CLOption)) Result |= DM_CL; return Result; } @@ -441,8 +442,8 @@ llvm::ArrayRef<ArgStripper::Rule> ArgStripper::rulesFor(llvm::StringRef Arg) { using TableTy = llvm::StringMap<llvm::SmallVector<Rule, 4>, llvm::BumpPtrAllocator>; static TableTy *Table = [] { - auto &DriverTable = getDriverOptTable(); - using DriverID = clang::options::ID; + auto &DriverTable = driver::getDriverOptTable(); + using DriverID = clang::driver::options::ID; // Collect sets of aliases, so we can treat -foo and -foo= as synonyms. // Conceptually a double-linked list: PrevAlias[I] -> I -> NextAlias[I]. @@ -467,7 +468,7 @@ llvm::ArrayRef<ArgStripper::Rule> ArgStripper::rulesFor(llvm::StringRef Arg) { FLAGS, VISIBILITY, PARAM, HELPTEXT, HELPTEXTSFORVARIANTS, \ METAVAR, VALUES, SUBCOMMANDIDS_OFFSET) \ {DriverID::OPT_##ID, DriverID::OPT_##ALIAS, ALIASARGS}, -#include "clang/Options/Options.inc" +#include "clang/Driver/Options.inc" #undef OPTION }; for (auto &E : AliasTable) diff --git a/clang-tools-extra/modularize/CMakeLists.txt b/clang-tools-extra/modularize/CMakeLists.txt index a775b790a3147..eb5383c3ad44e 100644 --- a/clang-tools-extra/modularize/CMakeLists.txt +++ b/clang-tools-extra/modularize/CMakeLists.txt @@ -20,7 +20,6 @@ clang_target_link_libraries(modularize clangAST clangBasic clangDriver - clangOptions clangFrontend clangLex clangSerialization diff --git a/clang-tools-extra/modularize/CoverageChecker.cpp b/clang-tools-extra/modularize/CoverageChecker.cpp index d80d78c64c6e2..1345a6ef8f489 100644 --- a/clang-tools-extra/modularize/CoverageChecker.cpp +++ b/clang-tools-extra/modularize/CoverageChecker.cpp @@ -50,18 +50,18 @@ // //===----------------------------------------------------------------------===// -#include "CoverageChecker.h" #include "ModularizeUtilities.h" #include "clang/AST/ASTConsumer.h" +#include "CoverageChecker.h" #include "clang/AST/ASTContext.h" #include "clang/AST/RecursiveASTVisitor.h" #include "clang/Basic/SourceManager.h" +#include "clang/Driver/Options.h" #include "clang/Frontend/CompilerInstance.h" #include "clang/Frontend/FrontendAction.h" #include "clang/Frontend/FrontendActions.h" #include "clang/Lex/PPCallbacks.h" #include "clang/Lex/Preprocessor.h" -#include "clang/Options/Options.h" #include "clang/Tooling/CompilationDatabase.h" #include "clang/Tooling/Tooling.h" #include "llvm/Option/Option.h" @@ -73,7 +73,7 @@ using namespace Modularize; using namespace clang; using namespace clang::driver; -using namespace clang::options; +using namespace clang::driver::options; using namespace clang::tooling; namespace cl = llvm::cl; namespace sys = llvm::sys; diff --git a/clang-tools-extra/modularize/Modularize.cpp b/clang-tools-extra/modularize/Modularize.cpp index 33966b44f719a..376ad0c7875bf 100644 --- a/clang-tools-extra/modularize/Modularize.cpp +++ b/clang-tools-extra/modularize/Modularize.cpp @@ -231,11 +231,11 @@ #include "clang/AST/ASTContext.h" #include "clang/AST/RecursiveASTVisitor.h" #include "clang/Basic/SourceManager.h" +#include "clang/Driver/Options.h" #include "clang/Frontend/CompilerInstance.h" #include "clang/Frontend/FrontendAction.h" #include "clang/Frontend/FrontendActions.h" #include "clang/Lex/Preprocessor.h" -#include "clang/Options/Options.h" #include "clang/Tooling/CompilationDatabase.h" #include "clang/Tooling/Tooling.h" #include "llvm/Option/Arg.h" @@ -254,7 +254,7 @@ using namespace clang; using namespace clang::driver; -using namespace clang::options; +using namespace clang::driver::options; using namespace clang::tooling; using namespace llvm; using namespace llvm::opt; diff --git a/clang-tools-extra/modularize/ModularizeUtilities.cpp b/clang-tools-extra/modularize/ModularizeUtilities.cpp index 6978a6b2fe1b7..4dd84feac5df4 100644 --- a/clang-tools-extra/modularize/ModularizeUtilities.cpp +++ b/clang-tools-extra/modularize/ModularizeUtilities.cpp @@ -12,17 +12,17 @@ // //===----------------------------------------------------------------------===// -#include "ModularizeUtilities.h" -#include "CoverageChecker.h" #include "clang/Basic/SourceManager.h" +#include "clang/Driver/Options.h" #include "clang/Frontend/CompilerInstance.h" #include "clang/Frontend/FrontendActions.h" -#include "clang/Options/Options.h" +#include "CoverageChecker.h" #include "llvm/ADT/SmallString.h" #include "llvm/Support/FileUtilities.h" #include "llvm/Support/MemoryBuffer.h" #include "llvm/Support/Path.h" #include "llvm/Support/raw_ostream.h" +#include "ModularizeUtilities.h" using namespace clang; using namespace llvm; diff --git a/clang-tools-extra/pp-trace/CMakeLists.txt b/clang-tools-extra/pp-trace/CMakeLists.txt index da36582ee0234..1323adbc35269 100644 --- a/clang-tools-extra/pp-trace/CMakeLists.txt +++ b/clang-tools-extra/pp-trace/CMakeLists.txt @@ -14,7 +14,6 @@ clang_target_link_libraries(pp-trace PRIVATE clangAST clangBasic - clangOptions clangFrontend clangLex clangSerialization diff --git a/clang-tools-extra/pp-trace/PPTrace.cpp b/clang-tools-extra/pp-trace/PPTrace.cpp index ba5a06a26830d..0b078c49a55b7 100644 --- a/clang-tools-extra/pp-trace/PPTrace.cpp +++ b/clang-tools-extra/pp-trace/PPTrace.cpp @@ -28,11 +28,11 @@ #include "clang/AST/ASTConsumer.h" #include "clang/AST/ASTContext.h" #include "clang/Basic/SourceManager.h" +#include "clang/Driver/Options.h" #include "clang/Frontend/CompilerInstance.h" #include "clang/Frontend/FrontendAction.h" #include "clang/Frontend/FrontendActions.h" #include "clang/Lex/Preprocessor.h" -#include "clang/Options/Options.h" #include "clang/Tooling/Execution.h" #include "clang/Tooling/Tooling.h" #include "llvm/Option/Arg.h" diff --git a/clang/docs/CMakeLists.txt b/clang/docs/CMakeLists.txt index 9469a832adb62..1f06c040c96cb 100644 --- a/clang/docs/CMakeLists.txt +++ b/clang/docs/CMakeLists.txt @@ -132,7 +132,7 @@ if (LLVM_ENABLE_SPHINX) # Generated files gen_rst_file_from_td(AttributeReference.rst -gen-attr-docs ../include/clang/Basic/Attr.td "${docs_targets}") gen_rst_file_from_td(DiagnosticsReference.rst -gen-diag-docs ../include/clang/Basic/Diagnostic.td "${docs_targets}") - gen_rst_file_from_td(ClangCommandLineReference.rst -gen-opt-docs ../include/clang/Options/ClangOptionDocs.td "${docs_targets}") + gen_rst_file_from_td(ClangCommandLineReference.rst -gen-opt-docs ../include/clang/Driver/ClangOptionDocs.td "${docs_targets}") # Another generated file from a different source set(docs_tools_dir ${CMAKE_CURRENT_SOURCE_DIR}/tools) diff --git a/clang/docs/InternalsManual.rst b/clang/docs/InternalsManual.rst index a849d05eb7ae9..eff46ab46e1ca 100644 --- a/clang/docs/InternalsManual.rst +++ b/clang/docs/InternalsManual.rst @@ -667,7 +667,7 @@ Command Line Interface ---------------------- The command line interface of the Clang ``-cc1`` frontend is defined alongside -the driver options in ``clang/Options/Options.td``. The information making up an +the driver options in ``clang/Driver/Options.td``. The information making up an option definition includes its prefix and name (for example ``-std=``), form and position of the option value, help text, aliases and more. Each option may belong to a certain group and can be marked with zero or more flags. Options @@ -712,7 +712,7 @@ variable for the option value: } Next, declare the command line interface of the option in the tablegen file -``clang/include/clang/Options/Options.td``. This is done by instantiating the +``clang/include/clang/Driver/Options.td``. This is done by instantiating the ``Option`` class (defined in ``llvm/include/llvm/Option/OptParser.td``). The instance is typically created through one of the helper classes that encode the acceptable ways to specify the option value on the command line: @@ -906,7 +906,7 @@ command line: SHOULD_PARSE, KEYPATH, DEFAULT_VALUE, \ IMPLIED_CHECK, IMPLIED_VALUE, NORMALIZER, \ MERGER, TABLE_INDEX) - #include "clang/Options/Options.inc" + #include "clang/Driver/Options.inc" #undef LANG_OPTION_WITH_MARSHALLING // ... @@ -925,7 +925,7 @@ command line: GENERATE_OPTION_WITH_MARSHALLING( \ Args, SA, KIND, FLAGS, SPELLING, ALWAYS_EMIT, KEYPATH, DEFAULT_VALUE, \ IMPLIED_CHECK, IMPLIED_VALUE, DENORMALIZER, EXTRACTOR, TABLE_INDEX) - #include "clang/Options/Options.inc" + #include "clang/Driver/Options.inc" #undef LANG_OPTION_WITH_MARSHALLING // ... diff --git a/clang/docs/ReleaseNotes.rst b/clang/docs/ReleaseNotes.rst index fa78e7abd4d67..6b396e7ba63f3 100644 --- a/clang/docs/ReleaseNotes.rst +++ b/clang/docs/ReleaseNotes.rst @@ -79,9 +79,6 @@ Potentially Breaking Changes void foo(void) { return ({ 1;; }); } -- Downstream projects that previously linked only against ``clangDriver`` may - now (also) need to link against the new ``clangOptions`` library, since - options-related code has been moved out of the Driver into a separate library. C/C++ Language Potentially Breaking Changes ------------------------------------------- diff --git a/clang/include/clang/CMakeLists.txt b/clang/include/clang/CMakeLists.txt index 77a44e4c48de5..47ac70cd21690 100644 --- a/clang/include/clang/CMakeLists.txt +++ b/clang/include/clang/CMakeLists.txt @@ -3,7 +3,7 @@ add_subdirectory(Basic) if(CLANG_ENABLE_CIR) add_subdirectory(CIR) endif() -add_subdirectory(Options) +add_subdirectory(Driver) add_subdirectory(Parse) add_subdirectory(Sema) add_subdirectory(Serialization) diff --git a/clang/include/clang/Options/CMakeLists.txt b/clang/include/clang/Driver/CMakeLists.txt similarity index 100% rename from clang/include/clang/Options/CMakeLists.txt rename to clang/include/clang/Driver/CMakeLists.txt diff --git a/clang/include/clang/Options/ClangOptionDocs.td b/clang/include/clang/Driver/ClangOptionDocs.td similarity index 100% rename from clang/include/clang/Options/ClangOptionDocs.td rename to clang/include/clang/Driver/ClangOptionDocs.td diff --git a/clang/include/clang/Driver/Driver.h b/clang/include/clang/Driver/Driver.h index aa86bffb802a4..b9b187ada8add 100644 --- a/clang/include/clang/Driver/Driver.h +++ b/clang/include/clang/Driver/Driver.h @@ -15,11 +15,11 @@ #include "clang/Driver/Action.h" #include "clang/Driver/DriverDiagnostic.h" #include "clang/Driver/InputInfo.h" +#include "clang/Driver/Options.h" #include "clang/Driver/Phases.h" #include "clang/Driver/ToolChain.h" #include "clang/Driver/Types.h" #include "clang/Driver/Util.h" -#include "clang/Options/Options.h" #include "llvm/ADT/ArrayRef.h" #include "llvm/ADT/STLFunctionalExtras.h" #include "llvm/ADT/StringMap.h" diff --git a/clang/include/clang/Options/OptionUtils.h b/clang/include/clang/Driver/OptionUtils.h similarity index 94% rename from clang/include/clang/Options/OptionUtils.h rename to clang/include/clang/Driver/OptionUtils.h index 83c48bd7d6843..922f536bf33ea 100644 --- a/clang/include/clang/Options/OptionUtils.h +++ b/clang/include/clang/Driver/OptionUtils.h @@ -10,8 +10,8 @@ // //===----------------------------------------------------------------------===// -#ifndef LLVM_CLANG_OPTIONS_OPTIONUTILS_H -#define LLVM_CLANG_OPTIONS_OPTIONUTILS_H +#ifndef LLVM_CLANG_DRIVER_OPTIONUTILS_H +#define LLVM_CLANG_DRIVER_OPTIONUTILS_H #include "clang/Basic/Diagnostic.h" #include "clang/Basic/LLVM.h" @@ -55,4 +55,4 @@ inline uint64_t getLastArgUInt64Value(const llvm::opt::ArgList &Args, } // namespace clang -#endif // LLVM_CLANG_OPTIONS_OPTIONUTILS_H +#endif // LLVM_CLANG_DRIVER_OPTIONUTILS_H diff --git a/clang/include/clang/Options/Options.h b/clang/include/clang/Driver/Options.h similarity index 83% rename from clang/include/clang/Options/Options.h rename to clang/include/clang/Driver/Options.h index ac98699001965..0797410e9940e 100644 --- a/clang/include/clang/Options/Options.h +++ b/clang/include/clang/Driver/Options.h @@ -6,13 +6,14 @@ // //===----------------------------------------------------------------------===// -#ifndef LLVM_CLANG_OPTIONS_OPTIONS_H -#define LLVM_CLANG_OPTIONS_OPTIONS_H +#ifndef LLVM_CLANG_DRIVER_OPTIONS_H +#define LLVM_CLANG_DRIVER_OPTIONS_H #include "llvm/Option/OptTable.h" #include "llvm/Option/Option.h" namespace clang { +namespace driver { namespace options { /// Flags specifically for clang options. Must not overlap with @@ -41,15 +42,16 @@ enum ClangVisibility { }; enum ID { - OPT_INVALID = 0, // This is not an option ID. + OPT_INVALID = 0, // This is not an option ID. #define OPTION(...) LLVM_MAKE_OPT_ID(__VA_ARGS__), -#include "clang/Options/Options.inc" - LastOption +#include "clang/Driver/Options.inc" + LastOption #undef OPTION -}; -} // namespace options + }; +} const llvm::opt::OptTable &getDriverOptTable(); -} // namespace clang +} +} -#endif // LLVM_CLANG_OPTIONS_OPTIONS_H +#endif diff --git a/clang/include/clang/Options/Options.td b/clang/include/clang/Driver/Options.td similarity index 100% rename from clang/include/clang/Options/Options.td rename to clang/include/clang/Driver/Options.td diff --git a/clang/include/clang/Frontend/Utils.h b/clang/include/clang/Frontend/Utils.h index ed2703c76f18d..49fd920d1ec43 100644 --- a/clang/include/clang/Frontend/Utils.h +++ b/clang/include/clang/Frontend/Utils.h @@ -15,8 +15,8 @@ #include "clang/Basic/Diagnostic.h" #include "clang/Basic/LLVM.h" +#include "clang/Driver/OptionUtils.h" #include "clang/Frontend/DependencyOutputOptions.h" -#include "clang/Options/OptionUtils.h" #include "llvm/ADT/ArrayRef.h" #include "llvm/ADT/IntrusiveRefCntPtr.h" #include "llvm/ADT/StringMap.h" diff --git a/clang/include/module.modulemap b/clang/include/module.modulemap index a11c8683c601e..c5535262ae38c 100644 --- a/clang/include/module.modulemap +++ b/clang/include/module.modulemap @@ -146,7 +146,6 @@ module Clang_Lex { module * { export * } } -module Clang_Options { requires cplusplus umbrella "clang/Options" module * { export * } } module Clang_Parse { requires cplusplus umbrella "clang/Parse" module * { export * } } module Clang_Rewrite { requires cplusplus umbrella "clang/Rewrite/Core" module * { export * } } module Clang_RewriteFrontend { requires cplusplus umbrella "clang/Rewrite/Frontend" module * { export * } } diff --git a/clang/lib/CMakeLists.txt b/clang/lib/CMakeLists.txt index e90b009da606a..4f2218b583e41 100644 --- a/clang/lib/CMakeLists.txt +++ b/clang/lib/CMakeLists.txt @@ -13,7 +13,6 @@ add_subdirectory(Edit) add_subdirectory(ExtractAPI) add_subdirectory(Rewrite) add_subdirectory(Driver) -add_subdirectory(Options) add_subdirectory(Serialization) add_subdirectory(Frontend) add_subdirectory(FrontendTool) diff --git a/clang/lib/Driver/CMakeLists.txt b/clang/lib/Driver/CMakeLists.txt index 8052659e9836b..7c4f70b966c48 100644 --- a/clang/lib/Driver/CMakeLists.txt +++ b/clang/lib/Driver/CMakeLists.txt @@ -19,10 +19,12 @@ add_clang_library(clangDriver Compilation.cpp Distro.cpp Driver.cpp + DriverOptions.cpp Job.cpp Multilib.cpp MultilibBuilder.cpp OffloadBundler.cpp + OptionUtils.cpp Phases.cpp SanitizerArgs.cpp Tool.cpp @@ -97,6 +99,5 @@ add_clang_library(clangDriver LINK_LIBS clangBasic clangLex - clangOptions ${system_libs} ) diff --git a/clang/lib/Driver/Compilation.cpp b/clang/lib/Driver/Compilation.cpp index f8ca2a3d09407..4e300316ae9ba 100644 --- a/clang/lib/Driver/Compilation.cpp +++ b/clang/lib/Driver/Compilation.cpp @@ -11,9 +11,9 @@ #include "clang/Driver/Action.h" #include "clang/Driver/Driver.h" #include "clang/Driver/Job.h" +#include "clang/Driver/Options.h" #include "clang/Driver/ToolChain.h" #include "clang/Driver/Util.h" -#include "clang/Options/Options.h" #include "llvm/Option/ArgList.h" #include "llvm/Option/OptSpecifier.h" #include "llvm/Option/Option.h" diff --git a/clang/lib/Driver/Driver.cpp b/clang/lib/Driver/Driver.cpp index 9fd64d4aac514..a0b82cec9a372 100644 --- a/clang/lib/Driver/Driver.cpp +++ b/clang/lib/Driver/Driver.cpp @@ -60,13 +60,13 @@ #include "clang/Driver/Compilation.h" #include "clang/Driver/InputInfo.h" #include "clang/Driver/Job.h" +#include "clang/Driver/Options.h" #includ... [truncated] `````````` </details> https://github.com/llvm/llvm-project/pull/167348 _______________________________________________ cfe-commits mailing list [email protected] https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits
