]> granicus.if.org Git - clang/commitdiff
Eliminate CodeGenOptions::TimePasses.
authorDaniel Dunbar <daniel@zuster.org>
Mon, 30 Nov 2009 08:39:52 +0000 (08:39 +0000)
committerDaniel Dunbar <daniel@zuster.org>
Mon, 30 Nov 2009 08:39:52 +0000 (08:39 +0000)
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@90118 91177308-0d34-0410-b5e6-96231b3b80d8

include/clang/Frontend/ASTConsumers.h
lib/Driver/CC1Options.cpp
lib/Frontend/Backend.cpp
lib/Frontend/FrontendActions.cpp
tools/clang-cc/Options.cpp
tools/clang-cc/Options.h
tools/clang-cc/clang-cc.cpp

index 0e7d55e6e45b1d0d32554f1776778f981dd35b54..26efa9745600d6721c5c00f6618c1b296f326256 100644 (file)
@@ -83,6 +83,7 @@ ASTConsumer *CreateBackendConsumer(BackendAction Action,
                                    const LangOptions &Features,
                                    const CodeGenOptions &CodeGenOpts,
                                    const TargetOptions &TargetOpts,
+                                   bool TimePasses,
                                    const std::string &ModuleID,
                                    llvm::raw_ostream *OS,
                                    llvm::LLVMContext& C);
