Originally a github fork of the llvm-py repository from http://www.mdevan.org/llvm-py/index.html updated to work with LLVM 3.x. Since then it has changed significantly with multiple sub-projects.
www.llvmpy.org
|
|
||
|---|---|---|
| llvm_cbuilder | ||
| tests | ||
| parallel_vectorize.py | ||
| README.md | ||
| test_parallel_vectorize.py | ||
| test_parallel_vectorize_numpy.py | ||
| test_parallel_vectorize_numpy_2.py | ||
| test_usecase_1_1.py | ||
| test_usecase_2_1.py | ||
llvm_cbuilder
A llvm-py Builder wrapper for writing in slightly higher-level constructs. This is aiming for two usecases:
-
Emit LLVM code in a more human-readable way;
-
Writing low-level code that you can't do it properly/portably with C, e.g template (generic), atomic operations, memory ordering...
Parallel Vectorize
parallel_vectorize.py implements a set of code generator that bases on
llvm_cbuilder to create specialized parallel ufunc.
See test_parallel_vectorize_numpy*.py for testing and demo of the code
with the new numpy.fromfunc().