-
Notifications
You must be signed in to change notification settings - Fork 15.2k
Revert "[clang][flang] Support -time in both clang and flang" #115955
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Conversation
This reverts commit f539674.
|
@llvm/pr-subscribers-flang-driver @llvm/pr-subscribers-clang-driver Author: Tarun Prabhu (tarunprabhu) ChangesReverts llvm/llvm-project#109165 This created a buildbot failure on Fuchsia. Full diff: https://github.com/llvm/llvm-project/pull/115955.diff 5 Files Affected:
diff --git a/clang/include/clang/Driver/Options.td b/clang/include/clang/Driver/Options.td
index 0bbab21120f2b6..9fb7f8bb6489b0 100644
--- a/clang/include/clang/Driver/Options.td
+++ b/clang/include/clang/Driver/Options.td
@@ -5896,7 +5896,6 @@ def print_enabled_extensions : Flag<["-", "--"], "print-enabled-extensions">,
def : Flag<["-"], "mcpu=help">, Alias<print_supported_cpus>;
def : Flag<["-"], "mtune=help">, Alias<print_supported_cpus>;
def time : Flag<["-"], "time">,
- Visibility<[ClangOption, CLOption, DXCOption, FlangOption]>,
HelpText<"Time individual commands">;
def traditional_cpp : Flag<["-", "--"], "traditional-cpp">,
Visibility<[ClangOption, CC1Option]>,
diff --git a/clang/lib/Driver/Compilation.cpp b/clang/lib/Driver/Compilation.cpp
index 6965e59367c95d..ad077d5bbfa69a 100644
--- a/clang/lib/Driver/Compilation.cpp
+++ b/clang/lib/Driver/Compilation.cpp
@@ -21,9 +21,6 @@
#include "llvm/Option/OptSpecifier.h"
#include "llvm/Option/Option.h"
#include "llvm/Support/FileSystem.h"
-#include "llvm/Support/Format.h"
-#include "llvm/Support/Path.h"
-#include "llvm/Support/Timer.h"
#include "llvm/Support/raw_ostream.h"
#include "llvm/TargetParser/Triple.h"
#include <cassert>
@@ -197,28 +194,11 @@ int Compilation::ExecuteCommand(const Command &C,
if (LogOnly)
return 0;
- // We don't use any timers or llvm::TimeGroup's because those are tied into
- // the global static timer list which, in principle, could be cleared without
- // us knowing about it.
- llvm::TimeRecord StartTime;
- if (getArgs().hasArg(options::OPT_time))
- StartTime = llvm::TimeRecord::getCurrentTime(/*Start=*/true);
-
std::string Error;
bool ExecutionFailed;
int Res = C.Execute(Redirects, &Error, &ExecutionFailed);
if (PostCallback)
PostCallback(C, Res);
-
- if (getArgs().hasArg(options::OPT_time)) {
- llvm::TimeRecord Time = llvm::TimeRecord::getCurrentTime(/*Start=*/false);
- Time -= StartTime;
- llvm::StringRef Name = llvm::sys::path::filename(C.getExecutable());
- llvm::errs() << "# " << Name << " "
- << llvm::format("%0.2f", Time.getUserTime()) << " "
- << llvm::format("%0.2f", Time.getSystemTime()) << "\n";
- }
-
if (!Error.empty()) {
assert(Res && "Error string set with 0 result code!");
getDriver().Diag(diag::err_drv_command_failure) << Error;
diff --git a/clang/lib/Driver/Driver.cpp b/clang/lib/Driver/Driver.cpp
index a0fd459967a6b2..93e85f7dffe35a 100644
--- a/clang/lib/Driver/Driver.cpp
+++ b/clang/lib/Driver/Driver.cpp
@@ -1315,9 +1315,6 @@ Compilation *Driver::BuildCompilation(ArrayRef<const char *> ArgList) {
// Ignore -pipe.
Args.ClaimAllArgs(options::OPT_pipe);
- // Ignore -time.
- Args.ClaimAllArgs(options::OPT_time);
-
// Extract -ccc args.
//
// FIXME: We need to figure out where this behavior should live. Most of it
diff --git a/clang/test/Driver/time.c b/clang/test/Driver/time.c
deleted file mode 100644
index a9a95b073afb73..00000000000000
--- a/clang/test/Driver/time.c
+++ /dev/null
@@ -1,33 +0,0 @@
-// The -time option prints timing information for the various subcommands in a
-// format similar to that used by gcc. When compiling and linking, this will
-// include the time to call clang-${LLVM_VERSION_MAJOR} and the linker. Since
-// the name of the linker could vary across platforms, and name of the compiler
-// could be something different, just check that whatever is printed to stderr
-// looks like timing information.
-
-// Ideally, this should be tested on various platforms, but that requires the
-// the full toolchain, including a linker to be present. The initial author of
-// the test only had access to Linux on x86 which is why this is only enabled
-// there. More platforms ought to be added if possible.
-
-// REQUIRES: x86-registered-target
-// REQUIRES: x86_64-linux
-
-// RUN: %clang --target=x86_64-pc-linux -time -c -o /dev/null %s 2>&1 \
-// RUN: | FileCheck %s --check-prefix=COMPILE-ONLY
-// RUN: %clang --target=x86_64-pc-linux -time -S -emit-llvm -o /dev/null %s 2>&1 \
-// RUN: | FileCheck %s --check-prefix=COMPILE-ONLY
-// RUN: %clang --target=x86_64-pc-linux -time -S -o /dev/null %s 2>&1 \
-// RUN: | FileCheck %s --check-prefix=COMPILE-ONLY
-// RUN: %clang --target=x86_64-pc-linux -time -o /dev/null %s 2>&1 \
-// RUN: | FileCheck %s --check-prefix=COMPILE-AND-LINK
-
-// COMPILE-ONLY: # {{.+}} {{[0-9]+(.[0-9]+)?}} {{[0-9]+(.[0-9]+)?}}
-// COMPILE-ONLY-NOT: {{.}}
-
-// COMPILE-AND-LINK: # {{.+}} {{[0-9]+(.[0-9]+)?}} {{[0-9]+(.[0-9]+)?}}
-// COMPILE-AND-LINK: # {{.+}} {{[0-9]+(.[0-9]+)?}} {{[0-9]+(.[0-9]+)?}}
-
-int main() {
- return 0;
-}
diff --git a/flang/test/Driver/time.f90 b/flang/test/Driver/time.f90
deleted file mode 100644
index 98d4fac4e805e9..00000000000000
--- a/flang/test/Driver/time.f90
+++ /dev/null
@@ -1,36 +0,0 @@
-! TODO: For some reason, on Windows, nothing is printed to stderr which causes
-! the checks to fail. It is not clear why this is, so disable this on Windows
-! until the root cause can be determined.
-!
-! UNSUPPORTED: system-windows
-
-! The -time option prints timing information for the various subcommands in a
-! format similar to that used by gfortran. When compiling and linking, this will
-! include the time to call flang-${LLVM_VERSION_MAJOR} and the linker. Since the
-! name of the linker could vary across platforms, and the flang name could also
-! potentially be something different, just check that whatever is printed to
-! stderr looks like timing information.
-
-! Ideally, this should be tested on various platforms, but that requires the
-! the full toolchain, including a linker to be present. The initial author of
-! the test only had access to Linux on x86 which is why this is only enabled
-! there. More platforms ought to be added if possible.
-
-! REQUIRES: x86_64-linux
-
-! RUN: %flang --target=x86_64-linux -time -c -o /dev/null %s 2>&1 \
-! RUN: | FileCheck %s --check-prefix=COMPILE-ONLY
-! RUN: %flang --target=x86_64-linux -time -S -emit-llvm -O3 -o /dev/null %s 2>&1 \
-! RUN: | FileCheck %s --check-prefix=COMPILE-ONLY
-! RUN: %flang --target=x86_64-linux -time -S -o /dev/null %s 2>&1 \
-! RUN: | FileCheck %s --check-prefix=COMPILE-ONLY
-! RUN: %flang --target=x86_64-linux -time -o /dev/null %s 2>&1 \
-! RUN: | FileCheck %s --check-prefix=COMPILE-AND-LINK
-
-! COMPILE-ONLY: # {{.+}} {{[0-9]+(.[0-9]+)?}} {{[0-9]+(.[0-9]+)?}}
-! COMPILE-ONLY-NOT: {{.}}
-
-! COMPILE-AND-LINK: # {{.+}} {{[0-9]+(.[0-9]+)?}} {{[0-9]+(.[0-9]+)?}}
-! COMPILE-AND-LINK: # {{.+}} {{[0-9]+(.[0-9]+)?}} {{[0-9]+(.[0-9]+)?}}
-
-end program
|
Caslyn
left a comment
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Thanks for the revert @tarunprabhu - here is a link to the builder view of the failure in case it is helpful:
Reverts #109165
This created a buildbot failure on Fuchsia.