[Lldb-commits] [lldb] r177425 - Update Sketch test case to capture this and use accessors for debugger, target, process and thread.

Greg Clayton gclayton at apple.com
Tue Mar 19 12:30:33 PDT 2013


Author: gclayton
Date: Tue Mar 19 14:30:33 2013
New Revision: 177425

URL: http://llvm.org/viewvc/llvm-project?rev=177425&view=rev
Log:
Update Sketch test case to capture this and use accessors for debugger, target, process and thread.


Modified:
    lldb/trunk/tools/lldb-perf/darwin/sketch/main.cpp
    lldb/trunk/tools/lldb-perf/lib/TestCase.h

Modified: lldb/trunk/tools/lldb-perf/darwin/sketch/main.cpp
URL: http://llvm.org/viewvc/llvm-project/lldb/trunk/tools/lldb-perf/darwin/sketch/main.cpp?rev=177425&r1=177424&r2=177425&view=diff
==============================================================================
--- lldb/trunk/tools/lldb-perf/darwin/sketch/main.cpp (original)
+++ lldb/trunk/tools/lldb-perf/darwin/sketch/main.cpp Tue Mar 19 14:30:33 2013
@@ -24,29 +24,34 @@ class SketchTest : public TestCase
 {
 public:
     SketchTest () :
-    m_fetch_frames_measurement ([this] (SBProcess process) -> void {
-        Xcode::FetchFrames (process,false,false);
-    }, "fetch-frames", "time to dump backtrace for every frame in every thread"),
-    m_file_line_bp_measurement([] (SBTarget target,const char* file, uint32_t line) -> void {
-        Xcode::CreateFileLineBreakpoint(target, file, line);
-    }, "file-line-bkpt", "time to set a breakpoint given a file and line"),
-    m_fetch_modules_measurement ([] (SBTarget target) -> void {
-        Xcode::FetchModules(target);
-    }, "fetch-modules", "time to get info for all modules in the process"),
-    m_fetch_vars_measurement([this] (SBProcess process, int depth) -> void {
-        auto threads_count = process.GetNumThreads();
-        for (size_t thread_num = 0; thread_num < threads_count; thread_num++)
-        {
-            SBThread thread(process.GetThreadAtIndex(thread_num));
-            SBFrame frame(thread.GetFrameAtIndex(0));
-            Xcode::FetchVariables(frame,depth,GetVerbose());
-            
-        }
-    }, "fetch-vars", "time to dump variables for the topmost frame in every thread"),
-    m_run_expr_measurement([this] (SBFrame frame, const char* expr) -> void {
-        SBValue value(frame.EvaluateExpression(expr, lldb::eDynamicCanRunTarget));
-        Xcode::FetchVariable(value,0,GetVerbose());
-    }, "run-expr", "time to evaluate an expression and display the result")
+        m_fetch_frames_measurement ([this] () -> void
+            {
+                Xcode::FetchFrames (GetProcess(),false,false);
+            }, "fetch-frames", "time to dump backtrace for every frame in every thread"),
+        m_file_line_bp_measurement([this] (const char* file, uint32_t line) -> void
+            {
+                Xcode::CreateFileLineBreakpoint(GetTarget(), file, line);
+            }, "file-line-bkpt", "time to set a breakpoint given a file and line"),
+        m_fetch_modules_measurement ([this] () -> void
+            {
+                Xcode::FetchModules(GetTarget());
+            }, "fetch-modules", "time to get info for all modules in the process"),
+        m_fetch_vars_measurement([this] (int depth) -> void
+            {
+                SBProcess process (GetProcess());
+                auto threads_count = process.GetNumThreads();
+                for (size_t thread_num = 0; thread_num < threads_count; thread_num++)
+                {
+                    SBThread thread(process.GetThreadAtIndex(thread_num));
+                    SBFrame frame(thread.GetFrameAtIndex(0));
+                    Xcode::FetchVariables(frame,depth,GetVerbose());
+                }
+            }, "fetch-vars", "time to dump variables for the topmost frame in every thread"),
+        m_run_expr_measurement([this] (SBFrame frame, const char* expr) -> void
+            {
+                SBValue value(frame.EvaluateExpression(expr, lldb::eDynamicCanRunTarget));
+                Xcode::FetchVariable (value, 0, GetVerbose());
+            }, "run-expr", "time to evaluate an expression and display the result")
     {}
     
     virtual
@@ -57,7 +62,7 @@ public:
     virtual bool
 	Setup (int argc, const char** argv)
     {
-        SetVerbose(true);
+        //SetVerbose(true);
         m_app_path.assign(argv[1]);
         m_doc_path.assign(argv[2]);
         m_out_path.assign(argv[3]);
@@ -69,18 +74,18 @@ public:
         const char* empty = nullptr;
         const char* args[] = {file_arg,persist_arg,persist_skip,empty};
         SBLaunchInfo launch_info (args);
-        m_file_line_bp_measurement(m_target, "SKTDocument.m",245);
-        m_file_line_bp_measurement(m_target, "SKTDocument.m",283);
-        m_file_line_bp_measurement(m_target, "SKTText.m",326);
+        m_file_line_bp_measurement("SKTDocument.m",245);
+        m_file_line_bp_measurement("SKTDocument.m",283);
+        m_file_line_bp_measurement("SKTText.m",326);
         return Launch (launch_info);
     }
     
     void
     DoTest ()
     {
-        m_fetch_frames_measurement(m_process);
-        m_fetch_modules_measurement(m_target);
-        m_fetch_vars_measurement(m_process,1);
+        m_fetch_frames_measurement();
+        m_fetch_modules_measurement();
+        m_fetch_vars_measurement(1);
     }
     
 	virtual void
@@ -91,7 +96,7 @@ public:
         case 0:
             {
                 DoTest ();
-                m_file_line_bp_measurement(m_target, "SKTDocument.m",254);
+                m_file_line_bp_measurement("SKTDocument.m",254);
                 next_action.Continue();
             }
             break;
@@ -191,11 +196,11 @@ public:
     }
     
 private:
