Skip to content
  1. Oct 30, 2012
  2. Oct 26, 2012
  3. Oct 23, 2012
    • Enrico Granata's avatar
      <rdar://problem/12523238> Commit 1 of 3 · adaf282c
      Enrico Granata authored
      This commit enables the new HasChildren() feature for synthetic children providers
      Namely, it hooks up the required bits and pieces so that individual synthetic children providers can implement a new (optional) has_children call
      Default implementations have been provided where necessary so that any existing providers continue to work and behave correctly
      
      Next steps are:
      2) writing smart implementations of has_children for our providers whenever possible
      3) make a test case
      
      llvm-svn: 166495
      adaf282c
    • Greg Clayton's avatar
      <rdar://problem/12493007> · 4a792072
      Greg Clayton authored
      Added a new API call to help efficiently determine if a SBValue could have children:
      
           bool
           SBValue::MightHaveChildren ();
           
      This is inteneded to be used bui GUI programs that need to show if a SBValue needs a disclosure triangle when displaying a hierarchical type in a tree view without having to complete the type (by calling SBValue::GetNumChildren()) as completing the type is expensive.
      
      llvm-svn: 166460
      4a792072
  4. Oct 22, 2012
    • Enrico Granata's avatar
      <rdar://problem/12437442> · e3e91517
      Enrico Granata authored
      Given our implementation of ValueObjects we could have a scenario where a ValueObject has a dynamic type of Foo* at one point, and then its dynamic type changes to Bar*
      If Bar* has synthetic children enabled, by the time we figure that out, our public API is already vending SBValues wrapping a DynamicVO, instead of a SyntheticVO and there was
      no trivial way for us to change the SP inside an SBValue on the fly
      This checkin reimplements SBValue in terms of a wrapper, ValueImpl, that allows this substitutions on-the-fly by overriding GetSP() to do The Right Thing (TM)
      As an additional bonus, GetNonSyntheticValue() now works, and we can get rid of the ForceDisableSyntheticChildren idiom in ScriptInterpreterPython
      Lastly, this checkin makes sure the synthetic VOs get the correct m_value and m_data from their parents (prevented summaries from working in some cases)
      
      llvm-svn: 166426
      e3e91517
  5. Oct 17, 2012
  6. Oct 16, 2012
  7. Oct 13, 2012
    • Greg Clayton's avatar
      <rdar://problem/12490588> · eaafa732
      Greg Clayton authored
      From SBType, we can now get a lldb::BasicType enumeration out of an existing type.
      
      llvm-svn: 165857
      eaafa732
    • Greg Clayton's avatar
      <rdar://problem/12490558> · ea561dcf
      Greg Clayton authored
      SBProcess::SetSelectedThreadByID() had a "uint32_t tid" parameter which would truncate 64 bit thread IDs (lldb::tid_t is 64 bit).
      
      llvm-svn: 165852
      ea561dcf
  8. Oct 11, 2012
  9. Oct 10, 2012
    • Jim Ingham's avatar
      Change the Thread constructor over to take a Process& rather than a ProcessSP.... · 4f465cff
      Jim Ingham authored
      Change the Thread constructor over to take a Process& rather than a 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
      4f465cff
  10. Oct 09, 2012
  11. Oct 08, 2012
  12. Oct 06, 2012
  13. Oct 05, 2012
  14. Sep 29, 2012
    • Enrico Granata's avatar
      Implementing plugins that provide commands. · 21dfcd9d
      Enrico Granata authored
      This checkin adds the capability for LLDB to load plugins from external dylibs that can provide new commands
      It exports an SBCommand class from the public API layer, and a new SBCommandPluginInterface
      
      There is a minimal load-only plugin manager built into the debugger, which can be accessed via Debugger::LoadPlugin.
      
      Plugins are loaded from two locations at debugger startup (LLDB.framework/Resources/PlugIns and ~/Library/Application Support/LLDB/PlugIns) and more can be (re)loaded via the "plugin load" command
      
      For an example of how to make a plugin, refer to the fooplugin.cpp file in examples/plugins/commands
      
      Caveats:
      	Currently, the new API objects and features are not exposed via Python.
      	The new commands can only be "parsed" (i.e. not raw) and get their command line via a char** parameter (we do not expose our internal Args object)
      	There is no unloading feature, which can potentially lead to leaks if you overwrite the commands by reloading the same or different plugins
      	There is no API exposed for option parsing, which means you may need to use getopt or roll-your-own
      
      llvm-svn: 164865
      21dfcd9d
  15. Sep 27, 2012
  16. Sep 26, 2012
  17. Sep 25, 2012
    • Sean Callanan's avatar
      Added a new Xcode build configuration, DebugClang, · 771f1de2
      Sean Callanan authored
      which builds a Debug+Asserts build of Clang and
      links LLDB against it.  The Debug configuration
      builds Clang with Release+Asserts, for faster
      linking and smaller memory footprint when debugging
      the build LLDB.
      
      llvm-svn: 164573
      771f1de2
    • Sean Callanan's avatar
      Brought LLDB top-of-tree into sync with LLVM/Clang · 3d654b30
      Sean Callanan authored
      top-of-tree.  Removed all local patches and llvm.zip.
      
      The intent is that fron now on top-of-tree will
      always build against LLVM/Clang top-of-tree, and
      that problems building will be resolved as they
      occur.  Stable release branches of LLDB can be
      constructed as needed and linked to specific release
      branches of LLVM/Clang.
      
      llvm-svn: 164563
      3d654b30
  18. Sep 19, 2012
  19. Sep 14, 2012
  20. Sep 12, 2012
  21. Sep 05, 2012
  22. Aug 30, 2012
    • Greg Clayton's avatar
      Added the ability to verify the LLDB API on MacOSX using a script. Usage is: · 0274766b
      Greg Clayton authored
      ./verify_api.py --library ./LLDB.framework/LLDB --api-regex lldb --arch x86_64 /Applications/Xcode.app/Contents/PlugIns/DebuggerLLDB.ideplugin/Contents/MacOS/DebuggerLLDB
      
      So you specify a library with the "--library" option, then you specify an API regular expression that you want to match the executables against with "--api-regex <regex>", here we specify "lldb" to catch all undefined external API functions from the binary we want to test, then we specify the architectures to check with "--arch <arch>" (this can be specified more than once), and you give one or more executables.
      
      llvm-svn: 162941
      0274766b
  23. Aug 28, 2012
  24. Aug 27, 2012
  25. 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
  26. Aug 24, 2012
Loading