Skip to content
  1. Aug 29, 2012
    • Greg Clayton's avatar
      <rdar://problem/11757916> · 1f746071
      Greg 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
      1f746071
  2. Aug 25, 2012
    • Filipe Cabecinhas's avatar
      Added SBDebugger's log callbacks to Python-land · c5041918
      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
      c5041918
  3. Aug 24, 2012
  4. Aug 23, 2012
  5. Aug 22, 2012
    • Johnny Chen's avatar
      Fix wrong directory pathname. · e3fe26c5
      Johnny Chen authored
      llvm-svn: 162372
      e3fe26c5
    • Greg Clayton's avatar
      Reimplemented the code that backed the "settings" in lldb. There were many... · 67cc0636
      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
      67cc0636
    • Filipe Cabecinhas's avatar
      Added a test for the Python part of SBInputReader callbacks. · 9e10605d
      Filipe Cabecinhas authored
      llvm-svn: 162357
      9e10605d
    • Filipe Cabecinhas's avatar
      Added a typemap and wrappers for SBInputReader callbacks · 6eb31e73
      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
      6eb31e73
    • Johnny Chen's avatar
      rdar://problem/11324515 · 82e5a262
      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
      82e5a262
  6. Aug 21, 2012
  7. Aug 20, 2012
  8. Aug 16, 2012
  9. Aug 14, 2012
  10. Aug 13, 2012
    • Johnny Chen's avatar
      rdar://problem/12007576 · 209bd65e
      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
      209bd65e
  11. Aug 11, 2012
  12. Aug 10, 2012
  13. Aug 09, 2012
  14. Aug 08, 2012
  15. Aug 07, 2012
  16. Aug 01, 2012
  17. Jul 25, 2012
Loading