Skip to content
  1. Aug 31, 2010
  2. Aug 30, 2010
    • Johnny Chen's avatar
      Added a system() method to the TestBase class of lldbtest.py, which is actually · 8952a2d5
      Johnny Chen authored
      taken from Python 2.7's subprocess.check_output() convenience function.  The
      purpose of this method is to run the os command with arguments and return its
      output as a byte string.
      
      Modified hello_world/TestHelloWorld.py to have two test cases:
      
      o test_with_dsym_and_run_command
      o test_with_dwarf_and_process_launch_api
      
      with the dsym case conditioned on sys.platform.startswith("darwin") being true.
      The two cases utilize the system() method to invoke "make clean; make MAKE_DYSM=YES/NO"
      to prepare for the appropriate debugging format before running the test logic.
      
      llvm-svn: 112530
      8952a2d5
    • Sean Callanan's avatar
      Fixed a bug where ClangExpressionVariableList was · eb433971
      Sean Callanan authored
      storing pointers to objects inside a std::vector.
      These objects can move around as the std::vector
      changes, invalidating the pointers.
      
      llvm-svn: 112527
      eb433971
    • Jim Ingham's avatar
      Added a way to open the current source file & line in an external editor, and... · e40e4218
      Jim Ingham authored
      Added a way to open the current source file & line in an external editor, and you can turn this on with:
      
      lldb -e
      
      llvm-svn: 112502
      e40e4218
    • Greg Clayton's avatar
      Clarified the intent of the SymbolContextScope class in the header · 59e8fc1c
      Greg Clayton authored
      documentation. Symbol now inherits from the symbol
      context scope so that the StackID can use a "SymbolContextScope *"
      instead of a blockID (which could have been the same as some other
      blockID from another symbol file). 
      
      Modified the stacks that are created on subsequent stops to reuse
      the previous stack frame objects which will allow for some internal
      optimization using pointer comparisons during stepping. 
      
      llvm-svn: 112495
      59e8fc1c
  3. Aug 28, 2010
  4. Aug 27, 2010
    • Greg Clayton's avatar
      Made it so we update the current frames from the previous frames by doing STL · 68275d5e
      Greg Clayton authored
      swaps on the variable list, value object list, and disassembly. This avoids
      us having to try and update frame indexes and other things that were getting
      out of sync.
      
      llvm-svn: 112301
      68275d5e
    • Johnny Chen's avatar
      Trivial doc string mod. · ccd570da
      Johnny Chen authored
      llvm-svn: 112293
      ccd570da
    • Greg Clayton's avatar
      Simplified the StackFrameList class down to a single frames list again · 5082c5fd
      Greg Clayton authored
      instead of trying to maintain the real frame list (unwind frames) and an
      inline frame list. The information is cheap to produce when we already have
      looked up a block and was making stack frame uniquing difficult when trying
      to use the previous stack when making the current stack.
      
      We now maintain the previous value object lists for common frames between
      a previous and current frames so we will be able to tell when variable values
      change.
      
      llvm-svn: 112277
      5082c5fd
    • Johnny Chen's avatar
      Added TestHelloWorld.py which exercises the Python APIs for target, breakpoint, · 82d404c8
      Johnny Chen authored
      and process.  Added comment within the file about issues of using LaunchProcess
      of SBTarget to launch a process (rdar://problem/8364687).
      
      llvm-svn: 112276
      82d404c8
    • Sean Callanan's avatar
      This is a major refactoring of the expression parser. · 1a8d4093
      Sean Callanan authored
      The goal is to separate the parser's data from the data
      belonging to the parser's clients.  This allows clients
      to use the parser to obtain (for example) a JIT compiled
      function or some DWARF code, and then discard the parser
      state.
      
      Previously, parser state was held in ClangExpression and
      used liberally by ClangFunction, which inherited from
      ClangExpression.  The main effects of this refactoring 
      are:
      
      - reducing ClangExpression to an abstract class that
        declares methods that any client must expose to the
        expression parser,
      
      - moving the code specific to implementing the "expr"
        command from ClangExpression and
        CommandObjectExpression into ClangUserExpression,
        a new class,
      
      - moving the common parser interaction code from
        ClangExpression into ClangExpressionParser, a new
        class, and
      
      - making ClangFunction rely only on
        ClangExpressionParser and not depend on the
        internal implementation of ClangExpression.
      
      Side effects include:
      
      - the compiler interaction code has been factored
        out of ClangFunction and is now in an AST pass
        (ASTStructExtractor),
      
      - the header file for ClangFunction is now fully
        documented,
      
      - several bugs that only popped up when Clang was
        deallocated (which never happened, since the
        lifetime of the compiler was essentially infinite)
        are now fixed, and
      
      - the developer-only "call" command has been
        disabled.
      
      I have tested the expr command and the Objective-C
      step-into code, which use ClangUserExpression and
      ClangFunction, respectively, and verified that they
      work.  Please let me know if you encounter bugs or
      poor documentation.
      
      llvm-svn: 112249
      1a8d4093
    • Jim Ingham's avatar
      Make: · 09b263e0
      Jim Ingham authored
      bt all
      
      show the backtrace for all threads, and:
      
      bt 1 3 4
      
      show the backtrace for threads 1, 3 and 4.  If we want to come up with some fancier syntax for thread lists later, that will be great, but this will do for now.
      
      llvm-svn: 112248
      09b263e0
    • Johnny Chen's avatar
      Added a test case to bitfields which uses the Python APIs from lldb.py. · 827edffa
      Johnny Chen authored
      Added a utility method to TestBase class to debug print an SBValue object.
      
      llvm-svn: 112247
      827edffa
    • Jim Ingham's avatar
      Change the "-S", "-F" and "-M" options to take their arguments directly,... · 2561aa61
      Jim Ingham authored
      Change the "-S", "-F" and "-M" options to take their arguments directly, rather than requiring the -n option.  This means you can't "or" together the types (i.e. set a breakpoint on a method or selector called "whatever".  But that is a pretty uncommon operation, and having to provide two flags for the more common "set a breakpoint on this selector" is annoying.
      
      llvm-svn: 112245
      2561aa61
    • Jim Ingham's avatar
      Add -c (count - i.e. number of frames to show) and -s (start frame.) · e2e0b451
      Jim Ingham authored
      llvm-svn: 112243
      e2e0b451
    • Johnny Chen's avatar
      Modified method doc string for verbose test description output. · c19e3a09
      Johnny Chen authored
      llvm-svn: 112236
      c19e3a09
    • Johnny Chen's avatar
      Changed from dbg.GetCurrentTarget() to dbg.GetSelectedTarget(). · bf325e4a
      Johnny Chen authored
      llvm-svn: 112231
      bf325e4a
    • Greg Clayton's avatar
      Changed the StackID to store its start PC address as a load address instead of · 12fc3e0f
      Greg Clayton authored
      a section offset address.
      
      Fixed up some very inefficient STL code.
      
      llvm-svn: 112230
      12fc3e0f
  5. Aug 26, 2010
  6. Aug 25, 2010
Loading