- Jul 02, 2010
-
-
Sean Callanan authored
llvm-svn: 107460
-
Greg Clayton authored
- fixed 3 posix spawn attributes leaks - fixed us always leaking CXXBaseSpecifier objects when we create class base classes. Clang apparently copies the base classes we pass in. Fixed some code formatting in ClangASTContext.cpp. llvm-svn: 107459
-
Jim Ingham authored
Add user name completion to the file completer. llvm-svn: 107455
-
Greg Clayton authored
removing it didn't cause any performance loss, and leaks were showing up when run under instruments when we tried to re-use the buffer. We are now leak free and still just as performant. llvm-svn: 107453
-
- Jul 01, 2010
-
-
Sean Callanan authored
an expression, adding code to put the value of the last expression (if there is one) into a variable and write the address of that variable to a global pointer. llvm-svn: 107419
-
Greg Clayton authored
Did a bit of code formatting and cleanup. llvm-svn: 107403
-
Jim Ingham authored
Changed the file completion to deal with this, and FileSpec::Resolve now resolves all user names (not just ~/). llvm-svn: 107370
-
Greg Clayton authored
that are in the disassembly comments since most of them are in the same module (shared library). Fixed a crasher that could happen when disassembling special section data. Added an address dump style that shows the symbol context without the module (used in the disassembly code). llvm-svn: 107366
-
Greg Clayton authored
llvm-svn: 107352
-
Greg Clayton authored
Added the ability to read memory from the target's object files when we aren't running, so disassembling works before you run! Cleaned up the API to lldb_private::Target::ReadMemory(). Cleaned up the API to the Disassembler to use actual "lldb_private::Address" objects instead of just an "addr_t". This is nice because the Address objects when resolved carry along their section and module which can get us the object file. This allows Target::ReadMemory to be used when we are not running. Added a new lldb_private::Address dump style: DumpStyleDetailedSymbolContext This will show a full breakdown of what an address points to. To see some sample output, execute a "image lookup --address <addr>". Fixed SymbolContext::DumpStopContext(...) to not require a live process in order to be able to print function and symbol offsets. llvm-svn: 107350
-
- Jun 30, 2010
-
-
Caroline Tice authored
Add functions to look up debugger by id Add global variable to lldb python module, to hold debugger id Modify embedded Python interpreter to update the global variable with the id of its current debugger. Modify the char ** typemap definition in lldb.swig to accept 'None' (for NULL) as a valid value. The point of all this is so that, when you drop into the embedded interpreter from the command interpreter (or when doing Python-based breakpoint commands), there is a way for the Python side to find/get the correct debugger instance ( by checking debugger_unique_id, then calling SBDebugger::FindDebuggerWithID on it). llvm-svn: 107287
-
Benjamin Kramer authored
llvm-svn: 107281
-
Jim Ingham authored
Add a way for the completers to say whether the completed argument should have a space inserted after is or not. Added the file name completer to the "file" command. llvm-svn: 107247
-
- Jun 29, 2010
-
-
Greg Clayton authored
the private object back to another internal function. llvm-svn: 107118
-
Greg Clayton authored
Added the ability to dump any file in the global module cache using any of the "image dump" commands. This allows us to dump the .o files that are used with DWARF + .o since they don't belong the the target list for the current target. llvm-svn: 107100
-
- Jun 28, 2010
-
-
Greg Clayton authored
intelligently. The four name types we currently have are: eFunctionNameTypeFull = (1 << 1), // The function name. // For C this is the same as just the name of the function // For C++ this is the demangled version of the mangled name. // For ObjC this is the full function signature with the + or // - and the square brackets and the class and selector eFunctionNameTypeBase = (1 << 2), // The function name only, no namespaces or arguments and no class // methods or selectors will be searched. eFunctionNameTypeMethod = (1 << 3), // Find function by method name (C++) with no namespace or arguments eFunctionNameTypeSelector = (1 << 4) // Find function by selector name (ObjC) names this allows much more flexibility when setting breakoints: (lldb) breakpoint set --name main --basename (lldb) breakpoint set --name main --fullname (lldb) breakpoint set --name main --method (lldb) breakpoint set --name main --selector The default: (lldb) breakpoint set --name main will inspect the name "main" and look for any parens, or if the name starts with "-[" or "+[" and if any are found then a full name search will happen. Else a basename search will be the default. Fixed some command option structures so not all options are required when they shouldn't be. Cleaned up the breakpoint output summary. Made the "image lookup --address <addr>" output much more verbose so it shows all the important symbol context results. Added a GetDescription method to many of the SymbolContext objects for the more verbose output. llvm-svn: 107075
-
- Jun 24, 2010
-
-
Jim Ingham authored
llvm-svn: 106784
-
Jim Ingham authored
Convert direct access to the required & optional option sets to an accessor so we can lazily run BuildValidOptionSet, but make sure it is done before access. llvm-svn: 106783
-
Jim Ingham authored
Fix a bug in handling command resolution for non-exact matches. Now we will correctly give help options when there are both aliases & real commands matching the current input string. llvm-svn: 106782
-
Sean Callanan authored
complete instructions rather than simply their opcodes. llvm-svn: 106708
-
Sean Callanan authored
- Rationalized EvaluateExpression to remove a lot of nesting; also added comments to make it easy to find what's happening where - Made ExecuteRawCommandString subcontract out to EvaluateExpression - Minor logging improvements llvm-svn: 106703
-
Sean Callanan authored
switches the expression parsing over to use the LLVM IR as opposed to Clang ASTs. Right now, that functionality only logs. llvm-svn: 106695
-
- Jun 23, 2010
-
-
Sean Callanan authored
standard output, resolving a crasher. llvm-svn: 106682
-
Sean Callanan authored
errors pointed out by John McCall. llvm-svn: 106665
-
Greg Clayton authored
to the debugger from GUI windows. Previously there was one global debugger instance that could be accessed that had its own command interpreter and current state (current target/process/thread/frame). When a GUI debugger was attached, if it opened more than one window that each had a console window, there were issues where the last one to setup the global debugger object won and got control of the debugger. To avoid this we now create instances of the lldb_private::Debugger that each has its own state: - target list for targets the debugger instance owns - current process/thread/frame - its own command interpreter - its own input, output and error file handles to avoid conflicts - its own input reader stack So now clients should call: SBDebugger::Initialize(); // (static function) SBDebugger debugger (SBDebugger::Create()); // Use which ever file handles you wish debugger.SetErrorFileHandle (stderr, false); debugger.SetOutputFileHandle (stdout, false); debugger.SetInputFileHandle (stdin, true); // main loop SBDebugger::Terminate(); // (static function) SBDebugger::Initialize() and SBDebugger::Terminate() are ref counted to ensure nothing gets destroyed too early when multiple clients might be attached. Cleaned up the command interpreter and the CommandObject and all subclasses to take more appropriate arguments. llvm-svn: 106615
-
Sean Callanan authored
looking for external variables. Also cleaned up the log messages coming from the DWARF interpreter. llvm-svn: 106613
-
Sean Callanan authored
externally-defined functions. llvm-svn: 106606
-
- Jun 22, 2010
-
-
Benjamin Kramer authored
llvm-svn: 106580
-
Benjamin Kramer authored
the demangled name. Fall back to strlen. llvm-svn: 106579
-
Jim Ingham authored
Make an explicit GetThreadSpecNoCreate accessor so you don't have to get the const-ness right to ensure you are not making a copy of the owning breakpoint's ThreadSpec in a breakpoint location. Also change the name from NoCopy to NoCreate since that's clearer. llvm-svn: 106578
-
Benjamin Kramer authored
This also moves strlen out of the mutex scope. llvm-svn: 106545
-
Benjamin Kramer authored
I'm not sure when multiple threads enter this method but a race-condition causing a crash in malloc can be reproduced with this little script: echo file $(which lldb) > cmd echo "run\nbreak set -n main\nrun\nexit" >> cmd lldb -s cmd It may need a few runs before it crashes though. llvm-svn: 106544
-
Benjamin Kramer authored
llvm-svn: 106535
-
- Jun 21, 2010
-
-
Benjamin Kramer authored
instructions so it's really profitable to inline them. llvm-svn: 106450
-
Benjamin Kramer authored
an unitialized variable. valgrind_errors -= 1; llvm-svn: 106418
-
Benjamin Kramer authored
dependent on the last byte of the buffer, which could be unitialized. llvm-svn: 106417
-
Benjamin Kramer authored
This also fixes a bug where we were trying to copy m_string into itself via a format string. The pointer was invalidated by m_string.resize and lldb (sometimes) crashed inside vsnprintf. llvm-svn: 106416
-
- Jun 19, 2010
-
-
Jim Ingham authored
Two changes in this checkin. Added a ThreadPlanKind so that I can do some reasoning based on the kind of thread plan without having to use RTTI. Removed the ThreadPlanContinue and replaced with a ShouldAutoContinue query that serves the same purpose. Having to push another plan to assert that if there's no other indication the target should continue when this plan is popped was flakey and error prone. This method is more stable, and fixed problems we were having with thread specific breakpoints. llvm-svn: 106378
-
Jim Ingham authored
Remember whether a queue or thread name were passed into "breakpoint modify" so we can recognize an empty argument as unsetting the option. llvm-svn: 106377
-
- Jun 18, 2010
-
-
Jim Ingham authored
llvm-svn: 106297
-