-    Measurement<lldb_perf::TimeGauge, std::function<void(SBProcess)>> m_fetch_frames_measurement;
-    Measurement<lldb_perf::TimeGauge, std::function<void(SBTarget, const char*, uint32_t)>> m_file_line_bp_measurement;
-    Measurement<lldb_perf::TimeGauge, std::function<void(SBTarget)>> m_fetch_modules_measurement;
-    Measurement<lldb_perf::TimeGauge, std::function<void(SBProcess,int)>> m_fetch_vars_measurement;
-    Measurement<lldb_perf::TimeGauge, std::function<void(SBFrame,const char*)>> m_run_expr_measurement;
+    Measurement<lldb_perf::TimeGauge, std::function<void()>> m_fetch_frames_measurement;
+    Measurement<lldb_perf::TimeGauge, std::function<void(const char*, uint32_t)>> m_file_line_bp_measurement;
+    Measurement<lldb_perf::TimeGauge, std::function<void()>> m_fetch_modules_measurement;
+    Measurement<lldb_perf::TimeGauge, std::function<void(int)>> m_fetch_vars_measurement;
+    Measurement<lldb_perf::TimeGauge, std::function<void(SBFrame, const char*)>> m_run_expr_measurement;
     
     std::string m_app_path;
     std::string m_doc_path;

Modified: lldb/trunk/tools/lldb-perf/lib/TestCase.h
URL: http://llvm.org/viewvc/llvm-project/lldb/trunk/tools/lldb-perf/lib/TestCase.h?rev=177425&r1=177424&r2=177425&view=diff
==============================================================================
--- lldb/trunk/tools/lldb-perf/lib/TestCase.h (original)
+++ lldb/trunk/tools/lldb-perf/lib/TestCase.h Tue Mar 19 14:30:33 2013
@@ -105,6 +105,29 @@ public:
     static void
     Run (TestCase& test, int argc, const char** argv);
     
+    lldb::SBDebugger &
+    GetDebugger()
+    {
+        return m_debugger;
+    }
+
+    lldb::SBTarget &
+    GetTarget()
+    {
+        return m_target;
+    }
+    
+    lldb::SBProcess &
+    GetProcess ()
+    {
+        return m_process;
+    }
+    
+    lldb::SBThread &
+    GetThread ()
+    {
+        return m_thread;
+    }
 protected:
     lldb::SBDebugger m_debugger;
 	lldb::SBTarget m_target;





More information about the lldb-commits mailing list