cddc3e03e4ec99c0268c03a126195173e519ed58 |
04-Mar-2016 |
Pirama Arumuga Nainar <pirama@google.com> |
Update aosp/master LLVM for rebase to r256229 http://b/26987366 (cherry picked from commit f3ef5332fa3f4d5ec72c178a2b19dac363a19383) Change-Id: Ic75dcb63191d65df1b69724576392c0aaeb47728
it_reader.py
ore.py
bject.py
|
dce4a407a24b04eebc6a376f8e62b41aaa7b071f |
29-May-2014 |
Stephen Hines <srhines@google.com> |
Update LLVM for 3.5 rebase (r209712). Change-Id: I149556c940fb7dc92d075273c87ff584f400941f
bject.py
ests/test_object.py
|
36b56886974eae4f9c5ebc96befd3e7bfe5de338 |
24-Apr-2014 |
Stephen Hines <srhines@google.com> |
Update to LLVM 3.5a. Change-Id: Ifadecab779f128e62e430c2b4f6ddd84953ed617
ore.py
ests/test_core.py
ests/test_disassembler.py
|
e8a957d2a91d02af0b9c3808b31067d236b22196 |
17-Nov-2013 |
Anders Waldenborg <anders@0x63.nu> |
python: Fix check for disasm creation failure Check should be for pointer being NULL, not what it points to. Also adds a test for this case. Reviewed By: indygreg Differential Revision: http://llvm-reviews.chandlerc.com/D1878 git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@194965 91177308-0d34-0410-b5e6-96231b3b80d8
isassembler.py
ests/test_disassembler.py
|
60e4d7f618ffc8b91c6fa2638e3c25a085c2fb1e |
17-Nov-2013 |
Anders Waldenborg <anders@0x63.nu> |
python: Properly initialize before trying to create disasm As the "LLVMInitializeAll*" functions are not available as symbols in the shared library they can't be used, and as a workaround a list of the targets is kept and the individual symbols tried. As soon as the "All"-functions are changed to proper symbols (as opposed to static inlines in the headers) this hack will be replace with simple calls to the corresponding "LLVMInitializeAll*" functions. Reviewed By: indygreg CC: llvm-commits Differential Revision: http://llvm-reviews.chandlerc.com/D1879 git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@194964 91177308-0d34-0410-b5e6-96231b3b80d8
isassembler.py
|
abaa85d88d13f6efa99c61d206155678ccd5f118 |
11-Sep-2013 |
Michael Gottesman <mgottesman@apple.com> |
[python-bindings] Added support for getting/setting operands of values and getting the number of operands of a value. Also in the process did some cleanups for BasicBlock. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@190477 91177308-0d34-0410-b5e6-96231b3b80d8
ore.py
ests/test_core.py
|
73c382f7fdbe034383600c1ddd385aea0cd27221 |
11-Sep-2013 |
Michael Gottesman <mgottesman@apple.com> |
[python-bindings] Added support for iterating over a basic blocks instructions, getting their name/dumping them, f/b iteration. Tests are included. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@190475 91177308-0d34-0410-b5e6-96231b3b80d8
ore.py
ests/test_core.py
|
e23fa984f5094b58c0b57260ade5a6728336d3ab |
11-Sep-2013 |
Michael Gottesman <mgottesman@apple.com> |
[python-bindings] Added support for iterating over a function's basic blocks, dumping/getting names of those bb, f/w iteration. Tests are included. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@190473 91177308-0d34-0410-b5e6-96231b3b80d8
ore.py
ests/test_core.py
|
7dfa4bc4716aaa34cc7c6226fd00675899263e9d |
11-Sep-2013 |
Michael Gottesman <mgottesman@apple.com> |
[python-bindings] Added support for getting a module's functions, iterating f/b over said functions, dumping/print name of functions. Tests are included as well. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@190471 91177308-0d34-0410-b5e6-96231b3b80d8
ore.py
ests/test_core.py
|
f532d448307215c9ddc1dbdea42afa74757c5e00 |
11-Sep-2013 |
Michael Gottesman <mgottesman@apple.com> |
[python-bindings] Export OpCode from core.py. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@190468 91177308-0d34-0410-b5e6-96231b3b80d8
ore.py
|
a1e366058b2ffce54b3f92a1a74094822c819c80 |
11-Sep-2013 |
Michael Gottesman <mgottesman@apple.com> |
[python-bindings] Added test for reading a module from bitcode. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@190467 91177308-0d34-0410-b5e6-96231b3b80d8
ests/test_bitreader.py
|
7400a858be88ed6fbffb46dcd48b6c9ad6c85a2b |
11-Sep-2013 |
Michael Gottesman <mgottesman@apple.com> |
[python-bindings] Fixed 3 test failures caused by typos. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@190465 91177308-0d34-0410-b5e6-96231b3b80d8
ore.py
ests/test_core.py
|
f495a2679248bca1a426052b3a297326bb46e9db |
11-Sep-2013 |
Michael Gottesman <mgottesman@apple.com> |
Fixed typo. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@190459 91177308-0d34-0410-b5e6-96231b3b80d8
ore.py
|
37a8807323672ab0bb366272e5a798b8e63752a4 |
11-Sep-2013 |
Michael Gottesman <mgottesman@apple.com> |
[python-bindings] Added code for loading a module from bitcode, getset its datalayout, getset its target, dump it, print it to a file. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@190458 91177308-0d34-0410-b5e6-96231b3b80d8
it_reader.py
ore.py
ests/base.py
ests/test.bc
ests/test_core.py
|
6a63cd12813fea01d711f098126d199c936c8f6b |
11-Sep-2013 |
Michael Gottesman <mgottesman@apple.com> |
[python-bindings] Added bindings for LLVMContextRef and a test for creating a new context or getting the global context. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@190457 91177308-0d34-0410-b5e6-96231b3b80d8
ore.py
ests/test_core.py
|
8184ca673bbc23d55f17d903f98f5382f2b7da79 |
11-Sep-2013 |
Michael Gottesman <mgottesman@apple.com> |
[python-bindings] Implemented the PassRegistry class and the calls to initialize/shutdown llvm. Also included an initialize_llvm declaration. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@190456 91177308-0d34-0410-b5e6-96231b3b80d8
ore.py
ests/test_core.py
|
699f8c3524eb179f7cb8302b4a5d19abbd547125 |
11-Sep-2013 |
Michael Gottesman <mgottesman@apple.com> |
[python-bindings] Removed unused import byref from llvm/disassembler.py. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@190455 91177308-0d34-0410-b5e6-96231b3b80d8
isassembler.py
|
86942d20b9ca8861207edd49eba13939dfec230a |
10-Sep-2013 |
Michael Gottesman <mgottesman@apple.com> |
[python-bindings] Changed test_memory_buffer_create_from_file to just use the generic provided test_file instead of a binary. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@190389 91177308-0d34-0410-b5e6-96231b3b80d8
ests/test_core.py
|
653212fdd1f5b5eea1c5b7d4d28b3f6c8fd05bba |
10-Sep-2013 |
Michael Gottesman <mgottesman@apple.com> |
[python bindings] Added code to get the length of a memory buffer. Tests are included. This is a part of a series of patches that have been sitting fallow on a personal branch that I have been messing with for a bit. The patches start to flesh out the python llvm-c wrapper to the point where you can: 1. Load Modules from Bitcode/Dump/Print them. 2. Iterate over Functions from those modules/get their names/dump them. 3. Iterate over the BasicBlocks from said function/get the BB's name/dump it. 4. Iterate over the Instructions in said BasicBlocks/get the instructions name/dump the instruction. My main interest in developing this was to be able to gather statistics about LLVM IR using python scripts to speed up statistical profiling of different IR level transformations (hence the focus on printing/dumping/getting names). This is a gift from me to the LLVM community = ). I am going to be committing the patches slowly over the next bit as I have time to prepare the patches. The overall organization follows the c-api like the bindings that are already implemented. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@190388 91177308-0d34-0410-b5e6-96231b3b80d8
ore.py
ests/base.py
ests/test_core.py
ests/test_file
|
0c25b8f07e4ff033bf630d48cac28fedee1f4c55 |
07-May-2013 |
Bill Wendling <isanbard@gmail.com> |
We're in 3.4 land now. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@181350 91177308-0d34-0410-b5e6-96231b3b80d8
ommon.py
|
fdddf771716a48857a1044abc7917886bf0bf719 |
01-Dec-2012 |
Gregory Szorc <gregory.szorc@gmail.com> |
[python] Add markup option to disassembler Patch contributed by Wladimir J. van der Laan <laanwj@gmail.com> git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@169102 91177308-0d34-0410-b5e6-96231b3b80d8
isassembler.py
ests/test_disassembler.py
|
17cfe87c390265187d16a60ff4d7687802a07bba |
20-Nov-2012 |
Anders Waldenborg <anders@0x63.nu> |
[python] fix get_library() Before this fix, the LLVM Python bindings on SVN trunk always fail with: Exception: LLVM shared library not found! since it's still looking for a library named "LLVM-3.1svn". Besides updating the LLVM version in the library name, this patch also changes llvm.get_library() to make it possible to run the unit tests without installing the LLVM shared library into a default linker search path. e.g. after this patch, running the llvm/python unit tests with: LD_LIBRARY_PATH=../build/Debug+Asserts/lib nosetests -v bindings/python/llvm/tests/ would work on Linux. Patch from Scott Tsai (with some minor modifications) Patch also acked by Gregory Szorc git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@168390 91177308-0d34-0410-b5e6-96231b3b80d8
ommon.py
|
e3295cc5be7f7b2e3bb27e6bf94cd5c569f54876 |
22-Mar-2012 |
Anders Waldenborg <anders@0x63.nu> |
[python] Add negative MemoryBuffer testcase git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@153248 91177308-0d34-0410-b5e6-96231b3b80d8
ests/test_core.py
|
a8d873e178d45024db9c0ef6a25c6867424785f7 |
21-Mar-2012 |
Anders Waldenborg <anders@0x63.nu> |
[python] Add some paths where to find test binary Adds /usr/lib/debug early to list, as some systems (debian) have unstripped libs in there Adds /lib/i386-linux-gnu for systems that does multiarch (debian) git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@153174 91177308-0d34-0410-b5e6-96231b3b80d8
ests/base.py
|
359595413071ff706b484a875a23a4a7d1508f50 |
21-Mar-2012 |
Anders Waldenborg <anders@0x63.nu> |
[python] Mark get_test_binary as not being a test get_test_binary is a helper method, not a test, make sure nosetests doesn't pick it up as a test. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@153173 91177308-0d34-0410-b5e6-96231b3b80d8
ests/base.py
|
92a3e9d63a4fd408fce76c1b2ba71b5a7fb04b8a |
11-Mar-2012 |
Gregory Szorc <gregory.szorc@gmail.com> |
[llvm.py] Implement disassembler interface It doesn't currently support the op info and symbol lookup callbacks, but it is better than nothing. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@152527 91177308-0d34-0410-b5e6-96231b3b80d8
isassembler.py
ests/test_disassembler.py
|
309a2c4e3be8a5dc55e76e766be2d2fb0f9cdec2 |
10-Mar-2012 |
Gregory Szorc <gregory.szorc@gmail.com> |
Revert "[llvm.py] Implement interface to enhanced disassembler" Chris Lattner says the edis interface is going away. It doesn't make sense to land something that will go away in the near future. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@152508 91177308-0d34-0410-b5e6-96231b3b80d8
isassembler.py
ests/test_disassembler.py
|
0b3aae906fa302bcad0863b92f16aec020db26ad |
10-Mar-2012 |
Gregory Szorc <gregory.szorc@gmail.com> |
[llvm.py] Implement interface to enhanced disassembler This requires a C++ change to EDDisassembler's ctor to function properly (the llvm::InitializeAll* functions aren't being called currently and there is no way to call them from Python). Code is partially tested and works well enough for initial commit. There are probably many small bugs. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@152506 91177308-0d34-0410-b5e6-96231b3b80d8
isassembler.py
ests/test_disassembler.py
|
d3ac784fbb1e3cc31f9d8bd702fcda5a63d3ca8e |
10-Mar-2012 |
Gregory Szorc <gregory.szorc@gmail.com> |
[llvm.py] Make LLVMObject.__del__ work if called during __init__ git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@152505 91177308-0d34-0410-b5e6-96231b3b80d8
ommon.py
|
b7487d4edc34fa22b697d0874331c163ed2c6847 |
10-Mar-2012 |
Gregory Szorc <gregory.szorc@gmail.com> |
[llvm.py] Define enumerations from Core.h; add OpCode class git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@152483 91177308-0d34-0410-b5e6-96231b3b80d8
ore.py
numerations.py
ests/test_core.py
|
61e22cd85cd4c84fff391da67018c92bf21a8e19 |
10-Mar-2012 |
Gregory Szorc <gregory.szorc@gmail.com> |
[llvm.py] Implement interface to object files It is now possible to load object files and scan over sections, symbols, and relocations! Includes test code with partial coverage. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@152482 91177308-0d34-0410-b5e6-96231b3b80d8
ommon.py
ore.py
bject.py
ests/__init__.py
ests/base.py
ests/test_core.py
ests/test_object.py
|
07c32218f448b7637d4acad8e87ce7cfaef0277e |
09-Mar-2012 |
Gregory Szorc <gregory.szorc@gmail.com> |
[llvm.py] Make ObjectFile destructor work Previous code had a double free in MemoryBuffer. The tests now pass. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@152422 91177308-0d34-0410-b5e6-96231b3b80d8
ommon.py
ore.py
bject.py
|
5ae04279e0ed16975e1eea012499e8d833aab3c5 |
09-Mar-2012 |
Gregory Szorc <gregory.szorc@gmail.com> |
[llvm.py] Initial skeleton for Python LLVM bindings This contains a semi-functional skeleton for the implementation of the LLVM bindings for Python. The API for the Object.h interface is roughly designed but not implemented. MemoryBufferRef is implemented and actually appears to work! The ObjectFile unit test fails with a segmentation fault because the LLVM library isn't being properly initialized. The build system doesn't know about this code yet, so no alerts should fire. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@152397 91177308-0d34-0410-b5e6-96231b3b80d8
_init__.py
ommon.py
ore.py
bject.py
|