llvm-project/lldb/scripts
Greg Clayton a4d8747d0f <rdar://problem/13010007>
Added the ability for OS plug-ins to lazily populate the thread this. The python OS plug-in classes can now implement the following method:

class OperatingSystemPlugin:
  def create_thread(self, tid, context):
    # Return a dictionary for a new thread to create it on demand

This will add a new thread to the thread list if it doesn't already exist. The example code in lldb/examples/python/operating_system.py has been updated to show how this call us used.

Cleaned up the code in PythonDataObjects.cpp/h:
- renamed all classes that started with PythonData* to be Python*. 
- renamed PythonArray to PythonList. Cleaned up the code to use inheritance where
- Centralized the code that does ref counting in the PythonObject class to a single function.
- Made the "bool PythonObject::Reset(PyObject *)" function be virtual so each subclass can correctly check to ensure a PyObject is of the right type before adopting the object.
- Cleaned up all APIs and added new constructors for the Python* classes to they can all construct form:
	- PyObject *
	- const PythonObject &
	- const lldb::ScriptInterpreterObjectSP &

Cleaned up code in ScriptInterpreterPython:
- Made calling python functions safer by templatizing the production of value formats. Python specifies the value formats based on built in C types (long, long long, etc), and code often uses typedefs for uint32_t, uint64_t, etc when passing arguments down to python. We will now always produce correct value formats as the templatized code will "do the right thing" all the time.
- Fixed issues with the ScriptInterpreterPython::Locker where entering the session and leaving the session had a bunch of issues that could cause the "lldb" module globals lldb.debugger, lldb.target, lldb.process, lldb.thread, and lldb.frame to not be initialized.

llvm-svn: 172873
2013-01-18 23:41:08 +00:00
..
Python <rdar://problem/13010007> 2013-01-18 23:41:08 +00:00
build-lldb-llvm-clang <rdar://problem/10507811> 2012-01-04 22:56:43 +00:00
build-llvm.pl SDKROOT should only be unset/cleared for ARM builds. The first fix by Bob Wilson removed it for ARM for both configure and make, but only unset it for desktop configure, not for the make. My next fix unset/cleared it all the time. This fix only unset/clears it for ARM builds. 2013-01-16 01:27:32 +00:00
build-swig-wrapper-classes.sh Linux buildbot fix: detect swig tool from PATH in shell script (before searching hardcoded directories) 2012-11-28 23:49:11 +00:00
buildbot.py Added a buildbot script that automatically checks 2011-10-14 21:43:51 +00:00
checkpoint-llvm.pl Updated LLVM/Clang to pick up a fix for imports of 2011-11-04 22:46:46 +00:00
disasm-gdb-remote.pl Disassemble the vAttach packet. 2013-01-18 23:30:12 +00:00
finish-swig-wrapper-classes.sh Makefile patches from Charles Davis and Daniel Malea (+ one or two tweaks). 2012-11-01 18:55:16 +00:00
generate-vers.pl Update autogen'd LLDB_vers.c. 2011-03-23 02:07:56 +00:00
install-lldb.sh
lldb.swig Add the ability to set timeout & "run all threads" options both from the "expr" command and from 2012-10-16 21:41:58 +00:00
sed-sources Switched over to using the new lldb::SharingPtr from Howard Hinnant. 2010-06-12 17:45:57 +00:00
verify_api.py Added the ability to verify the LLDB API on MacOSX using a script. Usage is: 2012-08-30 21:21:24 +00:00