Author: Nico Weber Date: 2021-11-18T08:31:21-05:00 New Revision: 3950e1be8d6ec602fda525ea20340fd3f8e2e919
URL: https://github.com/llvm/llvm-project/commit/3950e1be8d6ec602fda525ea20340fd3f8e2e919 DIFF: https://github.com/llvm/llvm-project/commit/3950e1be8d6ec602fda525ea20340fd3f8e2e919.diff LOG: [clang] Remove CLANG_ROUND_TRIP_CC1_ARGS and always roundtrip in +assert builds This removes the ability to disable roundtripping in assert builds. (Roundtripping happens by default in assert builds both before and after this patch.) The CLANG_ROUND_TRIP_CC1_ARGS was added as an escape hatch 9 months ago in https://reviews.llvm.org/D97462, with a FIXME to remove it eventually. It's probably time to remove it. Differential Revision: https://reviews.llvm.org/D114120 Added: Modified: clang/CMakeLists.txt clang/lib/Frontend/CompilerInvocation.cpp Removed: ################################################################################ diff --git a/clang/CMakeLists.txt b/clang/CMakeLists.txt index 5a58d7faa9fa3..6f26e94f31602 100644 --- a/clang/CMakeLists.txt +++ b/clang/CMakeLists.txt @@ -462,9 +462,6 @@ option(CLANG_ENABLE_STATIC_ANALYZER option(CLANG_ENABLE_PROTO_FUZZER "Build Clang protobuf fuzzer." OFF) -option(CLANG_ROUND_TRIP_CC1_ARGS - "Round-trip command line arguments in -cc1." ${LLVM_ENABLE_ASSERTIONS}) - if(NOT CLANG_ENABLE_STATIC_ANALYZER AND CLANG_ENABLE_ARCMT) message(FATAL_ERROR "Cannot disable static analyzer while enabling ARCMT or Z3") endif() @@ -473,10 +470,6 @@ if(CLANG_ENABLE_ARCMT) set(CLANG_ENABLE_OBJC_REWRITER ON) endif() -if (CLANG_ROUND_TRIP_CC1_ARGS) - add_definitions(-DCLANG_ROUND_TRIP_CC1_ARGS=ON) -endif() - # Clang version information set(CLANG_EXECUTABLE_VERSION "${CLANG_VERSION_MAJOR}" CACHE STRING diff --git a/clang/lib/Frontend/CompilerInvocation.cpp b/clang/lib/Frontend/CompilerInvocation.cpp index 8d33a59cb9839..c104a6f40e20f 100644 --- a/clang/lib/Frontend/CompilerInvocation.cpp +++ b/clang/lib/Frontend/CompilerInvocation.cpp @@ -612,9 +612,8 @@ using GenerateFn = llvm::function_ref<void( CompilerInvocation::StringAllocator)>; // May perform round-trip of command line arguments. By default, the round-trip -// is enabled if CLANG_ROUND_TRIP_CC1_ARGS was defined during build. This can be -// overwritten at run-time via the "-round-trip-args" and "-no-round-trip-args" -// command line flags. +// is enabled in assert builds. This can be overwritten at run-time via the +// "-round-trip-args" and "-no-round-trip-args" command line flags. // During round-trip, the command line arguments are parsed into a dummy // instance of CompilerInvocation which is used to generate the command line // arguments again. The real CompilerInvocation instance is then created by @@ -624,8 +623,7 @@ static bool RoundTrip(ParseFn Parse, GenerateFn Generate, CompilerInvocation &DummyInvocation, ArrayRef<const char *> CommandLineArgs, DiagnosticsEngine &Diags, const char *Argv0) { - // FIXME: Switch to '#ifndef NDEBUG' when possible. -#ifdef CLANG_ROUND_TRIP_CC1_ARGS +#ifndef NDEBUG bool DoRoundTripDefault = true; #else bool DoRoundTripDefault = false; _______________________________________________ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits