Skip to content
  1. Jun 29, 2010
  2. Jun 28, 2010
    • Greg Clayton's avatar
      Added function name types to allow us to set breakpoints by name more · 0c5cd90d
      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
      0c5cd90d
    • Johnny Chen's avatar
      Added test for a previously fixed bug where invoking lldb command from an emacs · 7e363f55
      Johnny Chen authored
      shell and issuing 'help' would hang (was actually infinitely looping).
      
      llvm-svn: 107066
      7e363f55
  3. Jun 26, 2010
  4. Jun 25, 2010
    • Johnny Chen's avatar
      A simple testing framework for lldb using python's unit testing framework. · a765c28d
      Johnny Chen authored
      Tests for lldb are written as python scripts which take advantage of the script
      bridging provided by LLDB.framework to interact with lldb core.
      
      A specific naming pattern is followed by the .py script to be recognized as
      a module which implements a test scenario, namely, Test*.py.
      
      To specify the directories where "Test*.py" python test scripts are located,
      you need to pass in a list of directory names.  By default, the current
      working directory is searched if nothing is specified on the command line.
      
      An example:
      
      [14:10:20] johnny:/Volumes/data/lldb/svn/trunk/test $ ./dotest.py -v example
      test_choice (TestSequenceFunctions.TestSequenceFunctions) ... ok
      test_sample (TestSequenceFunctions.TestSequenceFunctions) ... ok
      test_shuffle (TestSequenceFunctions.TestSequenceFunctions) ... ok
      
      ----------------------------------------------------------------------
      Ran 3 tests in 0.000s
      
      OK
      
      llvm-svn: 106890
      a765c28d
    • Jim Ingham's avatar
      Remove a reference to Leopard. · e1c8c4b1
      Jim Ingham authored
      llvm-svn: 106814
      e1c8c4b1
  5. Jun 24, 2010
  6. Jun 23, 2010
    • Sean Callanan's avatar
      Fixed the log streams for logs that output to · 4be3990f
      Sean Callanan authored
      standard output, resolving a crasher.
      
      llvm-svn: 106682
      4be3990f
    • Sean Callanan's avatar
      Fixes for array handling and dynamic type casting · d448c1ba
      Sean Callanan authored
      errors pointed out by John McCall.
      
      llvm-svn: 106665
      d448c1ba
    • Greg Clayton's avatar
      Very large changes that were needed in order to allow multiple connections · 6611103c
      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
      6611103c
    • Sean Callanan's avatar
      Updated the expression parser to use proper logging when · f06ba8d8
      Sean Callanan authored
      looking for external variables.  Also cleaned up the log
      messages coming from the DWARF interpreter.
      
      llvm-svn: 106613
      f06ba8d8
    • Sean Callanan's avatar
      Added support to the expression parser for locating · 468574bd
      Sean Callanan authored
      externally-defined functions.
      
      llvm-svn: 106606
      468574bd
  7. Jun 22, 2010
  8. Jun 21, 2010
  9. Jun 19, 2010
    • Jim Ingham's avatar
      Two changes in this checkin. Added a ThreadPlanKind so that I can do some... · b01e742a
      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
      b01e742a
    • Jim Ingham's avatar
      Remember whether a queue or thread name were passed into "breakpoint modify"... · b2a38a72
      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
      b2a38a72
  10. Jun 18, 2010
Loading