aboutsummaryrefslogtreecommitdiffstats
path: root/bindings
Commit message (Collapse)AuthorAgeFilesLines
* [python] Add markup option to disassemblerGregory Szorc2012-12-012-1/+23
| | | | | | 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
* [python] fix get_library()Anders Waldenborg2012-11-201-15/+35
| | | | | | | | | | | | | | | | | | | | | | | 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
* Fix a build error for ocaml bindings that was introduced with the TargetData ↵Micah Villmow2012-10-191-1/+1
| | | | | | --> DataLayout changes. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@166309 91177308-0d34-0410-b5e6-96231b3b80d8
* Fix the ocaml binding breakage from TargetData -> DataLayout changes.Micah Villmow2012-10-081-19/+19
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@165406 91177308-0d34-0410-b5e6-96231b3b80d8
* Move TargetData to DataLayout.Micah Villmow2012-10-086-79/+79
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@165403 91177308-0d34-0410-b5e6-96231b3b80d8
* add support for ocaml 3.12Nuno Lopes2012-09-022-0/+6
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@163096 91177308-0d34-0410-b5e6-96231b3b80d8
* Remove tabs.Bill Wendling2012-07-192-4/+3
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@160482 91177308-0d34-0410-b5e6-96231b3b80d8
* [python] Add negative MemoryBuffer testcaseAnders Waldenborg2012-03-221-0/+5
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@153248 91177308-0d34-0410-b5e6-96231b3b80d8
* [python] Add some paths where to find test binaryAnders Waldenborg2012-03-211-0/+2
| | | | | | | | | 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
* [python] Mark get_test_binary as not being a testAnders Waldenborg2012-03-211-0/+1
| | | | | | | | | 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
* [llvm.py] Implement disassembler interfaceGregory Szorc2012-03-112-0/+162
| | | | | | | 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
* Revert "[llvm.py] Implement interface to enhanced disassembler"Gregory Szorc2012-03-102-626/+0
| | | | | | | 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
* [llvm.py] Implement interface to enhanced disassemblerGregory Szorc2012-03-102-0/+626
| | | | | | | | | | | 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
* [llvm.py] Make LLVMObject.__del__ work if called during __init__Gregory Szorc2012-03-101-0/+3
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@152505 91177308-0d34-0410-b5e6-96231b3b80d8
* [llvm.py] Define enumerations from Core.h; add OpCode classGregory Szorc2012-03-103-2/+265
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@152483 91177308-0d34-0410-b5e6-96231b3b80d8
* [llvm.py] Implement interface to object filesGregory Szorc2012-03-1010-144/+620
| | | | | | | 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
* [llvm.py] Make ObjectFile destructor workGregory Szorc2012-03-093-17/+33
| | | | | | 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
* [llvm.py] Initial skeleton for Python LLVM bindingsGregory Szorc2012-03-097-0/+361
| | | | | | | | | | | | | | | 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
* ocaml bindings: landing pad is now the last opcode.Benjamin Kramer2012-02-071-1/+1
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@149997 91177308-0d34-0410-b5e6-96231b3b80d8
* Tidy up. s/Low Level Virtual Machine/LLVM/.Jim Grosbach2012-01-251-1/+1
| | | | | | LLVM isn't an acronym anymore. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@148985 91177308-0d34-0410-b5e6-96231b3b80d8
* Update OCaml bindings for the new half float type.Bob Wilson2011-12-282-0/+3
| | | | | | Patch by Jonathan Ragan-Kelley! git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@147314 91177308-0d34-0410-b5e6-96231b3b80d8
* drop unneeded config.h includesDylan Noblesmith2011-12-221-1/+0
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@147197 91177308-0d34-0410-b5e6-96231b3b80d8
* LLVMBuild: Remove trailing newline, which irked me.Daniel Dunbar2011-12-121-1/+0
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@146409 91177308-0d34-0410-b5e6-96231b3b80d8
* Minor fixes in Makefiles for the OCaml bindings:Wojciech Matyjewicz2011-11-092-6/+8
| | | | | | | | | | | | | 1. Interface files (.mli) are installed before compiled interface files (.cmi) to preserve timestamp relation. 2. install-meta should use $(OcamlDir) instead of $(ObjDir). 3. Declared some targets as .PHONY. Patch by Christophe Raffalli. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@144183 91177308-0d34-0410-b5e6-96231b3b80d8
* build: Add initial cut at LLVMBuild.txt files.Daniel Dunbar2011-11-031-0/+22
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@143634 91177308-0d34-0410-b5e6-96231b3b80d8
* OCaml bindings: add some missing functions and testcases.Torok Edwin2011-10-146-3/+261
| | | | | | The C bindings exposed some APIs that weren't covered by the OCaml bindings git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@141997 91177308-0d34-0410-b5e6-96231b3b80d8
* OCaml bindings: fix attributes to use all 32 bitsTorok Edwin2011-10-143-42/+120
| | | | | | | | | OCaml's int is limited to 31 bits on 32-bit architectures, so use Int32 explicitly. Also add an unpack_attr, and {function,param,instr}_attr functions to read the attributes. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@141996 91177308-0d34-0410-b5e6-96231b3b80d8
* OCaml bindings: add icmp_predicateTorok Edwin2011-10-141-0/+2
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@141995 91177308-0d34-0410-b5e6-96231b3b80d8
* OCaml bindings: fix infinite recursion on string_of_lltypeTorok Edwin2011-10-141-1/+8
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@141994 91177308-0d34-0410-b5e6-96231b3b80d8
* bindings: named struct supportTorok Edwin2011-10-143-1/+49
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@141993 91177308-0d34-0410-b5e6-96231b3b80d8
* ocaml bindings: add findlib META supportTorok Edwin2011-10-142-0/+84
| | | | | | | This makes it easier to link against LLVM libs, especially if you are using _oasis. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@141992 91177308-0d34-0410-b5e6-96231b3b80d8
* ocaml bindings: introduce classify_valueTorok Edwin2011-10-143-1/+119
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@141991 91177308-0d34-0410-b5e6-96231b3b80d8
* ocaml bindings: add getopcode for constant and instruction, and int64_of_const.Torok Edwin2011-10-143-1/+178
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@141990 91177308-0d34-0410-b5e6-96231b3b80d8
* bindings: tab and indentation fixes of my previous commitsTorok Edwin2011-10-141-31/+31
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@141989 91177308-0d34-0410-b5e6-96231b3b80d8
* ocaml/C bindings: type->isSized()Torok Edwin2011-10-063-0/+10
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@141288 91177308-0d34-0410-b5e6-96231b3b80d8
* add binding to read icmp predicateTorok Edwin2011-10-063-0/+17
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@141287 91177308-0d34-0410-b5e6-96231b3b80d8
* ocaml/C bindings: getmdstring, add num_op, get_op should work on metadata tooTorok Edwin2011-10-063-0/+37
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@141286 91177308-0d34-0410-b5e6-96231b3b80d8
* C/OCaml API to retrieve struct name.Torok Edwin2011-10-063-0/+19
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@141285 91177308-0d34-0410-b5e6-96231b3b80d8
* ocaml bindings: add llvm_ipo based on IPO.hTorok Edwin2011-10-065-1/+255
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@141284 91177308-0d34-0410-b5e6-96231b3b80d8
* attempt to fix ocaml bindings: landing padsTorok Edwin2011-10-033-1/+27
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@140991 91177308-0d34-0410-b5e6-96231b3b80d8
* Remove the build_unwind function from the OCaml bindings.Peter Collingbourne2011-08-103-12/+0
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@137193 91177308-0d34-0410-b5e6-96231b3b80d8
* Remove InvalidateStructLayoutInfo from the ocaml bindings.Benjamin Kramer2011-07-313-16/+0
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@136582 91177308-0d34-0410-b5e6-96231b3b80d8
* Update OCaml bindings. Opaque types are gone, type holders are gone and theNick Lewycky2011-07-093-126/+0
| | | | | | | module operations that operate on type names are gone. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@134839 91177308-0d34-0410-b5e6-96231b3b80d8
* Fix compiling the ocaml kaleidoscope tutorialsErick Tryzelaar2011-02-091-2/+7
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@125202 91177308-0d34-0410-b5e6-96231b3b80d8
* Fix OCaml bindings crash, PR8847.Torok Edwin2010-12-233-519/+519
| | | | | | | | | | | | | | | | | | See http://caml.inria.fr/mantis/view.php?id=4166 If we call only external functions from a module, then its 'let _' bindings don't get executed, which means that the exceptions don't get registered for use in the C code. This in turn causes llvm_raise to call raise_with_arg() with a NULL pointer and cause a segmentation fault. The workaround is to declare all 'external' functions as 'val' in these .mli files. Also added a separate testcase (the testcase must call only external functions for the bug to occur). git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@122497 91177308-0d34-0410-b5e6-96231b3b80d8
* Try to fix ocaml bindings.Eric Christopher2010-10-083-14/+0
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@116021 91177308-0d34-0410-b5e6-96231b3b80d8
* Remove the Ada bindings which are unmaintained and unused. The project whichDuncan Sands2010-09-1525-17093/+0
| | | | | | | | was the main putative user of the binding is actually maintaining its own different binding, see http://git.ada.cx/cgi-bin/cgit.cgi/draco.git/ git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@113960 91177308-0d34-0410-b5e6-96231b3b80d8
* Add X86 MMX type to bitcode and Type.Dale Johannesen2010-09-101-0/+5
| | | | | | | | | (The Ada bindings probably need it too, but all the obvious places to change say "do not edit this file".) git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@113618 91177308-0d34-0410-b5e6-96231b3b80d8
* Remove unions from the ocaml bindings.Benjamin Kramer2010-08-283-43/+0
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@112363 91177308-0d34-0410-b5e6-96231b3b80d8
* - Add the LinkerPrivateWeakDefAutoLinkage to the Ada bindings.Bill Wendling2010-08-241-17/+19
| | | | | | | - Support the LinkerWeak*Linkage types in llvm-nm and in LinkModules.cpp. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@111952 91177308-0d34-0410-b5e6-96231b3b80d8