]> granicus.if.org Git - clang/commitdiff
[analyzer] Turn -cfg-add-initializers on by default, and remove the flag.
authorJordan Rose <jordan_rose@apple.com>
Tue, 31 Jul 2012 18:04:59 +0000 (18:04 +0000)
committerJordan Rose <jordan_rose@apple.com>
Tue, 31 Jul 2012 18:04:59 +0000 (18:04 +0000)
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@161060 91177308-0d34-0410-b5e6-96231b3b80d8

12 files changed:
include/clang/Driver/CC1Options.td
include/clang/Frontend/AnalyzerOptions.h
include/clang/StaticAnalyzer/Core/PathSensitive/AnalysisManager.h
lib/Frontend/CompilerInvocation.cpp
lib/StaticAnalyzer/Core/AnalysisManager.cpp
lib/StaticAnalyzer/Frontend/AnalysisConsumer.cpp
test/Analysis/base-init.cpp
test/Analysis/ctor-inlining.mm
test/Analysis/dtor.cpp
test/Analysis/initializer.cpp
test/Analysis/initializers-cfg-output.cpp
test/Analysis/temp-obj-dtors-cfg-output.cpp

index 1b5afbb4d7008d766662ea095051b6e9379193a9..6e4d7f2d31d56db13f2b01e3a52c5afca75cb187 100644 (file)
@@ -39,8 +39,6 @@ def analysis_UnoptimizedCFG : Flag<"-unoptimized-cfg">,
   HelpText<"Generate unoptimized CFGs for all analyses">;
 def analysis_CFGAddImplicitDtors : Flag<"-cfg-add-implicit-dtors">,
   HelpText<"Add C++ implicit destructors to CFGs for all analyses">;
-def analysis_CFGAddInitializers : Flag<"-cfg-add-initializers">,
-  HelpText<"Add C++ initializers to CFGs for all analyses">;
 
 def analyzer_store : Separate<"-analyzer-store">,
   HelpText<"Source Code Analysis - Abstract Memory Store Models">;
index 847bfbd64b164673d07e588b3d31d3741c14028e..4e489fea742320a3e41f9b7835c71fd2df33daea 100644 (file)
@@ -96,7 +96,6 @@ public:
   unsigned VisualizeEGUbi : 1;
   unsigned UnoptimizedCFG : 1;
   unsigned CFGAddImplicitDtors : 1;
-  unsigned CFGAddInitializers : 1;
   unsigned EagerlyTrimEGraph : 1;
   unsigned PrintStats : 1;
   unsigned NoRetryExhausted : 1;
@@ -121,7 +120,6 @@ public:
     VisualizeEGUbi = 0;
     UnoptimizedCFG = 0;
     CFGAddImplicitDtors = 0;
-    CFGAddInitializers = 0;
     EagerlyTrimEGraph = 0;
     PrintStats = 0;
     NoRetryExhausted = 0;
index 26e1cdbdc8281015053ace8f67f7b743574ed368..1cc53d4423dac614c34d740700db3755a5b88521 100644 (file)
@@ -91,7 +91,7 @@ public:
                   bool vizdot, bool vizubi, AnalysisPurgeMode purge,
                   bool eager, bool trim,
                   bool useUnoptimizedCFG,
-                  bool addImplicitDtors, bool addInitializers,
+                  bool addImplicitDtors,
                   bool eagerlyTrimEGraph,
                   AnalysisIPAMode ipa,
                   unsigned inlineMaxStack,
