- Jul 16, 2011
-
-
Johnny Chen authored
of the duty of having SWIG docstring features and multiline string literals embedded within. lldb.swig now %include .../SBTarget.i, instead of .../SBTarget.h. Will create other interface files and transition them over. Also update modify-python-lldb.py to better handle the trailing blank line right before the ending '"""' Python docstring delimiter. llvm-svn: 135355
-
- Jul 15, 2011
-
-
Johnny Chen authored
Add some more docstrings for SBCompileUnit and SBBreakpoint, plus incorporate the doxgen doc block of SBValue::GetChildAtIndex(uint32_t idx, lldb::DynamicValueType use_dynamic, bool can_create_synthetic); into the SBValue docstrings. llvm-svn: 135295
-
Enrico Granata authored
- you can use a Python script to write a summary string for data-types, in one of three ways: -P option and typing the script a line at a time -s option and passing a one-line Python script -F option and passing the name of a Python function these options all work for the "type summary add" command your Python code (if provided through -P or -s) is wrapped in a function that accepts two parameters: valobj (a ValueObject) and dict (an LLDB internal dictionary object). if you use -F and give a function name, you're expected to define the function on your own and with the right prototype. your function, however defined, must return a Python string - test case for the Python summary feature - a few quirks: Python summaries cannot have names, and cannot use regex as type names both issues will be fixed ASAP major redesign of type summary code: - type summary working with strings and type summary working with Python code are two classes, with a common base class SummaryFormat - SummaryFormat classes now are able to actively format objects rather than just aggregating data - cleaner code to print descriptions for summaries the public API now exports a method to easily navigate a ValueObject hierarchy New InputReaderEZ and PriorityPointerPair classes Several minor fixes and improvements llvm-svn: 135238
-
- Jul 14, 2011
-
-
Johnny Chen authored
llvm-svn: 135194
-
Johnny Chen authored
llvm-svn: 135190
-
Johnny Chen authored
Add logic to modify-python-lldb to correct swig's transformation of 'char **argv' and 'char **envp' to 'char argv' and 'char envp' by morphing them into the 'list argv' and 'list envp' (as a list of Python strings). llvm-svn: 135114
-
- Jul 09, 2011
-
-
Johnny Chen authored
llvm-svn: 134775
-
Johnny Chen authored
Add a usage example of SBEvent APIs. o SBEvent.h and SBListener.h: Add method docstrings for SBEvent.h and SBListener.h, and example usage of SBEvent into the class docstring of SBEvent. o lldb.swig: Add typemap for SBEvent::SBEvent (uint32_t event, const char *cstr, uint32_t cstr_len) so that we can use, in Python, obj2 = lldb.SBEvent(0, "abc") to create an SBEvent. llvm-svn: 134766
-
- Jul 06, 2011
-
-
Johnny Chen authored
Add post-processing step to transform the docstring from 'char', i.e., 'char *', to 'str', i.e., Python string. llvm-svn: 134543
-
- Jul 03, 2011
-
-
Johnny Chen authored
generated from the swig docstring features instead of blindly applying the cleanup action for all input lines. llvm-svn: 134368
-
Johnny Chen authored
Add post-processing step to remove the trailing blank lines from the docstrings of lldb.py. llvm-svn: 134360
-
- Jul 02, 2011
-
-
Johnny Chen authored
llvm-svn: 134326
-
Johnny Chen authored
take advantage of them. Update modify-python-lldb.py to remove some 'residues' resulting from swigification. llvm-svn: 134269
-
- Jul 01, 2011
-
-
Johnny Chen authored
A few of the auto-generated method docstrings don't look right, and may need to be fixed by either overwriting the auto-gened docstrings or some post-processing steps. llvm-svn: 134246
-
- Jun 30, 2011
-
-
Johnny Chen authored
llvm-svn: 134192
-
- Jun 14, 2011
-
-
Peter Collingbourne authored
Previously the IsValid pattern matched only function signatures of the form: def IsValid(*args): ... However under SWIG 1.3.40 on Linux the signature reads: def IsValid(self): ... The new pattern matches both signature types by matching only up to the left paren. llvm-svn: 132968
-
- Jun 10, 2011
-
-
Johnny Chen authored
If two SBAddress's have the same module and file address, they are considered equal. Add a test snippet 'sa1 == sa2' to exercise the rich comparison methods for SBAddress. llvm-svn: 132807
-
- Jun 03, 2011
-
-
Greg Clayton authored
handles. Also fixed a case where the packet wouldn't be dumped if it returned the unimplemented packet. llvm-svn: 132498
-
- Jun 01, 2011
-
-
Johnny Chen authored
the SWIG-generated lldb.py module by adding comments in the post-processed file in order to facilitate reading of the code. llvm-svn: 132417
-
Johnny Chen authored
llvm-svn: 132412
-
Charles Davis authored
- The Swig post-processing scripts are now run. - edit-swig-python-wrapper-file.py has been modified so it can be run from the Makefile. - The issue that prompted me to pass -classic to swig is fixed by this, so -classic isn't passed anymore. Python shouldn't complain anymore about a missing method 'FindDebuggerByID' on the SBDebugger object whenever lldb is run. llvm-svn: 132383
-
- May 27, 2011
-
-
Johnny Chen authored
llvm-svn: 132221
-
- May 25, 2011
-
-
Johnny Chen authored
llvm-svn: 132019
-
Johnny Chen authored
llvm-svn: 132018
-
Johnny Chen authored
method definition before other method definitions. Instead, do without it and process the class with IsValid() method definition in all possible states. llvm-svn: 132016
-
- May 24, 2011
-
-
Johnny Chen authored
llvm-svn: 132002
-
- May 23, 2011
-
-
Sean Callanan authored
into the mainline LLDB codebase. MCJIT introduces API improvements and better architectural support. This commit adds a new subsystem, the ProcessDataAllocator, which is responsible for performing static data allocations on behalf of the IR transformer. MCJIT currently does not support the relocations required to store the constant pool in the same allocation as the function body, so we allocate a heap region separately and redirect static data references from the expression to that heap region in a new IR modification pass. This patch also fixes bugs in the IR transformations that were exposed by the transition to the MCJIT. Finally, the patch also pulls in a more recent revision of LLVM so that the MCJIT is available for use. llvm-svn: 131923
-
- May 20, 2011
-
-
Greg Clayton authored
the "payload_length" argument for the "payload" packet data. This meant we could end up sending random extra data with a packet depending on how the packet was constructed. Fixed GDBRemoteRegisterContext to properly save and restore all registers. Previous fixes had been added to work around the "payload_length" issues fixed above and aren't needed anymore. Fix logging in GDBRemoteCommunication to make sure we log the correct packet data being sent by using the packet length when dumping the packet contents. Added register definitions for 'arm-lldb' in the "disasm-gdb-remote.pl" script so if you have a register dump from the GDB remote that doesn't include the qRegisterInfo packets, you can manually tell the script which registers are which. llvm-svn: 131715
-
Greg Clayton authored
packet output from "log enable gdb-remote packets". This should help people track down and see what is going wrong more easily when you have log output that includes GDB remote packets. llvm-svn: 131713
-
- May 18, 2011
-
-
Johnny Chen authored
object.__nonzero__(self) is called to implement truth value testing and the built-in operation bool(), via a simple delegation to self.IsValid(). Change tests under python_api/lldbutil to utilize this mechanism. llvm-svn: 131494
-
- May 16, 2011
-
-
Johnny Chen authored
unambiguous iteration support. So that we could, for example: ... REGs = lldbutil.get_GPRs(frame) print "Number of general purpose registers: %d" % len(REGs) for reg in REGs: print "%s => %s" %(reg.GetName(), reg.GetValue()) ... llvm-svn: 131418
-
Sean Callanan authored
changes. llvm-svn: 131391
-
- May 02, 2011
-
-
Johnny Chen authored
Add implementation of '==' and '!=' for SBFileSpec and SBModule. Modify a test case to take advantage of 'ths_module == that_module'. llvm-svn: 130709
-
Johnny Chen authored
llvm-svn: 130698
-
- Apr 29, 2011
-
-
Johnny Chen authored
llvm-svn: 130533
-
Johnny Chen authored
restored after parsing "SBTarget". Indentation matters in Python. :-) llvm-svn: 130532
-
Johnny Chen authored
the breakpoint ID and provides the semantics needed for '==' and '!='. And modify LLDBIteratorTestCase.lldb_iter_2() to use '==' between two SBBreakpoint's. llvm-svn: 130531
-
Johnny Chen authored
llvm-svn: 130461
-
- Apr 28, 2011
-
-
Johnny Chen authored
This is so that the objects which support the iteration protocol are immediately obvious from looking at the lldb.py file. SBTarget supports two types of iterations: module and breakpoint. For an SBTarget instance, you will need to issue either: for m in target.module_iter() or for b in target.breakpoint_iter() For other single iteration protocol objects, just use, for example: for thread in process: ID = thread.GetThreadID() for frame in thread: frame.Disassemble() .... llvm-svn: 130442
-
- Apr 25, 2011
-
-
Johnny Chen authored
i.e., with 'SBStream &description' first, followed by 'DescriptionLevel level'. Modify lldbutil.py so that get_description() for a target or breakpoint location can just take the lldb object itself without specifying an option to mean option lldb.eDescriptionLevelBrief. Modify TestTargetAPI.py to exercise this logic path. llvm-svn: 130147
-