| Commit message (Collapse) | Author | Age | Files | Lines |
... | |
|
|
|
| |
llvm-svn: 135417
|
|
|
|
|
|
| |
swigging the header files.
llvm-svn: 135416
|
|
|
|
| |
llvm-svn: 135405
|
|
|
|
|
|
| |
objects by default.
llvm-svn: 135357
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
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
|
|
|
|
|
|
|
|
|
|
|
|
| |
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 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
|
|
|
|
|
|
| |
definitions.
llvm-svn: 134775
|
|
|
|
|
|
| |
*', to 'str', i.e., Python string.
llvm-svn: 134543
|
|
|
|
|
|
|
| |
generated from the swig docstring features instead of blindly applying the
cleanup action for all input lines.
llvm-svn: 134368
|
|
|
|
|
|
| |
Add post-processing step to remove the trailing blank lines from the docstrings of lldb.py.
llvm-svn: 134360
|
|
|
|
|
|
| |
doxygen/c++-comment residues.
llvm-svn: 134326
|
|
|
|
|
|
|
| |
take advantage of them. Update modify-python-lldb.py to remove some 'residues'
resulting from swigification.
llvm-svn: 134269
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
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
|
|
|
|
|
|
|
|
| |
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
|
|
|
|
|
|
|
|
|
| |
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
|
|
|
|
| |
llvm-svn: 132412
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
- 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
|
|
|
|
| |
llvm-svn: 132221
|
|
|
|
| |
llvm-svn: 132019
|
|
|
|
| |
llvm-svn: 132018
|
|
|
|
|
|
|
|
|
| |
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
|
|
|
|
| |
llvm-svn: 132002
|
|
|
|
|
|
|
|
|
|
|
| |
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
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
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
|
|
|
|
|
|
| |
test case to take advantage of 'ths_module == that_module'.
llvm-svn: 130709
|
|
|
|
| |
llvm-svn: 130698
|
|
|
|
| |
llvm-svn: 130533
|
|
|
|
|
|
| |
restored after parsing "SBTarget". Indentation matters in Python. :-)
llvm-svn: 130532
|
|
|
|
|
|
|
| |
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
|
|
|
|
| |
llvm-svn: 130461
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
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
|
|
|
|
|
|
|
|
|
|
| |
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
|
|
|
|
|
|
|
|
| |
public types and public enums. This was done to keep the SWIG stuff from
parsing all sorts of enums and types that weren't needed, and allows us to
abstract our API better.
llvm-svn: 128239
|
|
|
|
| |
llvm-svn: 126732
|
|
|
|
|
|
|
|
|
|
| |
version); change include statements to use Python.h in the Python framework
on Mac OS X systems; leave it using regular Python.h on other systems.
Note: I think this *ought* to work properly on Linux systems, but I don't have
a system to test it on...
llvm-svn: 117612
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
it logs the function calls, their arguments and the return values. This is not
complete or polished, but I am committing it now, at the request of someone who
really wants to use it, even though it's not really done. It currently does not
attempt to log all the functions, just the most important ones. I will be
making further adjustments to the API logging code over the next few days/weeks.
(Suggestions for improvements are welcome).
Update the Python build scripts to re-build the swig C++ file whenever
the python-extensions.swig file is modified.
Correct the help for 'log enable' command (give it the correct number & type of
arguments).
llvm-svn: 117349
|
|
|
|
|
|
|
| |
script, so it can keep track of dependencies accurately (for
knowing when to re-build LLDBWrapPython.cpp).
llvm-svn: 116765
|
|
|
|
| |
llvm-svn: 116486
|
|
|
|
|
|
|
|
|
|
|
|
| |
'lldb.SBDebugger.Initialize()'.
Inside the lldb module, there's no need (and as a matter of fact, incorrect) to specify the 'lldb'
module name.
Comment out the call to lldb.SBDebugger.Initialize() within the test driver itself, since it is
already done when we import the lldb.py module.
llvm-svn: 116485
|
|
|
|
|
|
|
| |
Add call to lldb.SBDebugger.Initialize() to lldb.py, so it automatically gets called when
the lldb Python module gets loaded.
llvm-svn: 116345
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
tricks to get types to resolve. I did this by correctly including the correct
files: stdint.h and all lldb-*.h files first before including the API files.
This allowed me to remove all of the hacks that were in the lldb.swig file
and it also allows all of the #defines in lldb-defines.h and enumerations
in lldb-enumerations.h to appear in the lldb.py module. This will make the
python script code a lot more readable.
Cleaned up the "process launch" command to not execute a "process continue"
command, it now just does what it should have with the internal API calls
instead of executing another command line command.
Made the lldb_private::Process set the state to launching and attaching if
WillLaunch/WillAttach return no error respectively.
llvm-svn: 115902
|
|
|
|
|
|
| |
symbol.
llvm-svn: 115734
|
|
|
|
|
|
|
|
|
|
| |
into python-extensions.swig, which gets included into lldb.swig, and
adds them back into the classes when swig generates it's C++ file. This
keeps the Python stuff out of the general API classes.
Also fixed a small bug in the copy constructor for SBSymbolContext.
llvm-svn: 114602
|
|
|
|
|
|
| |
Add SBValueList.h & SBStream.h to build-swig-Python.sh; add SBValueList.h to lldb.swig
llvm-svn: 114549
|
|
|
|
|
|
|
|
|
|
|
| |
o Fixed a crasher when getting it via SBTarget.GetExecutable().
>>> filespec = target.GetExecutable()
Segmentation fault
o And renamed SBFileSpec::GetFileName() to GetFilename() to be consistent with FileSpec::GetFilename().
llvm-svn: 112308
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
with the only exception of launching the process from SBTarget which is under
investigation.
o build-swig-Python.sh should also checks the timestamp of ${swig_input_file}
for update eligibility. Also, once an update is in order, there's no need
to check the remaining header files for timestamps.
o Coaches swig to treat StopReason as an int type, instead of a C++ class.
llvm-svn: 112210
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Add functions to look up debugger by id
Add global variable to lldb python module, to hold debugger id
Modify embedded Python interpreter to update the global variable with the
id of its current debugger.
Modify the char ** typemap definition in lldb.swig to accept 'None' (for NULL)
as a valid value.
The point of all this is so that, when you drop into the embedded interpreter
from the command interpreter (or when doing Python-based breakpoint commands),
there is a way for the Python side to find/get the correct debugger
instance ( by checking debugger_unique_id, then calling
SBDebugger::FindDebuggerWithID on it).
llvm-svn: 107287
|
|
|
|
|
|
|
|
| |
other script files around, so they can be run from outside Xcode. Also,
check the current OS, and only try to use the framework structure stuff on
Darwin systems.
llvm-svn: 106132
|
|
llvm-svn: 105619
|