- Jan 09, 2013
-
-
rdar://problem/12975489Han Ming Ong authored
1. Using mach port number, just like when inferior is paused. 2. Use key:value pair of thread used time instead of comma separated notation. llvm-svn: 172012
-
rdar://problem/12028723Enrico Granata authored
Adding useful formatting options to the expression (expr) command. As a side effect of this change, the -d option now supports the same three-values enumeration that frame variables uses (run, don't run, none) instead of a boolean like it did previously These options do not apply to print, p or po because these are aliased to not take any options. In order to use them, use expression or expr. llvm-svn: 171993
-
Greg Clayton authored
Expanded the flags that can be set for a command object in lldb_private::CommandObject. This list of available flags are: enum { //---------------------------------------------------------------------- // eFlagRequiresTarget // // Ensures a valid target is contained in m_exe_ctx prior to executing // the command. If a target doesn't exist or is invalid, the command // will fail and CommandObject::GetInvalidTargetDescription() will be // returned as the error. CommandObject subclasses can override the // virtual function for GetInvalidTargetDescription() to provide custom // strings when needed. //---------------------------------------------------------------------- eFlagRequiresTarget = (1u << 0), //---------------------------------------------------------------------- // eFlagRequiresProcess // // Ensures a valid process is contained in m_exe_ctx prior to executing // the command. If a process doesn't exist or is invalid, the command // will fail and CommandObject::GetInvalidProcessDescription() will be // returned as the error. CommandObject subclasses can override the // virtual function for GetInvalidProcessDescription() to provide custom // strings when needed. //---------------------------------------------------------------------- eFlagRequiresProcess = (1u << 1), //---------------------------------------------------------------------- // eFlagRequiresThread // // Ensures a valid thread is contained in m_exe_ctx prior to executing // the command. If a thread doesn't exist or is invalid, the command // will fail and CommandObject::GetInvalidThreadDescription() will be // returned as the error. CommandObject subclasses can override the // virtual function for GetInvalidThreadDescription() to provide custom // strings when needed. //---------------------------------------------------------------------- eFlagRequiresThread = (1u << 2), //---------------------------------------------------------------------- // eFlagRequiresFrame // // Ensures a valid frame is contained in m_exe_ctx prior to executing // the command. If a frame doesn't exist or is invalid, the command // will fail and CommandObject::GetInvalidFrameDescription() will be // returned as the error. CommandObject subclasses can override the // virtual function for GetInvalidFrameDescription() to provide custom // strings when needed. //---------------------------------------------------------------------- eFlagRequiresFrame = (1u << 3), //---------------------------------------------------------------------- // eFlagRequiresRegContext // // Ensures a valid register context (from the selected frame if there // is a frame in m_exe_ctx, or from the selected thread from m_exe_ctx) // is availble from m_exe_ctx prior to executing the command. If a // target doesn't exist or is invalid, the command will fail and // CommandObject::GetInvalidRegContextDescription() will be returned as // the error. CommandObject subclasses can override the virtual function // for GetInvalidRegContextDescription() to provide custom strings when // needed. //---------------------------------------------------------------------- eFlagRequiresRegContext = (1u << 4), //---------------------------------------------------------------------- // eFlagTryTargetAPILock // // Attempts to acquire the target lock if a target is selected in the // command interpreter. If the command object fails to acquire the API // lock, the command will fail with an appropriate error message. //---------------------------------------------------------------------- eFlagTryTargetAPILock = (1u << 5), //---------------------------------------------------------------------- // eFlagProcessMustBeLaunched // // Verifies that there is a launched process in m_exe_ctx, if there // isn't, the command will fail with an appropriate error message. //---------------------------------------------------------------------- eFlagProcessMustBeLaunched = (1u << 6), //---------------------------------------------------------------------- // eFlagProcessMustBePaused // // Verifies that there is a paused process in m_exe_ctx, if there // isn't, the command will fail with an appropriate error message. //---------------------------------------------------------------------- eFlagProcessMustBePaused = (1u << 7) }; Now each command object contains a "ExecutionContext m_exe_ctx;" member variable that gets initialized prior to running the command. The validity of the target objects in m_exe_ctx are checked to ensure that any target/process/thread/frame/reg context that are required are valid prior to executing the command. Each command object also contains a Mutex::Locker m_api_locker which gets used if eFlagTryTargetAPILock is set. This centralizes a lot of checking code that was previously and inconsistently implemented across many commands. llvm-svn: 171990
-
Jim Ingham authored
Add a "--reverse" or "-r" option to the "list" with no options command. This will list backwards from the last source point listed. Also fix the setting of the default file & line to the file containing main, when you do a plain "list". <rdar://problem/12685226> llvm-svn: 171945
-
Greg Clayton authored
Updated documentation on the "register_data_addr" key that can be supplied in the "thread" dictionary return value for the python OS plug-ins. llvm-svn: 171934
-
Jim Ingham authored
Add an SBProcess API to get the current StopID, either considering or ignoring stops caused by expression evaluation. <rdar://problem/12968562> llvm-svn: 171914
-
- Jan 08, 2013
-
-
rdar://problem/12976225Han Ming Ong authored
Checking in the support for doing index ids reservation when given a thread id. llvm-svn: 171904
-
rdar://problem/12586010Greg Clayton authored
Python OS plug-ins now fetch thread registers lazily. Also changed SBCommandInterpreter::HandleCommand() to not take the API lock. The logic here is that from the command line you can execute a command that might result in another thread (like the private process thread) to execute python or run any code that can re-enter the public API. When this happens, a deadlock immediately occurs for things like "process launch" and "process attach". llvm-svn: 171901
-
Greg Clayton authored
llvm-svn: 171900
-
Matt Kopec authored
llvm-svn: 171869
-
Matt Kopec authored
llvm-svn: 171864
-
Daniel Malea authored
- Fixes test case TestConnectRemote llvm-svn: 171855
-
Daniel Malea authored
Implement -w flag to process launch (allow launching inferior process in different working directory) on Linux/FreeBSD - fixes test case TestProcessLaunch llvm-svn: 171854
-
rdar://problem/12968925Enrico Granata authored
Ensuring that the Module's FileSpec is not NULL before attempting to deref it for loading the python scripting resource llvm-svn: 171838
-
Matt Kopec authored
Fix TestSendSignals.py on Linux. The wrong stop reason was being set when stopping for a received signal. llvm-svn: 171819
-
rdar://problem/12953853Greg Clayton authored
Setting breakpoints using "breakpoint set --selector <SEL>" previously didn't when there was no dSYM file. Also fixed issues in the test suite that arose after fixing the bug. Also fixed the log channels to properly ref count the log streams using weak pointers to the streams. This fixes a test suite problem that would happen when you specified a full path to the compiler with the "--compiler" option. llvm-svn: 171816
-
Enrico Granata authored
llvm-svn: 171810
-
- Jan 07, 2013
-
-
Daniel Malea authored
- bug fixed in r170241, thanks Andy! - closing related PR 14423 llvm-svn: 171794
-
- Jan 05, 2013
-
-
rdar://problem/12602653Jason Molenda authored
Add unconditional logging messages to every place in debugserver where we send a SIGKILL signal or do a ptrace PT_KILL call to terminate the inferior process. When the debuggee is silently killed off, the console logging from debugserver can disambiguate whether debugserver killed off the process because it failed to completely set it up, becuase it was told to (via the "k" packet), or if some external daemon killed it. llvm-svn: 171606
-
Daniel Malea authored
- due to bugzilla 14806 (platform status command prints more information on Mac OS X than on Linux) llvm-svn: 171569
-
Daniel Malea authored
- setting PYTHONPATH is no longer needed to run the lldb CLI on Linux. - added instructions for setting PYTHONPATH correctly for running scripts in the native interpreter llvm-svn: 171566
-
rdar://problem/12389806Jason Molenda authored
Have the disassembler's Instruction::Dump always insert at least one space character between an opcode and its arguments, don't let a long opcode name abut the arguments. llvm-svn: 171561
-
Daniel Malea authored
- now prints the correct PYTHONPATH - update dotest.py to use lldb -P result correctly - resolves TestPublicAPIHeaders test failure (on Linux) llvm-svn: 171558
-
Andrew Kaylor authored
llvm-svn: 171554
-
Sean Callanan authored
instead of failing to read. <rdar://problem/12958589> llvm-svn: 171552
-
- Jan 04, 2013
-
-
Andrew Kaylor authored
llvm-svn: 171548
-
Daniel Malea authored
- requires memory allocation during expression evaluation - opened related bugzilla 14805 llvm-svn: 171547
-
Jason Molenda authored
llvm-svn: 171542
-
Greg Clayton authored
llvm-svn: 171500
-
Greg Clayton authored
Added a page that describes how to to manual symbolication with LLDB from the command line, from python, and also how to use the build in modules to do symbolication. llvm-svn: 171477
-
rdar://problem/12928282Greg Clayton authored
Added SBTarget::EvaluateExpression() so expressions can be evaluated without needing a process. Also fixed many functions that deal with clang AST types to be able to properly handle the clang::Type::Elaborated types ("struct foo", "class bar"). llvm-svn: 171476
-
- Jan 03, 2013
-
-
Sean Callanan authored
for id types with protocols on them. We detect this and report "id" instead. Also added a testcase. <rdar://problem/12595644> llvm-svn: 171431
-
- Jan 02, 2013
-
-
Chandler Carruth authored
llvm-svn: 171381
-
Chandler Carruth authored
migration in r171366. I don't know anything about lldb, but a force run of the build bot indicated it would need this patch. I'll try to watch the build bot to get it green. llvm-svn: 171374
-
- Dec 22, 2012
-
-
Jim Ingham authored
llvm-svn: 170975
-
- Dec 21, 2012
-
-
Sean Callanan authored
the IR interpreter. <rdar://problem/12921700> llvm-svn: 170934
-
Jim Ingham authored
Added an SBAPI to get the PythonPath (if the Host knows how to do that). And a -P option to the Driver to print it out. Changed dotest.py to use that to find the PythonPath it should use given the lldb binary it was told to run. llvm-svn: 170932
-
Sean Callanan authored
The results from Clang name lookups changed to be ArrayRefs, so I had to change the way we check for the presence of a result and the way we iterate across results. llvm-svn: 170927
-
Sean Callanan authored
slice of a fat dSYM in certain cases. <rdar://problem/12921206> llvm-svn: 170926
-
Andrew Kaylor authored
Not all of the expected instructions were being generated for the function being disassembled on x86-64-based Linux. It had no push, pop or leave. llvm-svn: 170818
-