summaryrefslogtreecommitdiffstats
path: root/lldb/packages/Python/lldbsuite/test/benchmarks/disassembly/TestDoAttachThenDisassembly.py
diff options
context:
space:
mode:
Diffstat (limited to 'lldb/packages/Python/lldbsuite/test/benchmarks/disassembly/TestDoAttachThenDisassembly.py')
-rw-r--r--lldb/packages/Python/lldbsuite/test/benchmarks/disassembly/TestDoAttachThenDisassembly.py70
1 files changed, 0 insertions, 70 deletions
diff --git a/lldb/packages/Python/lldbsuite/test/benchmarks/disassembly/TestDoAttachThenDisassembly.py b/lldb/packages/Python/lldbsuite/test/benchmarks/disassembly/TestDoAttachThenDisassembly.py
deleted file mode 100644
index 36f23572648..00000000000
--- a/lldb/packages/Python/lldbsuite/test/benchmarks/disassembly/TestDoAttachThenDisassembly.py
+++ /dev/null
@@ -1,70 +0,0 @@
-"""Test lldb's disassemblt speed. This bench deliberately attaches to an lldb
-inferior and traverses the stack for thread0 to arrive at frame with function
-'MainLoop'. It is important to specify an lldb executable as the inferior."""
-
-from __future__ import print_function
-
-
-import os
-import sys
-import lldb
-from lldbsuite.test.decorators import *
-from lldbsuite.test.lldbbench import *
-from lldbsuite.test.lldbtest import *
-
-
-class AttachThenDisassemblyBench(BenchBase):
-
- mydir = TestBase.compute_mydir(__file__)
-
- def setUp(self):
- BenchBase.setUp(self)
- self.exe = lldbtest_config.lldbExec
- self.count = 10
-
- @benchmarks_test
- @no_debug_info_test
- def test_attach_then_disassembly(self):
- """Attach to a spawned lldb process then run disassembly benchmarks."""
- print()
- self.run_lldb_attach_then_disassembly(self.exe, self.count)
- print("lldb disassembly benchmark:", self.stopwatch)
-
- def run_lldb_attach_then_disassembly(self, exe, count):
- target = self.dbg.CreateTarget(exe)
-
- # Spawn a new process and don't display the stdout if not in TraceOn()
- # mode.
- import subprocess
- popen = subprocess.Popen([exe, self.lldbOption], stdout=open(
- os.devnull, 'w') if not self.TraceOn() else None)
- if self.TraceOn():
- print("pid of spawned process: %d" % popen.pid)
-
- # Attach to the launched lldb process.
- listener = lldb.SBListener("my.attach.listener")
- error = lldb.SBError()
- process = target.AttachToProcessWithID(listener, popen.pid, error)
-
- # Set thread0 as the selected thread, followed by the 'MainLoop' frame
- # as the selected frame. Then do disassembly on the function.
- thread0 = process.GetThreadAtIndex(0)
- process.SetSelectedThread(thread0)
- i = 0
- found = False
- for f in thread0:
- # print("frame#%d %s" % (i, f.GetFunctionName()))
- if "MainLoop" in f.GetFunctionName():
- found = True
- thread0.SetSelectedFrame(i)
- if self.TraceOn():
- print("Found frame#%d for function 'MainLoop'" % i)
- break
- i += 1
-
- # Reset the stopwatch now.
- self.stopwatch.reset()
- for i in range(count):
- with self.stopwatch:
- # Disassemble the function.
- self.runCmd("disassemble -f")
OpenPOWER on IntegriCloud