- Aug 29, 2012
-
-
rdar://problem/11757916Greg Clayton authored
Make breakpoint setting by file and line much more efficient by only looking for inlined breakpoint locations if we are setting a breakpoint in anything but a source implementation file. Implementing this complex for a many reasons. Turns out that parsing compile units lazily had some issues with respect to how we need to do things with DWARF in .o files. So the fixes in the checkin for this makes these changes: - Add a new setting called "target.inline-breakpoint-strategy" which can be set to "never", "always", or "headers". "never" will never try and set any inlined breakpoints (fastest). "always" always looks for inlined breakpoint locations (slowest, but most accurate). "headers", which is the default setting, will only look for inlined breakpoint locations if the breakpoint is set in what are consudered to be header files, which is realy defined as "not in an implementation source file". - modify the breakpoint setting by file and line to check the current "target.inline-breakpoint-strategy" setting and act accordingly - Modify compile units to be able to get their language and other info lazily. This allows us to create compile units from the debug map and not have to fill all of the details in, and then lazily discover this information as we go on debuggging. This is needed to avoid parsing all .o files when setting breakpoints in implementation only files (no inlines). Otherwise we would need to parse the .o file, the object file (mach-o in our case) and the symbol file (DWARF in the object file) just to see what the compile unit was. - modify the "SymbolFileDWARFDebugMap" to subclass lldb_private::Module so that the virtual "GetObjectFile()" and "GetSymbolVendor()" functions can be intercepted when the .o file contenst are later lazilly needed. Prior to this fix, when we first instantiated the "SymbolFileDWARFDebugMap" class, we would also make modules, object files and symbol files for every .o file in the debug map because we needed to fix up the sections in the .o files with information that is in the executable debug map. Now we lazily do this in the DebugMapModule::GetObjectFile() Cleaned up header includes a bit as well. llvm-svn: 162860
-
- Aug 25, 2012
-
-
Filipe Cabecinhas authored
- Tweaked a parameter name in SBDebugger.h so my typemap will catch it; - Added a SBDebugger.Create(bool, callback, baton) to the swig interface; - Added SBDebugger.SetLoggingCallback to the swig interface; - Added a callback utility function for log callbacks; - Guard against Py_None on both callback utility functions; - Added a FIXME to the SBDebugger API test; - Added a __del__() stub for SBDebugger. We need to be able to get both the log callback and baton from an SBDebugger if we want to protect against memory leaks (or make the user responsible for holding another reference to the callback). Additionally, it's impossible to revert from a callback-backed log mechanism to a file-backed log mechanism. llvm-svn: 162633
-
- Aug 24, 2012
-
-
Johnny Chen authored
Add 'attach <pid>|<process-name>' command to lldb, as well as 'detach' which is an alias of 'process detach'. Add two completion test cases for "attach" and "detach". llvm-svn: 162573
-
Johnny Chen authored
llvm-svn: 162502
-
Johnny Chen authored
Previously we put a WatchpointSentry object within StopInfo.cpp to disable-and-then-enable the watchpoint itself while we are performing the actions associated with the triggered watchpoint, which can cause the user-initiated watchpoint disabling action to be negated. Add a test case to verify that a watchpoint can be disabled during the callbacks. llvm-svn: 162483
-
- Aug 23, 2012
-
-
Johnny Chen authored
llvm-svn: 162467
-
Johnny Chen authored
Make a test scenario stronger, since, by default, the setting interpreter.expand-regex-aliases is false. llvm-svn: 162465
-
Johnny Chen authored
llvm-svn: 162462
-
Johnny Chen authored
Make it so that "b 245" should set a breakpoint at line 245 of the current file. Also add a simple test file. llvm-svn: 162419
-
- Aug 22, 2012
-
-
Johnny Chen authored
llvm-svn: 162372
-
Greg Clayton authored
Reimplemented the code that backed the "settings" in lldb. There were many issues with the previous implementation: - no setting auto completion - very manual and error prone way of getting/setting variables - tons of code duplication - useless instance names for processes, threads Now settings can easily be defined like option values. The new settings makes use of the "OptionValue" classes so we can re-use the option value code that we use to set settings in command options. No more instances, just "does the right thing". llvm-svn: 162366
-
Filipe Cabecinhas authored
llvm-svn: 162357
-
Filipe Cabecinhas authored
Now it's possible to use SBInputReader callbacks in Python. We leak the callback object, unfortunately. A __del__ method can be added to SBInputReader, but we have no way to check the callback function that is on the reader. So we can't call Py_DECREF on it when we have our PythonCallback function. One way to do it is to assume that reified SBInputReaders always have a Python callback (and always call Py_DECREF). Another one is to add methods or properties to SBInputReader (or make the m_callback_function property public). llvm-svn: 162356
-
Johnny Chen authored
'add-dsym' (aka 'target symbols add') should display error messages when dsym file is not found or the dsym uuid does not match any existing modules. Add TestAddDsymCommand.py test file. llvm-svn: 162332
-
- Aug 21, 2012
-
-
Johnny Chen authored
llvm-svn: 162308
-
Johnny Chen authored
llvm-svn: 162239
-
- Aug 20, 2012
-
-
Johnny Chen authored
Also modify the boundary condition test case SBDebugger.DispatchInput(None) to be wrapped inside a try-except clause for now. llvm-svn: 162228
-
Filipe Cabecinhas authored
I also added a typemap to make DispatchInput usable in Python. llvm-svn: 162204
-
- Aug 16, 2012
-
-
Johnny Chen authored
llvm-svn: 162040
-
Johnny Chen authored
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
-
- Aug 14, 2012
-
-
Johnny Chen authored
When trying to take snapshots of a watched variable, if the frame is unable to evaluate the variable expression, do not take the sanpshot and forget about the stop info. It is possible that the variable expression has gone out of scope, we'll revise the hit count due to the false alarms. llvm-svn: 161892
-
rdar://problem/11589605Enrico Granata authored
'type category enable *' command to match 'type category disable *' llvm-svn: 161882
-
Johnny Chen authored
Change the test case, too. llvm-svn: 161806
-
- Aug 13, 2012
-
-
Johnny Chen authored
Record the snapshot of our watched value when the watchpoint is set or hit. And report the old/new values when watchpoint is triggered. Add some test scenarios. llvm-svn: 161785
-
- Aug 11, 2012
-
-
Jim Ingham authored
the currently selected thread. <rdar://problem/10458225> llvm-svn: 161723
-
- Aug 10, 2012
-
-
Johnny Chen authored
llvm-svn: 161684
-
rdar://problem/11457143Johnny Chen authored
Add 'watchpoint command add/delete/list' to lldb, plus two .py test files. llvm-svn: 161638
-
rdar://problem/11578397Enrico Granata authored
<rdar://problem/11578397> Adding a new --summary-string option for the frame variable command which allows the user to provide a summary string with which he wants to display the variables without having to make a named summary first llvm-svn: 161623
-
- Aug 09, 2012
-
-
Jim Ingham authored
<rdar://problem/11703715> llvm-svn: 161611
-
rdar://problem/10449092Enrico Granata authored
<rdar://problem/10449092> Adding a new uppercase hex format specifier. This commit also changes the short names for formats so that uppercase hex can be 'X', which was previously assigned to hex float. hex float now has no short name. llvm-svn: 161606
-
-
Sean Callanan authored
an expected failure. llvm-svn: 161556
-
rdar://problem/12061386Enrico Granata authored
<rdar://problem/12061386> Fixing data-formatter-cpp test case - previous version had an unfortunate dependency on the value of uninitialized memory llvm-svn: 161555
-
Sean Callanan authored
them as expected failures until they are fixed. llvm-svn: 161547
-
- Aug 08, 2012
-
-
Filipe Cabecinhas authored
llvm-svn: 161493
-
Filipe Cabecinhas authored
llvm-svn: 161492
-
rdar://problem/11975483Enrico Granata authored
<rdar://problem/11975483> Removing user-visible references to 'dict' as a parameter name for Python summary-generating functions since it is a Python keyword. llvm-svn: 161467
-
- Aug 07, 2012
-
-
Filipe Cabecinhas authored
llvm-svn: 161419
-
- Aug 01, 2012
-
-
Johnny Chen authored
You run with trace mode by passing '-t' to the test driver. llvm-svn: 161130
-
- Jul 25, 2012
-
-
Filipe Cabecinhas authored
Make git not delete some empty dirs. Otherwise a git checkout would be different from an svn checkout. llvm-svn: 160717
-