summaryrefslogtreecommitdiffstats
path: root/lldb/scripts/Python
Commit message (Collapse)AuthorAgeFilesLines
...
* Make the SBAddress class easier to use when using the publicGreg Clayton2011-07-222-3/+9
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | API. SBTarget changes include changing: bool SBTarget::ResolveLoadAddress (lldb::addr_t vm_addr, lldb::SBAddress& addr); to be: lldb::SBAddress SBTarget::ResolveLoadAddress (lldb::addr_t vm_addr); SBAddress can how contruct itself using a load address and a target which can be used to resolve the address: SBAddress (lldb::addr_t load_addr, lldb::SBTarget &target); This will actually just call the new SetLoadAddress accessor: void SetLoadAddress (lldb::addr_t load_addr, lldb::SBTarget &target); This function will always succeed in making a SBAddress object that can be used in API calls (even if "target" isn't valid). If "target" is valid and there are sections currently loaded, then it will resolve the address to a section offset address if it can. Else an address with a NULL section and an offset that is the "load_addr" that was passed in. We do this because a load address might be from the heap or stack. llvm-svn: 135770
* Change docstring wording: from 'method' to 'function'.Johnny Chen2011-07-211-1/+1
| | | | llvm-svn: 135648
* Add docstring for SBInstructionList class.Johnny Chen2011-07-211-0/+14
| | | | llvm-svn: 135647
* Add docstring for SBCommandReturnObject class.Johnny Chen2011-07-211-0/+7
| | | | llvm-svn: 135642
* Add docstring for SBCommandInterpreter class.Johnny Chen2011-07-201-0/+44
| | | | llvm-svn: 135631
* Add docstring for SBBroadcaster class.Johnny Chen2011-07-201-0/+11
| | | | llvm-svn: 135630
* Add some docstrings for SBFileSpec class.Johnny Chen2011-07-201-0/+21
| | | | llvm-svn: 135553
* Add some docstrings for SBError class.Johnny Chen2011-07-201-0/+47
| | | | llvm-svn: 135547
* Add some docstrings for SBSourceManager class.Johnny Chen2011-07-191-0/+26
| | | | llvm-svn: 135539
* Add some docstrings for SBStream class.Johnny Chen2011-07-191-8/+47
| | | | llvm-svn: 135536
* Move the rest of the SB headers to interface files.Johnny Chen2011-07-1914-0/+815
| | | | | | They are not docstring'ed yet. llvm-svn: 135531
* Add SWIG interface files for SBSymbol, SBSymbolContext, and SBSymbolContextList.Johnny Chen2011-07-194-1/+211
| | | | llvm-svn: 135459
* Add SWIG Python interface files for SBLineEntry, SBListener, and SBModule.Johnny Chen2011-07-184-2/+313
| | | | llvm-svn: 135441
* Missed the interface file for SBFunction in the previous checkin.Johnny Chen2011-07-181-0/+81
| | | | llvm-svn: 135436
* Add SWIG Python interface files for SBDebugger, SBCompileUnit, and SBEvent.Johnny Chen2011-07-183-0/+530
| | | | llvm-svn: 135432
* Add SWIG Python interface files for SBAddress, SBBlock, SBBreakpoint, and ↵Johnny Chen2011-07-184-0/+424
| | | | | | SBBreakpointLocation. llvm-svn: 135430
* Add SWIG Python interface files for SBProcess, SBThread, and SBFrame.Johnny Chen2011-07-186-9/+588
| | | | llvm-svn: 135419
* Fix header documentations.Johnny Chen2011-07-182-2/+2
| | | | llvm-svn: 135417
* Add two new interface files SBValue.i and SBValueList.i, instead of directly ↵Johnny Chen2011-07-182-0/+364
| | | | | | swigging the header files. llvm-svn: 135416
* Cleaned up the interface file for SBTarget.Johnny Chen2011-07-181-50/+0
| | | | llvm-svn: 135405
* Have SWIG generate autodoc strings with parameter types for all SB API ↵Johnny Chen2011-07-161-1/+0
| | | | | | objects by default. llvm-svn: 135357
* Create an interface file for SBTarget named SBTarget.i which relieves SBTarget.hJohnny Chen2011-07-162-15/+493
| | | | | | | | | | | | | 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
* Add some more docstrings for SBCompileUnit and SBBreakpoint, plus ↵Johnny Chen2011-07-151-3/+4
| | | | | | | | | | | | 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
* Add some more docstrings (includng example usages) to SBTarget.h.Johnny Chen2011-07-141-0/+3
| | | | | | | | 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
* Missed the char_to_str_xform on the docstrings for the module level function ↵Johnny Chen2011-07-081-1/+3
| | | | | | definitions. llvm-svn: 134775
* Add post-processing step to transform the docstring from 'char', i.e., 'char ↵Johnny Chen2011-07-061-0/+24
| | | | | | *', to 'str', i.e., Python string. llvm-svn: 134543
* Add a CLEANUP_DOCSTRING state to our FSM to do cleanup of the Python docstringsJohnny Chen2011-07-031-16/+41
| | | | | | | generated from the swig docstring features instead of blindly applying the cleanup action for all input lines. llvm-svn: 134368
* Add swig docstrings for SBFrame.h.Johnny Chen2011-07-031-2/+3
| | | | | | Add post-processing step to remove the trailing blank lines from the docstrings of lldb.py. llvm-svn: 134360
* Refine the post-processing phase of lldb.py to remove some more ↵Johnny Chen2011-07-021-1/+11
| | | | | | doxygen/c++-comment residues. llvm-svn: 134326
* Add some documentation blocks to SBTarget.h and use swig docstring feature toJohnny Chen2011-07-011-0/+16
| | | | | | | take advantage of them. Update modify-python-lldb.py to remove some 'residues' resulting from swigification. llvm-svn: 134269
* Generalise pattern for matching IsValid signaturePeter Collingbourne2011-06-141-1/+1
| | | | | | | | | | | | | | 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
* Add rich comparison methods for the SBAddress object.Johnny Chen2011-06-091-1/+2
| | | | | | | | 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
* Make it clear that the Python script modify-python-lldb.py is responsible ↵Johnny Chen2011-06-011-0/+8
| | | | | | | | | for post-processing 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
* Fix comment.Johnny Chen2011-06-011-1/+1
| | | | llvm-svn: 132412
* Fix remaining Python issues leftover from my previous patch.Charles Davis2011-06-011-3/+7
| | | | | | | | | | | | | - 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
* Use the with statement to simplify the build script.Johnny Chen2011-05-271-42/+20
| | | | llvm-svn: 132221
* Added comment.Johnny Chen2011-05-241-0/+1
| | | | llvm-svn: 132019
* Comment change.Johnny Chen2011-05-241-1/+1
| | | | llvm-svn: 132018
* Fix a potential bug resulting from the wrong assumption that SWIG puts out ↵Johnny Chen2011-05-241-8/+8
| | | | | | | | | the __init__ 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
* Update comment.Johnny Chen2011-05-241-1/+2
| | | | llvm-svn: 132002
* Add truth value testing to those lldb Python objects with the IsValid() ↵Johnny Chen2011-05-171-5/+33
| | | | | | | | | | | method definitions. 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
* Add implementation of built-in function len() for those lldb containers withJohnny Chen2011-05-161-1/+7
| | | | | | | | | | | | | | | 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
* Add implementation of '==' and '!=' for SBFileSpec and SBModule. Modify a ↵Johnny Chen2011-05-021-4/+23
| | | | | | test case to take advantage of 'ths_module == that_module'. llvm-svn: 130709
* Fix a typo in comment.Johnny Chen2011-05-021-1/+1
| | | | llvm-svn: 130698
* Update comments.Johnny Chen2011-04-292-3/+3
| | | | llvm-svn: 130533
* Fix a bug introduced in my previous checkin, where the state was not properlyJohnny Chen2011-04-291-2/+3
| | | | | | restored after parsing "SBTarget". Indentation matters in Python. :-) llvm-svn: 130532
* Add the Python rich comparison methods for SBBreakpoint, where GetID() returnsJohnny Chen2011-04-291-10/+26
| | | | | | | 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
* Fix a typo.Johnny Chen2011-04-281-1/+1
| | | | llvm-svn: 130461
* Move the iteration protocol of lldb objects to the auto-generated lldb ↵Johnny Chen2011-04-283-26/+124
| | | | | | | | | | | | | | | | | | | | | | | | | | Python module. 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
* Make SBBreakpointLocation::GetDescription() API to be consistent with SBTarget,Johnny Chen2011-04-251-1/+1
| | | | | | | | | | 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
OpenPOWER on IntegriCloud