index 103f645103d44b945d44183d593982304f804001..f2a8492f0a8b2584ccc4a85ac2cc95574e9f2c2c 100644 (file)
@@ -194,7 +194,6 @@ static void ParseCodeGenArgs(CodeGenOptions &Opts, ArgList &Args,
   // FIXME: Eliminate this dependency?
 //   if (Lang.CPlusPlus)
 //     Opts.NoCommon = 1;
-//   Opts.TimePasses = TimePasses;
 
   // FIXME: Put elsewhere?
 #ifdef NDEBUG
index e895a666973ffedc2fddc31db9deb6ff6c7e5ebe..31c6c5027be201070d5252a302781873d66d3d5e 100644 (file)
@@ -76,8 +76,9 @@ namespace {
   public:
     BackendConsumer(BackendAction action, Diagnostic &Diags,
                     const LangOptions &langopts, const CodeGenOptions &compopts,
-                    const TargetOptions &targetopts, const std::string &infile,
-                    llvm::raw_ostream* OS, LLVMContext& C) :
+                    const TargetOptions &targetopts, bool TimePasses,
+                    const std::string &infile, llvm::raw_ostream *OS,
+                    LLVMContext& C) :
       Action(action),
       CodeGenOpts(compopts),
       LangOpts(langopts),
@@ -93,8 +94,7 @@ namespace {
         FormattedOutStream.setStream(*AsmOutStream,
                                      formatted_raw_ostream::PRESERVE_STREAM);
 
-      // Enable -time-passes if -ftime-report is enabled.
-      llvm::TimePassesIsEnabled = CodeGenOpts.TimePasses;
+      llvm::TimePassesIsEnabled = TimePasses;
     }
 
     ~BackendConsumer() {
@@ -108,7 +108,7 @@ namespace {
     virtual void Initialize(ASTContext &Ctx) {
       Context = &Ctx;
 
-      if (CodeGenOpts.TimePasses)
+      if (llvm::TimePassesIsEnabled)
         LLVMIRGeneration.startTimer();
 
       Gen->Initialize(Ctx);
@@ -117,7 +117,7 @@ namespace {
       ModuleProvider = new ExistingModuleProvider(TheModule);
       TheTargetData = new llvm::TargetData(Ctx.Target.getTargetDescription());
 
-      if (CodeGenOpts.TimePasses)
+      if (llvm::TimePassesIsEnabled)
         LLVMIRGeneration.stopTimer();
     }
 
@@ -126,24 +126,24 @@ namespace {
                                      Context->getSourceManager(),
                                      "LLVM IR generation of declaration");
 
-      if (CodeGenOpts.TimePasses)
+      if (llvm::TimePassesIsEnabled)
         LLVMIRGeneration.startTimer();
 
       Gen->HandleTopLevelDecl(D);
 
-      if (CodeGenOpts.TimePasses)
+      if (llvm::TimePassesIsEnabled)
         LLVMIRGeneration.stopTimer();
     }
 
     virtual void HandleTranslationUnit(ASTContext &C) {
       {
         PrettyStackTraceString CrashInfo("Per-file LLVM IR generation");
-        if (CodeGenOpts.TimePasses)
+        if (llvm::TimePassesIsEnabled)
           LLVMIRGeneration.startTimer();
 
         Gen->HandleTranslationUnit(C);
 
-        if (CodeGenOpts.TimePasses)
+        if (llvm::TimePassesIsEnabled)
           LLVMIRGeneration.stopTimer();
       }
 
@@ -239,7 +239,7 @@ bool BackendConsumer::AddEmitPasses(std::string &Error) {
       BackendArgs.push_back("-nozero-initialized-in-bss");
     BackendArgs.push_back("-relocation-model");
     BackendArgs.push_back(CodeGenOpts.RelocationModel.c_str());
-    if (CodeGenOpts.TimePasses)
+    if (llvm::TimePassesIsEnabled)
       BackendArgs.push_back("-time-passes");
     if (CodeGenOpts.UnwindTables)
       BackendArgs.push_back("-unwind-tables");
@@ -350,7 +350,7 @@ void BackendConsumer::EmitAssembly() {
   if (!TheModule || !TheTargetData)
     return;
 
-  TimeRegion Region(CodeGenOpts.TimePasses ? &CodeGenerationTime : 0);
+  TimeRegion Region(llvm::TimePassesIsEnabled ? &CodeGenerationTime : 0);
 
   // Make sure IR generation is happy with the module. This is
   // released by the module provider.
@@ -407,9 +407,10 @@ ASTConsumer *clang::CreateBackendConsumer(BackendAction Action,
                                           const LangOptions &LangOpts,
                                           const CodeGenOptions &CodeGenOpts,
                                           const TargetOptions &TargetOpts,
+                                          bool TimePasses,
                                           const std::string& InFile,
                                           llvm::raw_ostream* OS,
                                           LLVMContext& C) {
   return new BackendConsumer(Action, Diags, LangOpts, CodeGenOpts,
-                             TargetOpts, InFile, OS, C);
+                             TargetOpts, TimePasses, InFile, OS, C);
 }
index 8092b715e3625458e7166b1153f0137b96efbf3b..27e194e6f10821a68d2b20f60ddf390bbeb48205 100644 (file)
@@ -170,7 +170,8 @@ ASTConsumer *CodeGenAction::CreateASTConsumer(CompilerInstance &CI,
     OS.reset(CI.createDefaultOutputFile(true, InFile, "bc"));
 
   return CreateBackendConsumer(BA, CI.getDiagnostics(), CI.getLangOpts(),
-                               CI.getCodeGenOpts(), CI.getTargetOpts(), InFile,
+                               CI.getCodeGenOpts(), CI.getTargetOpts(),
+                               CI.getFrontendOpts().ShowTimers, InFile,
                                OS.take(), CI.getLLVMContext());
 }
 
index 710a928da6d75c101b081feef796f8e07c21a763..ed491d8e977c9f427d9543bd0e990e7128ca7bcb 100644 (file)
@@ -795,8 +795,7 @@ void clang::InitializeAnalyzerOptions(AnalyzerOptions &Opts) {
 }
 
 void clang::InitializeCodeGenOptions(CodeGenOptions &Opts,
-                                     const LangOptions &Lang,
-                                     bool TimePasses) {
+                                     const LangOptions &Lang) {
   using namespace codegenoptions;
 
   // -Os implies -O2
@@ -830,7 +829,6 @@ void clang::InitializeCodeGenOptions(CodeGenOptions &Opts,
   // FIXME: Eliminate this dependency?
   if (Lang.CPlusPlus)
     Opts.NoCommon = 1;
-  Opts.TimePasses = TimePasses;
 
 #ifdef NDEBUG
   Opts.VerifyModule = 0;
index 83672231ca1b2afceb718abf2690d663cb2f5794..91e37f261103e9bb45a6f5dcf18fa7a45a332c5e 100644 (file)
@@ -30,8 +30,7 @@ class TargetOptions;
 void InitializeAnalyzerOptions(AnalyzerOptions &Opts);
 
 void InitializeCodeGenOptions(CodeGenOptions &Opts,
-                              const LangOptions &Lang,
-                              bool TimePasses);
+                              const LangOptions &Lang);
 
 void InitializeDependencyOutputOptions(DependencyOutputOptions &Opts);
 
index ab3ede965874211ea8663f7af51a76f64099542f..8eae5a1fac7aa188d830ae39562942c18d6117a8 100644 (file)
@@ -183,8 +183,7 @@ static bool ConstructCompilerInvocation(CompilerInvocation &Opts,
   InitializePreprocessorOutputOptions(Opts.getPreprocessorOutputOpts());
 
   // Initialize backend options.
-  InitializeCodeGenOptions(Opts.getCodeGenOpts(), Opts.getLangOpts(),
-                           Opts.getFrontendOpts().ShowTimers);
+  InitializeCodeGenOptions(Opts.getCodeGenOpts(), Opts.getLangOpts());
 
   return true;
 }