Benjamin Kramer
efde86753d
ocaml bindings: landing pad is now the last opcode.
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@149997 91177308-0d34-0410-b5e6-96231b3b80d8
2012-02-07 18:58:19 +00:00
Jim Grosbach
c48d4dc8a9
Tidy up. s/Low Level Virtual Machine/LLVM/.
...
LLVM isn't an acronym anymore.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@148985 91177308-0d34-0410-b5e6-96231b3b80d8
2012-01-25 22:00:23 +00:00
Bob Wilson
eaf0608891
Update OCaml bindings for the new half float type.
...
Patch by Jonathan Ragan-Kelley!
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@147314 91177308-0d34-0410-b5e6-96231b3b80d8
2011-12-28 18:51:08 +00:00
Dylan Noblesmith
9421406aad
drop unneeded config.h includes
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@147197 91177308-0d34-0410-b5e6-96231b3b80d8
2011-12-22 23:04:07 +00:00
Wojciech Matyjewicz
6f274a5e81
Minor fixes in Makefiles for the OCaml bindings:
...
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
2011-11-09 12:00:39 +00:00
Torok Edwin
ff616cb440
OCaml bindings: add some missing functions and testcases.
...
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
2011-10-14 20:38:33 +00:00
Torok Edwin
0be167bab2
OCaml bindings: fix attributes to use all 32 bits
...
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
2011-10-14 20:38:24 +00:00
Torok Edwin
8da43bf60e
OCaml bindings: add icmp_predicate
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@141995 91177308-0d34-0410-b5e6-96231b3b80d8
2011-10-14 20:38:19 +00:00
Torok Edwin
2c4ae181c4
OCaml bindings: fix infinite recursion on string_of_lltype
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@141994 91177308-0d34-0410-b5e6-96231b3b80d8
2011-10-14 20:38:14 +00:00
Torok Edwin
6b228e506f
bindings: named struct support
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@141993 91177308-0d34-0410-b5e6-96231b3b80d8
2011-10-14 20:38:08 +00:00
Torok Edwin
4c4b71cec5
ocaml bindings: add findlib META support
...
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
2011-10-14 20:38:02 +00:00
Torok Edwin
3dd1674186
ocaml bindings: introduce classify_value
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@141991 91177308-0d34-0410-b5e6-96231b3b80d8
2011-10-14 20:37:56 +00:00
Torok Edwin
6563c87996
ocaml bindings: add getopcode for constant and instruction, and int64_of_const.
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@141990 91177308-0d34-0410-b5e6-96231b3b80d8
2011-10-14 20:37:49 +00:00
Torok Edwin
31116410de
bindings: tab and indentation fixes of my previous commits
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@141989 91177308-0d34-0410-b5e6-96231b3b80d8
2011-10-14 20:37:42 +00:00
Torok Edwin
ff12c99d13
ocaml/C bindings: type->isSized()
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@141288 91177308-0d34-0410-b5e6-96231b3b80d8
2011-10-06 12:13:28 +00:00
Torok Edwin
4917ec9ec7
add binding to read icmp predicate
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@141287 91177308-0d34-0410-b5e6-96231b3b80d8
2011-10-06 12:13:20 +00:00
Torok Edwin
4f661ab0fb
ocaml/C bindings: getmdstring, add num_op, get_op should work on metadata too
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@141286 91177308-0d34-0410-b5e6-96231b3b80d8
2011-10-06 12:13:11 +00:00
Torok Edwin
c44943ed4f
C/OCaml API to retrieve struct name.
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@141285 91177308-0d34-0410-b5e6-96231b3b80d8
2011-10-06 12:12:50 +00:00
Torok Edwin
48488a64fa
attempt to fix ocaml bindings: landing pads
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@140991 91177308-0d34-0410-b5e6-96231b3b80d8
2011-10-03 06:41:46 +00:00
Peter Collingbourne
e1686b08e4
Remove the build_unwind function from the OCaml bindings.
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@137193 91177308-0d34-0410-b5e6-96231b3b80d8
2011-08-10 01:10:17 +00:00
Nick Lewycky
7c72c927c5
Update OCaml bindings. Opaque types are gone, type holders are gone and the
...
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
2011-07-09 18:29:33 +00:00
Torok Edwin
a156efdf71
Fix OCaml bindings crash, PR8847.
...
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
2010-12-23 15:49:26 +00:00
Dale Johannesen
bb811a2445
Add X86 MMX type to bitcode and Type.
...
(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
2010-09-10 20:55:01 +00:00
Benjamin Kramer
13ba2f9714
Remove unions from the ocaml bindings.
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@112363 91177308-0d34-0410-b5e6-96231b3b80d8
2010-08-28 09:47:42 +00:00
Bob Wilson
d6850b0f37
Fix a typo.
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@111627 91177308-0d34-0410-b5e6-96231b3b80d8
2010-08-20 14:54:37 +00:00
Erick Tryzelaar
f7af931930
Expose LLVMSetOperand and LLVMGetNumOperands to llvm-c and ocaml.
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@111625 91177308-0d34-0410-b5e6-96231b3b80d8
2010-08-20 14:51:22 +00:00
Erick Tryzelaar
e127410550
Fix arguments to ocaml's llvm_params.
...
Thanks to Jianzhou Zhao for finding this.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@111624 91177308-0d34-0410-b5e6-96231b3b80d8
2010-08-20 14:51:16 +00:00
Chris Lattner
0941534c71
add attributes and module level asm to the ocaml bindings,
...
patch by Patrick Walton!
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@100932 91177308-0d34-0410-b5e6-96231b3b80d8
2010-04-10 17:52:58 +00:00
Erick Tryzelaar
4ad188ba8d
Expose alignment and stack alignment attributes to llvm-c and ocaml.
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@97682 91177308-0d34-0410-b5e6-96231b3b80d8
2010-03-03 23:51:25 +00:00
Erick Tryzelaar
df75eb64a7
Don't use an ocaml keyword in an ocamldoc comment.
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@97611 91177308-0d34-0410-b5e6-96231b3b80d8
2010-03-02 23:59:05 +00:00
Erick Tryzelaar
16609f3c5c
Remove module providers from ocaml.
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@97609 91177308-0d34-0410-b5e6-96231b3b80d8
2010-03-02 23:59:00 +00:00
Erick Tryzelaar
705443ffd3
Add support for use to ocaml.
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@97586 91177308-0d34-0410-b5e6-96231b3b80d8
2010-03-02 20:32:32 +00:00
Erick Tryzelaar
b65c5f2ec3
Add support getting the operands of a User to ocaml.
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@97414 91177308-0d34-0410-b5e6-96231b3b80d8
2010-02-28 20:45:03 +00:00
Erick Tryzelaar
6ba5c56cf5
Add support for global aliases to ocaml.
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@97413 91177308-0d34-0410-b5e6-96231b3b80d8
2010-02-28 20:44:58 +00:00
Erick Tryzelaar
ce89b4e66f
Add support for inserting inline asm to ocaml.
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@97412 91177308-0d34-0410-b5e6-96231b3b80d8
2010-02-28 20:44:53 +00:00
Erick Tryzelaar
5b0a7741ad
Add support for getting a null pointer.
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@97380 91177308-0d34-0410-b5e6-96231b3b80d8
2010-02-28 09:46:27 +00:00
Erick Tryzelaar
d80ce75687
Add a way to look up a type by it's name in a module.
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@97379 91177308-0d34-0410-b5e6-96231b3b80d8
2010-02-28 09:46:21 +00:00
Erick Tryzelaar
68bab9833d
Add replace_all_uses_with to ocaml.
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@97378 91177308-0d34-0410-b5e6-96231b3b80d8
2010-02-28 09:46:16 +00:00
Erick Tryzelaar
8e130b1d0d
Add support for global variables in an address space for llvm-c and ocaml.
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@97377 91177308-0d34-0410-b5e6-96231b3b80d8
2010-02-28 09:46:13 +00:00
Erick Tryzelaar
c59286bff1
Add indirect br support to llvm-c and ocaml.
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@97376 91177308-0d34-0410-b5e6-96231b3b80d8
2010-02-28 09:46:06 +00:00
Erick Tryzelaar
46c80e0c56
Add metadata functions to llvm-c and ocaml.
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@97375 91177308-0d34-0410-b5e6-96231b3b80d8
2010-02-28 09:45:59 +00:00
Erick Tryzelaar
19f047f5f6
Add the new builder arthmetic instructions to llvm-c and ocaml.
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@97372 91177308-0d34-0410-b5e6-96231b3b80d8
2010-02-28 05:51:43 +00:00
Erick Tryzelaar
1940dd10dd
Add the new union arthmetic instructions to llvm-c and ocaml.
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@97371 91177308-0d34-0410-b5e6-96231b3b80d8
2010-02-28 05:51:33 +00:00
Erick Tryzelaar
628b76ecb3
Fix incorrect uses of an ocaml llbuilder without extracting it from ocaml.
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@97368 91177308-0d34-0410-b5e6-96231b3b80d8
2010-02-28 05:51:16 +00:00
Erick Tryzelaar
d2b4aff4bc
Remove malloc and free from the ocaml bindings.
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@97367 91177308-0d34-0410-b5e6-96231b3b80d8
2010-02-28 05:51:09 +00:00
Erick Tryzelaar
1430425539
Fix some ocaml documentation
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@96323 91177308-0d34-0410-b5e6-96231b3b80d8
2010-02-16 03:45:17 +00:00
Chris Lattner
c3c3be582d
fix llvm_build_struct_gep for PR6167, patch by
...
Peter Hawkins!
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@95644 91177308-0d34-0410-b5e6-96231b3b80d8
2010-02-09 01:39:46 +00:00
Jakob Stoklund Olesen
570a4a5d9c
Reintroduce the InlineHint function attribute.
...
This time it's for real! I am going to hook this up in the frontends as well.
The inliner has some experimental heuristics for dealing with the inline hint.
When given a -respect-inlinehint option, functions marked with the inline
keyword are given a threshold just above the default for -O3.
We need some experiments to determine if that is the right thing to do.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@95466 91177308-0d34-0410-b5e6-96231b3b80d8
2010-02-06 01:16:28 +00:00
Chris Lattner
dd7da4f368
This corrects an error in the type of the Llvm.dispose_context function.
...
Patch by James Woodyatt!
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@94343 91177308-0d34-0410-b5e6-96231b3b80d8
2010-01-24 00:25:09 +00:00
Erick Tryzelaar
263d989a71
Fix bug 5992: O'Caml's llvm_create_module was treating the context as a string.
...
Thanks Andy Ray for catching this!
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@93588 91177308-0d34-0410-b5e6-96231b3b80d8
2010-01-15 23:49:16 +00:00