summaryrefslogtreecommitdiffstats
path: root/lldb/tools/driver
Commit message (Collapse)AuthorAgeFilesLines
...
* Added an SBAPI to get the PythonPath (if the Host knows how to do that). ↵Jim Ingham2012-12-212-0/+27
| | | | | | | | | 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
* Adding eStopReasonThreadExiting and fixing the handling of this state on Linux.Andrew Kaylor2012-12-201-0/+1
| | | | llvm-svn: 170800
* Initialize m_done to false in Driver constructor to avoid premature exit bug ↵Daniel Malea2012-12-171-1/+2
| | | | | | | | (spotted on Linux) Patch by Chia-Hung Duan! llvm-svn: 170348
* Trigger the display of error and output in sourced commands from the result ↵Enrico Granata2012-12-141-3/+4
| | | | | | | | | object's status instead of the presence of text in the error stream This should be more consistent with the notion of command success/failure and avoids spewing warnings that the user might not care about There will need to be an option to specify the level of verbosity desired (never show anything, only show failures, errors and warning, everything) llvm-svn: 170167
* <rdar://problem/12700464>Enrico Granata2012-12-131-0/+13
| | | | | | Fixing an issue where errors in command files sourced as arguments to command-line lldb (e.g. ./lldb -s foo.cmd) would not be shown to the user llvm-svn: 170146
* Broadcast an event when the selected thread is changed.Jim Ingham2012-12-111-2/+4
| | | | | | <rdar://problem/10976636> llvm-svn: 169810
* Fix a few more clang (3.2) warnings on Linux:Daniel Malea2012-12-072-1/+3
| | | | | | | | | | | | | | | | | - remove unused members - add NO_PEDANTIC to selected Makefiles - fix return values (removed NULL as needed) - disable warning about four-char-constants - remove unneeded const from operator*() declaration - add missing lambda function return types - fix printf() with no format string - change sizeof to use a type name instead of variable name - fix Linux ProcessMonitor.cpp to be 32/64 bit friendly - disable warnings emitted by swig-generated C++ code Patch by Matt Kopec! llvm-svn: 169645
* More Linux warnings fixes (remove default labels as needed):Daniel Malea2012-12-071-1/+0
| | | | | | | | - as per http://llvm.org/docs/CodingStandards.html#don-t-use-default-labels-in-fully-covered-switches-over-enumerations Patch by Matt Kopec! llvm-svn: 169633
* <rdar://problem/12649160>Greg Clayton2012-12-051-0/+1
| | | | | | Added the ability to debug through your process exec'ing itself to the same architecture. llvm-svn: 169340
* <rdar://problem/12798131> Greg Clayton2012-12-041-2/+2
| | | | | | | | | | | | Cleaned up the option parsing code to always pass around the short options as integers. Previously we cast this down to "char" and lost some information. I recently added an assert that would detect duplicate short character options which was firing during the test suite. This fix does the following: - make sure all short options are treated as "int" - make sure that short options can be non-printable values when a short option is not required or when an option group is mixed into many commands and a short option is not desired - fix the help printing to "do the right thing" in all cases. Previously if there were duplicate short character options, it would just not emit help for the duplicates - fix option parsing when there are duplicates to parse options correctly. Previously the option parsing, when done for an OptionGroup, would just start parsing options incorrectly by omitting table entries and it would end up setting the wrong option value llvm-svn: 169189
* Save and restore terminal state when lldb is suspended with SIGTSTP and ↵Jim Ingham2012-11-301-0/+20
| | | | | | | | | resumed with SIGCONT. Readline & gdb have a bunch of code to handle older UNIX'es with other job control mechanisms. I didn't try to replicate that. llvm-svn: 169032
* Resolve printf formatting warnings on Linux:Daniel Malea2012-11-291-3/+4
| | | | | | | | - use macros from inttypes.h for format strings instead of OS-specific types Patch from Matt Kopec! llvm-svn: 168945
* eArgTypePath was removed in r166533; change -c toJason Molenda2012-10-241-1/+1
| | | | | | expect eArgTypeFilename. llvm-svn: 166542
* Removing the two extra GetXSize(bool) calls since we do not desire to ↵Enrico Granata2012-10-161-2/+2
| | | | | | support them long-term llvm-svn: 166060
* <rdar://problem/12446320> Fixing an issue with our Driver where setting an ↵Enrico Granata2012-10-162-7/+13
| | | | | | immediate output would not cause suppression of the final printout. This allows effective output redirection for Python commands llvm-svn: 166058
* Change the Thread constructor over to take a Process& rather than a ↵Jim Ingham2012-10-102-3/+32
| | | | | | | | | | | | | ProcessSP. We can't create Threads with a NULL ProcessSP, so it makes no sense to use the SP. Then make the Thread a Broadcaster, and get it to broadcast when the selected frame is changed (but only from the Command Line) and when Thread::ReturnFromFrame changes the stack. Made the Driver use this notification to print the new thread status rather than doing it in the command. Fixed a few places where people were setting their broadcaster class by hand rather than using the static broadcaster class call. <rdar://problem/12383087> llvm-svn: 165640
* Fix the extra space char being emitted in this message when breakpoints ↵Jason Molenda2012-09-281-1/+1
| | | | | | | | resolve - 1 location added to breakpoint 2 llvm-svn: 164810
* Some more typing-related fixes.Filipe Cabecinhas2012-09-111-14/+14
| | | | llvm-svn: 163641
* rdar://problem/12096295Johnny Chen2012-08-152-8/+31
| | | | | | | Add an lldb command line option to specify a core file: --core/-c. For consistency, change the "target create" command to also use --core. llvm-svn: 161993
* Added an lldb_private & equivalent SB API to send an AsyncInterrupt to the ↵Jim Ingham2012-07-272-4/+13
| | | | | | | | | | | | | | event loop. Convert from calling Halt in the lldb Driver.cpp's input reader's sigint handler to sending this AsyncInterrupt so it can be handled in the event loop. If you are attaching and get an async interrupt, abort the attach attempt. Also remember to destroy the process if get interrupted while attaching. Getting this to work also required handing the eBroadcastBitInterrupt in a few more places in Process WaitForEvent & friends. <rdar://problem/10792425> llvm-svn: 160903
* Ran the static analyzer on the codebase and found a few things.Greg Clayton2012-07-171-1/+1
| | | | llvm-svn: 160338
* Added an editline fix to make the delete key actSean Callanan2012-07-111-0/+1
| | | | | | | | as expected on Mac OS X. <rdar://problem/11813365> llvm-svn: 160091
* rdar://problem/11649610Johnny Chen2012-06-191-2/+2
| | | | | | | | lldb confused by single quote in executable path Also add a test case. llvm-svn: 158693
* If the Driver's input reader gets an Interrupt and the current command line ↵Jim Ingham2012-06-011-4/+13
| | | | | | is empty, then treat that interrupt as an instruction to Stop the process of the currently selected target. llvm-svn: 157790
* Add an API to determine whether there are any characters on the current ↵Jim Ingham2012-06-012-0/+14
| | | | | | input line. llvm-svn: 157789
* Substitute LLVMLibsOptions for LD.Flags so we can find the mentioned libsFilipe Cabecinhas2012-05-291-5/+5
| | | | llvm-svn: 157616
* Fix a typo.Johnny Chen2012-05-161-1/+1
| | | | llvm-svn: 156952
* Don't intercept the quit command and override what is was doing. This was ↵Greg Clayton2012-05-111-12/+0
| | | | | | causing the "lldb" command line to deadlock when the quit command was executed sometimes. llvm-svn: 156595
* Make ctrl-c terminate the current input line and start an empty line, ↵Johnny Chen2012-05-093-0/+12
| | | | | | | | instead of the previous content. rdar://problem/11412821 llvm-svn: 156510
* Print out a notification when the process of a target other than the ↵Jim Ingham2012-05-081-5/+20
| | | | | | currently selected target stops. llvm-svn: 156433
* Move the el_source() call after the section of code which sets up the ↵Johnny Chen2012-05-071-3/+3
| | | | | | | | default "ctrl-r" and "ctrl-w" bindings so that user-provided .editrc has a chance to override the lldb's default key bindings. llvm-svn: 156314
* Jason Molenda convinced me that we should make ctrl-w on the command line ↵Johnny Chen2012-05-051-0/+1
| | | | | | | | bind to ed-delete-prev-word. If you have ctrl-w key binding specified with your .editrc file, it will be overridden with ed-delete-prev-word. :-) llvm-svn: 156230
* Don't call SBDebugger::SetInternalVariable in the sigwinch_handler, since ↵Jim Ingham2012-04-261-4/+2
| | | | | | | | | | | that takes locks and potentially does allocations. Just call SBDebugger::SetTerminalWidth on the driver's SBDebugger, which does the same job, but no locks. Also add the value checking to SetTerminalWidth you get with SetInternalVariable(..., "term-width", ...). rdar://problem/11310563 llvm-svn: 155665
* Add a command and an SB API to create exception breakpoints. Make the break ↵Jim Ingham2012-03-061-1/+2
| | | | | | output prettier for Exception breakpoints. llvm-svn: 152081
* <rdar://problem/10605072>Greg Clayton2012-02-292-5/+35
| | | | | | | | | | | | | Added the ability to override command line commands. In some cases GUI interfaces might want to intercept commands like "quit" or "process launch" (which might cause the process to re-run). They can now do so by overriding/intercepting commands by using functions added to SBCommandInterpreter using a callback function. If the callback function returns true, the command is assumed to be handled. If false is returned the command should be evaluated normally. Adopted this up in the Driver.cpp for intercepting the "quit" command. llvm-svn: 151708
* Add a general mechanism to wait on the debugger for Broadcasters of a given ↵Jim Ingham2012-02-161-0/+3
| | | | | | | | | class/event bit set. Use this to allow the lldb Driver to emit notifications for breakpoint modifications. <rdar://problem/10619974> llvm-svn: 150665
* Send Breakpoint Changed events for all the relevant changes to breakpoints.Jim Ingham2012-02-082-1/+49
| | | | | | | Also, provide and use accessors for the thread options on breakpoints so we can control sending the appropriate events. llvm-svn: 150057
* Fixed terminal settings not being properly restored when "quit" was run. Greg Clayton2012-02-021-6/+14
| | | | | | This affected bash users. llvm-svn: 149623
* Cleaned up the Communication class when it tears down ConnectionFileDescriptorGreg Clayton2012-01-311-0/+6
| | | | | | | | | instances to not pthread_cancel the read threads and wreak havoc on the mutex in our ConnectionFileDescriptor class. Also cleaned up some shutdown delays. llvm-svn: 149355
* This patch combines common code from Linux and FreeBSD intoJohnny Chen2012-01-051-1/+0
| | | | | | | | | | a new POSIX platform. It also contains fixes for 64bit FreeBSD. The patch is based on changes by Mark Peek <mp@FreeBSD.org> and "K. Macy" <kmacy@freebsd.org> in their github repo located at https://github.com/fbsd/lldb. llvm-svn: 147609
* Process IDs (lldb::pid_t) and thread IDs (lldb::tid_t) are now 64 bit. This Greg Clayton2011-12-011-3/+3
| | | | | | | | will allow us to represent a process/thread ID using a pointer for the OS plug-ins where they might want to represent the process or thread ID using the address of the process or thread structure. llvm-svn: 145644
* Moved many of the "settings" that used to be in "target.process.*" to justGreg Clayton2011-11-081-2/+2
| | | | | | | | be in the target. All of the environment, args, stdin/out/err files, etc have all been moved. Also re-enabled the ability to launch a process in a separate terminal on MacOSX. llvm-svn: 144061
* warnings: Fix a bunch of -Wreorder problems.Daniel Dunbar2011-10-311-1/+1
| | | | llvm-svn: 143381
* Track whether a process was Launched or Attached to. If Attached, the ↵Jim Ingham2011-09-151-15/+28
| | | | | | detach when the debugger is destroyed, rather than killing the process. Also added a Debugger::Clear, which gets called in Debugger::Destroy to deal with all the targets in the Debugger. Also made the Driver's main loop call Destroy on the debugger, rather than just Destroying the currently selected Target's process. llvm-svn: 139852
* Adding "-n", "-p" and "-w" flags to the lldb command-line tool toJim Ingham2011-09-132-16/+95
| | | | | | allow attaching from the command line. llvm-svn: 139665
* SBSourceManager now gets the real source manager either from the Debugger or ↵Jim Ingham2011-09-131-1/+0
| | | | | | | | Target. Also, move the SourceManager file cache into the debugger so it can be shared amongst the targets. llvm-svn: 139564
* Better help string for "lldb -- file arg1 arg2..."Jim Ingham2011-08-161-2/+7
| | | | llvm-svn: 137789
* Document how to pass program args to lldb command-line.Jim Ingham2011-08-161-3/+11
| | | | llvm-svn: 137784
* Add a version of SBDebugger::Create which allows us to specify whether to sourceJim Ingham2011-08-131-1/+11
| | | | | | in the init files or not. llvm-svn: 137541
* Fixes the occasional crash on exit when quitting lldb with control-D.Jason Molenda2011-08-121-0/+9
| | | | | | | | | If the IOChannel has already freed out its m_driver member, and there's still a character to be read/written (that is, the ^D character), just skip that char instead of trying to write through a null object pointer. llvm-svn: 137421
OpenPOWER on IntegriCloud