index 94a89f47f751af53efebbe418b469f60e80679e9..98dc247d6993af6d7ba7ce6e72d6fd08bff5d50b 100644 (file)
@@ -1127,7 +1127,6 @@ static bool ParseAnalyzerArgs(AnalyzerOptions &Opts, ArgList &Args,
   Opts.AnalyzeSpecificFunction = Args.getLastArgValue(OPT_analyze_function);
   Opts.UnoptimizedCFG = Args.hasArg(OPT_analysis_UnoptimizedCFG);
   Opts.CFGAddImplicitDtors = Args.hasArg(OPT_analysis_CFGAddImplicitDtors);
-  Opts.CFGAddInitializers = Args.hasArg(OPT_analysis_CFGAddInitializers);
   Opts.TrimGraph = Args.hasArg(OPT_trim_egraph);
   Opts.MaxNodes = Args.getLastArgIntValue(OPT_analyzer_max_nodes, 150000,Diags);
   Opts.MaxLoop = Args.getLastArgIntValue(OPT_analyzer_max_loop, 4, Diags);
index 178df024aa3cacd01e26453989b9518fa237eb4a..5aac6406f69f3cd67fe8055cf40a431664653719 100644 (file)
@@ -25,14 +25,14 @@ AnalysisManager::AnalysisManager(ASTContext &ctx, DiagnosticsEngine &diags,
                                  AnalysisPurgeMode purge,
                                  bool eager, bool trim,
                                  bool useUnoptimizedCFG,
-                                 bool addImplicitDtors, bool addInitializers,
+                                 bool addImplicitDtors,
                                  bool eagerlyTrimEGraph,
                                  AnalysisIPAMode ipa,
                                  unsigned inlineMaxStack,
                                  unsigned inlineMaxFunctionSize,
                                  AnalysisInliningMode IMode,
                                  bool NoRetry)
-  : AnaCtxMgr(useUnoptimizedCFG, addImplicitDtors, addInitializers),
+  : AnaCtxMgr(useUnoptimizedCFG, addImplicitDtors, /*addInitializers=*/true),
     Ctx(ctx), Diags(diags), LangOpts(lang), PD(pd),
     CreateStoreMgr(storemgr), CreateConstraintMgr(constraintmgr),
     CheckerMgr(checkerMgr), 
index 72e563941cc862fbe0eea5f1435a1697b88d101e..fcdaaeaedf9ee90f249aea7e99a406abbcd99b99 100644 (file)
@@ -214,7 +214,6 @@ public:
                                   Opts.AnalysisPurgeOpt, Opts.EagerlyAssume,
                                   Opts.TrimGraph,
                                   Opts.UnoptimizedCFG, Opts.CFGAddImplicitDtors,
-                                  Opts.CFGAddInitializers,
                                   Opts.EagerlyTrimEGraph,
                                   Opts.IPAMode,
                                   Opts.InlineMaxStackDepth,
index ae99d53e201c5002350de3eac4437d9a64cd957d..e63d50855e103d2a6acc3ebdc67c4df2f5c0bf54 100644 (file)
@@ -1,4 +1,4 @@
-// RUN: %clang_cc1 -analyze -analyzer-checker=core,debug.ExprInspection -analyzer-store region -analyzer-ipa=inlining -cfg-add-initializers -verify %s
+// RUN: %clang_cc1 -analyze -analyzer-checker=core,debug.ExprInspection -analyzer-store region -analyzer-ipa=inlining -verify %s
 // XFAIL: *
 
 void clang_analyzer_eval(bool);
index 000e865751657975e29bab25fffe31492c8705d7..586c09d3048772cc13dd63401f0686b7a17fd38c 100644 (file)
@@ -1,4 +1,4 @@
-// RUN: %clang_cc1 -analyze -analyzer-checker=core -fobjc-arc -cfg-add-initializers -cfg-add-implicit-dtors -Wno-null-dereference -verify %s
+// RUN: %clang_cc1 -analyze -analyzer-checker=core -fobjc-arc -cfg-add-implicit-dtors -Wno-null-dereference -verify %s
 
 struct Wrapper {
   __strong id obj;
index 18884c5f9105733ead2db5a6284a332154421fcb..620994858c7c97681d5c1a78c1e4c183b5ae94a5 100644 (file)
@@ -1,4 +1,4 @@
-// RUN: %clang_cc1 -analyze -analyzer-checker=core,unix.Malloc,debug.ExprInspection -analyzer-store region -analyzer-ipa=inlining -cfg-add-implicit-dtors -cfg-add-initializers -Wno-null-dereference -verify %s
+// RUN: %clang_cc1 -analyze -analyzer-checker=core,unix.Malloc,debug.ExprInspection -analyzer-store region -analyzer-ipa=inlining -cfg-add-implicit-dtors -Wno-null-dereference -verify %s
 
 void clang_analyzer_eval(bool);
 
index 0580503a44bf54202e62463c4e05c91356175e14..3f008ffbbf35092940a183e907f93928e9e906f3 100644 (file)
@@ -1,7 +1,6 @@
-// RUN: %clang_cc1 -analyze -analyzer-checker=core,debug.ExprInspection -analyzer-store region -cfg-add-initializers -cfg-add-implicit-dtors -verify %s
+// RUN: %clang_cc1 -analyze -analyzer-checker=core,debug.ExprInspection -analyzer-store region -cfg-add-implicit-dtors -verify %s
 
-// We don't inline constructors unless we have both initializers and
-// implicit destructors turned on.
+// We don't inline constructors unless we have destructors turned on.
 
 void clang_analyzer_eval(bool);
 
index 8a7a3f5d013d7b65c8f88f4a953d7a9d02061389..8aaa94cd84c7a4f87038c2b0d44378320640e735 100644 (file)
@@ -1,4 +1,4 @@
-// RUN: %clang_cc1 -analyze -analyzer-checker=debug.DumpCFG -cfg-add-initializers %s 2>&1 | FileCheck %s
+// RUN: %clang_cc1 -analyze -analyzer-checker=debug.DumpCFG %s 2>&1 | FileCheck %s
 // XPASS: *
 
 class A {
index 1a1b1328622c9c00de023631adbe4ceb3b0ceaad..6dbbc821bbbb2ed3714d5806b42b7144c26c9a2b 100644 (file)
@@ -1,5 +1,5 @@
 // RUN: rm -f %t
-// RUN: %clang_cc1 -analyze -analyzer-checker=debug.DumpCFG -cfg-add-implicit-dtors -cfg-add-initializers %s > %t 2>&1
+// RUN: %clang_cc1 -analyze -analyzer-checker=debug.DumpCFG -cfg-add-implicit-dtors %s > %t 2>&1
 // RUN: FileCheck --input-file=%t %s
 // XPASS: *