mirror of
https://github.com/RPCS3/llvm.git
synced 2024-12-27 14:45:50 +00:00
53258e6f9e
The returnvalue was handled as c_char_p which ment that ctypes handled it as a NUL-terminated string making it cut the contents at first NUL (or even worse - overrunning the buffer if it doesn't contain a NUL). Differential Revision: http://reviews.llvm.org/D3474 git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@207199 91177308-0d34-0410-b5e6-96231b3b80d8 |
||
---|---|---|
.. | ||
llvm | ||
README.txt |
This directory contains Python bindings for LLVM's C library. The bindings are currently a work in progress and are far from complete. Use at your own risk. Developer Info ============== The single Python package is "llvm." Modules inside this package roughly follow the names of the modules/headers defined by LLVM's C API. Testing ------- All test code is location in llvm/tests. Tests are written as classes which inherit from llvm.tests.base.TestBase, which is a convenience base class that provides common functionality. Tests can be executed by installing nose: pip install nosetests Then by running nosetests: nosetests To see more output: nosetests -v To step into the Python debugger while running a test, add the following to your test at the point you wish to enter the debugger: import pdb; pdb.set_trace() Then run nosetests: nosetests -s -v You should strive for high code coverage. To see current coverage: pip install coverage nosetests --with-coverage --cover-html Then open cover/index.html in your browser of choice to see the code coverage. Style Convention ---------------- All code should pass PyFlakes. First, install PyFlakes: pip install pyflakes Then at any time run it to see a report: pyflakes . Eventually we'll provide a Pylint config file. In the meantime, install Pylint: pip install pylint And run: pylint llvm And try to keep the number of violations to a minimum.