History log of /external/llvm/bindings/
Revision Date Author Comments (<<< Hide modified files) (Show modified files >>>)
cd81d94322a39503e4a3e87b6ee03d4fcb3465fb 21-Jul-2014 Stephen Hines <srhines@google.com> Update LLVM for rebase to r212749.

Includes a cherry-pick of:
r212948 - fixes a small issue with atomic calls

Change-Id: Ib97bd980b59f18142a69506400911a6009d9df18
caml/executionengine/llvm_executionengine.mli
caml/llvm/llvm.ml
caml/llvm/llvm.mli
caml/target/target_ocaml.c
dce4a407a24b04eebc6a376f8e62b41aaa7b071f 29-May-2014 Stephen Hines <srhines@google.com> Update LLVM for 3.5 rebase (r209712).

Change-Id: I149556c940fb7dc92d075273c87ff584f400941f
caml/Makefile
caml/all_backends/Makefile
caml/all_backends/all_backends_ocaml.c
caml/all_backends/llvm_all_backends.ml
caml/all_backends/llvm_all_backends.mli
caml/llvm/META.llvm.in
ython/llvm/object.py
ython/llvm/tests/test_object.py
36b56886974eae4f9c5ebc96befd3e7bfe5de338 24-Apr-2014 Stephen Hines <srhines@google.com> Update to LLVM 3.5a.

Change-Id: Ifadecab779f128e62e430c2b4f6ddd84953ed617
caml/Makefile.ocaml
caml/transforms/scalar/llvm_scalar_opts.mli
ython/llvm/core.py
ython/llvm/tests/test_core.py
ython/llvm/tests/test_disassembler.py
f204272976c23aa801043393417a1de47253c194 02-Dec-2013 Bill Wendling <isanbard@gmail.com> Merging r195912:
------------------------------------------------------------------------
r195912 | whitequark | 2013-11-28 01:03:28 -0800 (Thu, 28 Nov 2013) | 1 line

[OCaml] Add a slash accidentally omitted from Makefile
------------------------------------------------------------------------


git-svn-id: https://llvm.org/svn/llvm-project/llvm/branches/release_34@196133 91177308-0d34-0410-b5e6-96231b3b80d8
caml/Makefile.ocaml
3d52c077a914d0f0818f3a1eab41ed84ae3b346a 27-Nov-2013 Bill Wendling <isanbard@gmail.com> Merging r195834:
------------------------------------------------------------------------
r195834 | whitequark | 2013-11-27 03:03:18 -0800 (Wed, 27 Nov 2013) | 11 lines

[OCaml] Embed rpath into stub libraries and native executables

This commit embeds a set of linker flags with hardcoded paths to
the LLVM shared library on --enable-shared builds into .cmxa files
and stub dynamic libraries. This solution closely follows existing
rules for rpath in the LLVM tools, which had to be modified because
of differences in toolchain.

Without this patch, OCaml tests as well as opam bindings broke,
as neither of those updates LD_LIBRARY_PATH to include
the $prefix/lib directory.
------------------------------------------------------------------------


git-svn-id: https://llvm.org/svn/llvm-project/llvm/branches/release_34@195873 91177308-0d34-0410-b5e6-96231b3b80d8
caml/Makefile.ocaml
4684d18578907fa8b1434ef2784d9233a189806c 27-Nov-2013 Bill Wendling <isanbard@gmail.com> Merging r195782:
------------------------------------------------------------------------
r195782 | whitequark | 2013-11-26 12:40:34 -0800 (Tue, 26 Nov 2013) | 1 line

[OCaml] Embed the flags necessary for linking with libLLVM.so into .cmxa files
------------------------------------------------------------------------


git-svn-id: https://llvm.org/svn/llvm-project/llvm/branches/release_34@195871 91177308-0d34-0410-b5e6-96231b3b80d8
caml/Makefile.ocaml
9eaade8b56b124150d189e1786b14306cdaf5641 21-Nov-2013 Sylvestre Ledru <sylvestre@debian.org> [OCaml] Unbreak make install by providing ocamldoc target

Cherry-pick of Peter Zotov's commit in trunk (r195336)



git-svn-id: https://llvm.org/svn/llvm-project/llvm/branches/release_34@195337 91177308-0d34-0410-b5e6-96231b3b80d8
caml/backends/Makefile
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
ython/llvm/disassembler.py
ython/llvm/tests/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
ython/llvm/disassembler.py
b6703ff81b4739be67ae7b07f1bfcfb6f157f891 15-Nov-2013 Peter Zotov <whitequark@whitequark.org> [OCaml] Add Target and TargetMachine bindings to Llvm_target

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@194774 91177308-0d34-0410-b5e6-96231b3b80d8
caml/target/llvm_target.ml
caml/target/llvm_target.mli
caml/target/target_ocaml.c
04deb4957ab253c02bce9d982d69396954744a41 15-Nov-2013 Peter Zotov <whitequark@whitequark.org> [OCaml] Refactor Llvm_target interface

This commit brings the module structure, argument order and
primitive names in Llvm_target in order with the rest of the bindings,
in preparation for adding TargetMachine API.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@194773 91177308-0d34-0410-b5e6-96231b3b80d8
caml/executionengine/executionengine_ocaml.c
caml/executionengine/llvm_executionengine.ml
caml/executionengine/llvm_executionengine.mli
caml/target/llvm_target.ml
caml/target/llvm_target.mli
caml/target/target_ocaml.c
68f4dae1c078df09c9b19a0bda9bc8b8d0aae9be 15-Nov-2013 Peter Zotov <whitequark@whitequark.org> [OCaml] Fix building of stub libraries

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@194772 91177308-0d34-0410-b5e6-96231b3b80d8
caml/Makefile
caml/Makefile.ocaml
caml/backends/backend_ocaml.c
2bdf881ee403c0493acdb3253bc697f3bd914cca 14-Nov-2013 Peter Zotov <whitequark@whitequark.org> [OCaml] Build stub OCaml libraries for all configured targets

This allows to only link in the needed targets, reducing binary
size and more importantly link time.

Note that this is an incomplete implementation: currently,
LLVM does not have the plumbing which would allow to conditionally
link in AsmPrinter, AsmParser and Disassembler for the targets
which support them. This should be improved in the future.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@194670 91177308-0d34-0410-b5e6-96231b3b80d8
caml/backends/META.llvm_backend.in
caml/backends/Makefile
caml/backends/Makefile.common
caml/backends/backend_ocaml.c
caml/backends/llvm_backend.ml.in
caml/backends/llvm_backend.mli.in
a69773cead6dea09ade34342eafacf848ec41367 14-Nov-2013 Peter Zotov <whitequark@whitequark.org> [OCaml] Expose LLVM's fatal error and stacktrace APIs

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@194669 91177308-0d34-0410-b5e6-96231b3b80d8
caml/llvm/llvm.ml
caml/llvm/llvm.mli
caml/llvm/llvm_ocaml.c
1ba15ab1340e07d3456e6b91574f15423bdd30e6 12-Nov-2013 Peter Zotov <whitequark@whitequark.org> [OCaml] Dynamically link LLVM on --enable-shared builds

This commit significantly speeds up both bytecode and native
builds of LLVM clients (from ~20 second to sub-second link time),
and allows to invoke LLVM functions from OCaml toplevel.

The behavior for --disable-shared builds is unchanged.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@194509 91177308-0d34-0410-b5e6-96231b3b80d8
caml/Makefile.ocaml
850b520114dd6bd86fc8741201b9beea88f96599 12-Nov-2013 Peter Zotov <whitequark@whitequark.org> [OCaml] Fix a typo

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@194508 91177308-0d34-0410-b5e6-96231b3b80d8
caml/llvm/llvm_ocaml.c
fa6ab4393ebb7add77a4a957dc50453d07b54a62 11-Nov-2013 Peter Zotov <whitequark@whitequark.org> [OCaml] Add missing Llvm_target functions

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@194382 91177308-0d34-0410-b5e6-96231b3b80d8
caml/target/llvm_target.ml
caml/target/llvm_target.mli
caml/target/target_ocaml.c
786a43e2d8f98034046b7fd3a78d94e57a466895 11-Nov-2013 Peter Zotov <whitequark@whitequark.org> [OCaml] Accept context explicitly in Llvm_target functions

Llvm_target.intptr_type used to implicitly use global context. As
none of other functions in OCaml bindings do, it is changed to
accept context explicitly.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@194381 91177308-0d34-0410-b5e6-96231b3b80d8
caml/target/llvm_target.ml
caml/target/llvm_target.mli
caml/target/target_ocaml.c
26f3bd89660e46a76a3b0267b23b00d917a45404 11-Nov-2013 Peter Zotov <whitequark@whitequark.org> [OCaml] Make Llvm_target.DataLayout.t automatically managed

This breaks the API by removing Llvm_target.DataLayout.dispose.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@194380 91177308-0d34-0410-b5e6-96231b3b80d8
caml/executionengine/executionengine_ocaml.c
caml/executionengine/llvm_executionengine.ml
caml/target/llvm_target.ml
caml/target/llvm_target.mli
caml/target/target_ocaml.c
ec7270c966b4a49840b1801bfbb11977d76cb333 06-Nov-2013 Peter Zotov <whitequark@whitequark.org> [OCaml] Impement Llvm_irreader, bindings to LLVM assembly parser

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@194138 91177308-0d34-0410-b5e6-96231b3b80d8
caml/Makefile
caml/irreader/Makefile
caml/irreader/irreader_ocaml.c
caml/irreader/llvm_irreader.ml
caml/irreader/llvm_irreader.mli
caml/llvm/META.llvm.in
ba0c7cd012b064e2d8009480f9ae6f7d75e00e13 06-Nov-2013 Peter Zotov <whitequark@whitequark.org> [OCaml] Implement Llvm.string_of_llvalue

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@194136 91177308-0d34-0410-b5e6-96231b3b80d8
caml/llvm/llvm.ml
caml/llvm/llvm.mli
caml/llvm/llvm_ocaml.c
34b4a8426131ec2deea45a1e0174f191c63295e2 05-Nov-2013 Peter Zotov <whitequark@whitequark.org> [OCaml] (PR16190) Add ValueKinds for ConstantDataSequential and subclasses

Original patch by David Monniaux

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@194075 91177308-0d34-0410-b5e6-96231b3b80d8
caml/llvm/llvm.ml
caml/llvm/llvm.mli
caml/llvm/llvm_ocaml.c
c8ac229cc8349685117f68bc6f1da04f98015cd6 05-Nov-2013 Peter Zotov <whitequark@whitequark.org> [OCaml] (PR16318) Add missing argument to Llvm.const_intcast

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@194065 91177308-0d34-0410-b5e6-96231b3b80d8
caml/llvm/llvm.ml
caml/llvm/llvm.mli
caml/llvm/llvm_ocaml.c
150c95eab549e1d764eab7ed05b17fe09663fc6e 05-Nov-2013 Peter Zotov <whitequark@whitequark.org> [OCaml] (PR11717) Make declare_qualified_global respect address argument

Original patch by Jonathan Ragan-Kelley

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@194064 91177308-0d34-0410-b5e6-96231b3b80d8
caml/llvm/llvm_ocaml.c
19648c00d66d5fc35c7954faa0bc63a34f68cb9d 05-Nov-2013 Peter Zotov <whitequark@whitequark.org> [OCaml] Properly tag the custom operations of Llvm.llbuilder

All other custom operations tags have LLVM prefix.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@194058 91177308-0d34-0410-b5e6-96231b3b80d8
caml/llvm/llvm_ocaml.c
9a62ec7308510efcd5365ef84f8c539016110698 05-Nov-2013 Peter Zotov <whitequark@whitequark.org> [OCaml] Llvm_linker: do not use external in module interface

Workaround for an OCaml bug:
http://caml.inria.fr/mantis/view.php?id=4166

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@194057 91177308-0d34-0410-b5e6-96231b3b80d8
caml/linker/llvm_linker.mli
4ebe64ae7ec729b29964b355face33af0c4ce424 04-Nov-2013 Peter Zotov <whitequark@whitequark.org> [OCaml] implement Llvm_passmgr_builder, bindings for PassManagerBuilder

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@193968 91177308-0d34-0410-b5e6-96231b3b80d8
caml/llvm/META.llvm.in
caml/transforms/Makefile
caml/transforms/passmgr_builder/Makefile
caml/transforms/passmgr_builder/llvm_passmgr_builder.ml
caml/transforms/passmgr_builder/llvm_passmgr_builder.mli
caml/transforms/passmgr_builder/passmgr_builder_ocaml.c
6b8416192aeb6502f027883b8056d389f2c186a9 04-Nov-2013 Peter Zotov <whitequark@whitequark.org> [OCaml] Documentation

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@193967 91177308-0d34-0410-b5e6-96231b3b80d8
caml/llvm/llvm.mli
caml/llvm/llvm_ocaml.c
8a3bdd6a3fa8312809a432579a5685d431ca8410 04-Nov-2013 Peter Zotov <whitequark@whitequark.org> [OCaml] Implement missing LLVMCore APIs

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@193966 91177308-0d34-0410-b5e6-96231b3b80d8
caml/llvm/llvm.ml
caml/llvm/llvm.mli
caml/llvm/llvm_ocaml.c
e5de63c7de04c81d7d8484e5b64f47941143c739 04-Nov-2013 Peter Zotov <whitequark@whitequark.org> [OCaml] Formatting

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@193965 91177308-0d34-0410-b5e6-96231b3b80d8
caml/executionengine/llvm_executionengine.mli
caml/llvm/llvm.mli
caml/llvm/llvm_ocaml.c
f00a9e0f79541538df7e3af2e83de37f40d904cc 03-Nov-2013 Peter Zotov <whitequark@whitequark.org> [OCaml] Implement Llvm.MemoryBuffer.{of_string,as_string}

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@193953 91177308-0d34-0410-b5e6-96231b3b80d8
caml/llvm/llvm.ml
caml/llvm/llvm.mli
caml/llvm/llvm_ocaml.c
88d74c3093de563408ceb834d999613038195e98 03-Nov-2013 Peter Zotov <whitequark@whitequark.org> [OCaml] Fix ABI incompatibility

OCaml's type unit is not compatible with C's type void.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@193952 91177308-0d34-0410-b5e6-96231b3b80d8
caml/llvm/llvm.ml
caml/llvm/llvm_ocaml.c
9d33bf70c228a5c3b57b1d9bf86ea5949bb77293 03-Nov-2013 Peter Zotov <whitequark@whitequark.org> [OCaml] Implement Llvm_linker, bindings for the IR linker

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@193951 91177308-0d34-0410-b5e6-96231b3b80d8
caml/Makefile
caml/linker/Makefile
caml/linker/linker_ocaml.c
caml/linker/llvm_linker.ml
caml/linker/llvm_linker.mli
caml/llvm/META.llvm.in
1185582dfd542883194d262c5bf92b16e1e037c2 03-Nov-2013 Peter Zotov <whitequark@whitequark.org> [OCaml] Implement Llvm_vectorize bindings

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@193950 91177308-0d34-0410-b5e6-96231b3b80d8
caml/llvm/META.llvm.in
caml/transforms/Makefile
caml/transforms/vectorize/Makefile
caml/transforms/vectorize/llvm_vectorize.ml
caml/transforms/vectorize/llvm_vectorize.mli
caml/transforms/vectorize/vectorize_ocaml.c
fed0b3414250b6dea1732e95d79163b00a2cb38e 03-Nov-2013 Peter Zotov <whitequark@whitequark.org> [OCaml] Llvm_target: fix typo (Int_val instead of Int64_val)

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@193948 91177308-0d34-0410-b5e6-96231b3b80d8
caml/target/target_ocaml.c
30288ac4020138a09ae2a0e4c989b1003340150b 03-Nov-2013 Peter Zotov <whitequark@whitequark.org> [OCaml] Llvm_scalar_opts: add missing transforms

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@193946 91177308-0d34-0410-b5e6-96231b3b80d8
caml/transforms/scalar/llvm_scalar_opts.ml
caml/transforms/scalar/llvm_scalar_opts.mli
caml/transforms/scalar/scalar_opts_ocaml.c
630109d30c5808121957afce029c27952a90a72c 03-Nov-2013 Peter Zotov <whitequark@whitequark.org> [OCaml] Llvm_ipo: add missing transforms

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@193945 91177308-0d34-0410-b5e6-96231b3b80d8
caml/transforms/ipo/ipo_ocaml.c
caml/transforms/ipo/llvm_ipo.ml
caml/transforms/ipo/llvm_ipo.mli
9fd6ef28a39b8dfbd61ece16fb6f410881574d62 01-Nov-2013 Sylvestre Ledru <sylvestre@debian.org> OCaml bindings: fix typo

Patch by Peter Zotov



git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@193851 91177308-0d34-0410-b5e6-96231b3b80d8
caml/target/llvm_target.mli
40a461d547d76c4124d72f8c057c90af5870df3a 01-Nov-2013 Sylvestre Ledru <sylvestre@debian.org> OCaml bindings: remove unused DONT_BUILD_RELINKED from Makefiles

Patch by Peter Zotov




git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@193847 91177308-0d34-0410-b5e6-96231b3b80d8
caml/transforms/ipo/Makefile
caml/transforms/scalar/Makefile
3d841cb9d38aa98ba4fb15938e2124f67c000ca7 01-Nov-2013 Sylvestre Ledru <sylvestre@debian.org> OCaml bindings: fix typo

Patch by Peter Zotov



git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@193845 91177308-0d34-0410-b5e6-96231b3b80d8
caml/Makefile.ocaml
caml/llvm/Makefile
e239d20d36c2cdf4e4143c38d470300c11441a16 01-Nov-2013 Sylvestre Ledru <sylvestre@debian.org> OCaml bindings: fix typo in documentation

Patch by Peter Zotov



git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@193838 91177308-0d34-0410-b5e6-96231b3b80d8
caml/llvm/llvm.mli
dfc58e3bcfcb8f37796b2ca1c289dd202f26d03c 01-Nov-2013 Sylvestre Ledru <sylvestre@debian.org> OCaml bindings: formatting
This commit only changes comments and documentation in OCaml bindings. The official name of the language is OCaml, and the usage is now consistent.

Patch by Peter Zotov



git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@193836 91177308-0d34-0410-b5e6-96231b3b80d8
caml/Makefile.ocaml
caml/analysis/analysis_ocaml.c
caml/analysis/llvm_analysis.ml
caml/analysis/llvm_analysis.mli
caml/bitreader/bitreader_ocaml.c
caml/bitreader/llvm_bitreader.ml
caml/bitreader/llvm_bitreader.mli
caml/bitwriter/bitwriter_ocaml.c
caml/bitwriter/llvm_bitwriter.ml
caml/bitwriter/llvm_bitwriter.mli
caml/executionengine/executionengine_ocaml.c
caml/executionengine/llvm_executionengine.ml
caml/executionengine/llvm_executionengine.mli
caml/llvm/llvm.mli
caml/llvm/llvm_ocaml.c
caml/target/llvm_target.ml
caml/target/llvm_target.mli
caml/target/target_ocaml.c
caml/transforms/ipo/ipo_ocaml.c
caml/transforms/ipo/llvm_ipo.ml
caml/transforms/ipo/llvm_ipo.mli
caml/transforms/scalar/llvm_scalar_opts.ml
caml/transforms/scalar/llvm_scalar_opts.mli
caml/transforms/scalar/scalar_opts_ocaml.c
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
ython/llvm/core.py
ython/llvm/tests/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
ython/llvm/core.py
ython/llvm/tests/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
ython/llvm/core.py
ython/llvm/tests/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
ython/llvm/core.py
ython/llvm/tests/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
ython/llvm/core.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
ython/llvm/tests/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
ython/llvm/core.py
ython/llvm/tests/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
ython/llvm/core.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
ython/llvm/bit_reader.py
ython/llvm/core.py
ython/llvm/tests/base.py
ython/llvm/tests/test.bc
ython/llvm/tests/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
ython/llvm/core.py
ython/llvm/tests/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
ython/llvm/core.py
ython/llvm/tests/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
ython/llvm/disassembler.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
ython/llvm/tests/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
ython/llvm/core.py
ython/llvm/tests/base.py
ython/llvm/tests/test_core.py
ython/llvm/tests/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
ython/llvm/common.py
d2755af8bda2e0fd80efb46556485c4cdbe8704a 29-Apr-2013 Andrew Kaylor <andrew.kaylor@intel.com> Exposing MCJIT through C API

Re-submitting with fix for OCaml dependency problems (removing dependency on SectionMemoryManager when it isn't used).

Patch by Fili Pizlo



git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@180720 91177308-0d34-0410-b5e6-96231b3b80d8
caml/executionengine/Makefile
2f5640d63718bf85d6900e65bd25b5830610ddee 25-Apr-2013 Andrew Kaylor <andrew.kaylor@intel.com> Fixing OCAML bindings for MCJIT

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@180232 91177308-0d34-0410-b5e6-96231b3b80d8
caml/executionengine/Makefile
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
ython/llvm/disassembler.py
ython/llvm/tests/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
ython/llvm/common.py
28ce1cc183582e4061f1e5ba4fb443d99a4915ae 19-Oct-2012 Micah Villmow <villmow@gmail.com> Fix a build error for ocaml bindings that was introduced with the TargetData --> DataLayout changes.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@166309 91177308-0d34-0410-b5e6-96231b3b80d8
caml/executionengine/llvm_executionengine.ml
e2c207db1df24141ff30ffaae6ccdcefc8b9bd88 08-Oct-2012 Micah Villmow <villmow@gmail.com> Fix the ocaml binding breakage from TargetData -> DataLayout changes.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@165406 91177308-0d34-0410-b5e6-96231b3b80d8
caml/target/target_ocaml.c
791cfc211a9801002bfda6b3eb4de7e041f04f53 08-Oct-2012 Micah Villmow <villmow@gmail.com> Move TargetData to DataLayout.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@165403 91177308-0d34-0410-b5e6-96231b3b80d8
caml/executionengine/llvm_executionengine.ml
caml/executionengine/llvm_executionengine.mli
caml/llvm/llvm.mli
caml/target/llvm_target.ml
caml/target/llvm_target.mli
caml/target/target_ocaml.c
4d00161e0a047e0a15842360a0a8653dc4f2ed53 02-Sep-2012 Nuno Lopes <nunoplopes@sapo.pt> add support for ocaml 3.12

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@163096 91177308-0d34-0410-b5e6-96231b3b80d8
caml/executionengine/executionengine_ocaml.c
caml/llvm/llvm_ocaml.c
df6c55155c4e93f06e8d5bf0a8031c2e850e08a5 19-Jul-2012 Bill Wendling <isanbard@gmail.com> Remove tabs.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@160482 91177308-0d34-0410-b5e6-96231b3b80d8
caml/bitreader/llvm_bitreader.mli
caml/transforms/scalar/scalar_opts_ocaml.c
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
ython/llvm/tests/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
ython/llvm/tests/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
ython/llvm/tests/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
ython/llvm/disassembler.py
ython/llvm/tests/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
ython/llvm/disassembler.py
ython/llvm/tests/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
ython/llvm/disassembler.py
ython/llvm/tests/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
ython/llvm/common.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
ython/llvm/core.py
ython/llvm/enumerations.py
ython/llvm/tests/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
ython/README.txt
ython/llvm/common.py
ython/llvm/core.py
ython/llvm/object.py
ython/llvm/tests/__init__.py
ython/llvm/tests/base.py
ython/llvm/tests/test_core.py
ython/llvm/tests/test_object.py
ython/tests/test_core.py
ython/tests/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
ython/llvm/common.py
ython/llvm/core.py
ython/llvm/object.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
ython/README.txt
ython/llvm/__init__.py
ython/llvm/common.py
ython/llvm/core.py
ython/llvm/object.py
ython/tests/test_core.py
ython/tests/test_object.py
efde86753d6f324ac9d0b42e48fd3ebf40c17905 07-Feb-2012 Benjamin Kramer <benny.kra@googlemail.com> 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
caml/llvm/llvm_ocaml.c
c48d4dc8a9371690f73d2d05d2297f1e1a19c952 25-Jan-2012 Jim Grosbach <grosbach@apple.com> 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
caml/llvm/META.llvm.in
eaf0608891cff27fe4cf08d180a6baf49e00f8ae 28-Dec-2011 Bob Wilson <bob.wilson@apple.com> 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
caml/llvm/llvm.ml
caml/llvm/llvm.mli
9421406aada374f79ce2f8e576824463f7830981 23-Dec-2011 Dylan Noblesmith <nobled@dreamwidth.org> drop unneeded config.h includes



git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@147197 91177308-0d34-0410-b5e6-96231b3b80d8
caml/llvm/llvm_ocaml.c
4ab406d7fc06b1272d02cd8be46f0c5ebe51a3da 12-Dec-2011 Daniel Dunbar <daniel@zuster.org> LLVMBuild: Remove trailing newline, which irked me.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@146409 91177308-0d34-0410-b5e6-96231b3b80d8
LVMBuild.txt
6f274a5e81b028baa7290dd5645e8796850e8c7a 09-Nov-2011 Wojciech Matyjewicz <wmatyjewicz@fastmail.fm> 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
caml/Makefile.ocaml
caml/llvm/Makefile
a3a2dfd4a2a8265a9a0c962cb776e2e6ba123956 03-Nov-2011 Daniel Dunbar <daniel@zuster.org> build: Add initial cut at LLVMBuild.txt files.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@143634 91177308-0d34-0410-b5e6-96231b3b80d8
LVMBuild.txt
ff616cb440d696b2663d55494e0a5aedfab20726 14-Oct-2011 Torok Edwin <edwintorok@gmail.com> 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
caml/llvm/llvm.ml
caml/llvm/llvm.mli
caml/llvm/llvm_ocaml.c
caml/transforms/scalar/llvm_scalar_opts.ml
caml/transforms/scalar/llvm_scalar_opts.mli
caml/transforms/scalar/scalar_opts_ocaml.c
0be167bab219cb178f7a6e91186c700ad48aa047 14-Oct-2011 Torok Edwin <edwintorok@gmail.com> 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
caml/llvm/llvm.ml
caml/llvm/llvm.mli
caml/llvm/llvm_ocaml.c
8da43bf60e8c27fe69033d73d440ea147d72b06d 14-Oct-2011 Torok Edwin <edwintorok@gmail.com> OCaml bindings: add icmp_predicate

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@141995 91177308-0d34-0410-b5e6-96231b3b80d8
caml/llvm/llvm.ml
2c4ae181c4c3d93684bb5926cd73c6b3a8370c42 14-Oct-2011 Torok Edwin <edwintorok@gmail.com> 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
caml/llvm/llvm.ml
6b228e506f42972c003599f4873a24910f8a530a 14-Oct-2011 Torok Edwin <edwintorok@gmail.com> bindings: named struct support

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@141993 91177308-0d34-0410-b5e6-96231b3b80d8
caml/llvm/llvm.ml
caml/llvm/llvm.mli
caml/llvm/llvm_ocaml.c
4c4b71cec57772fb06fb42227907888257bd85ab 14-Oct-2011 Torok Edwin <edwintorok@gmail.com> 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
caml/llvm/META.llvm.in
caml/llvm/Makefile
3dd16741864302af14b31b7f75375c09d8544a35 14-Oct-2011 Torok Edwin <edwintorok@gmail.com> ocaml bindings: introduce classify_value

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@141991 91177308-0d34-0410-b5e6-96231b3b80d8
caml/llvm/llvm.ml
caml/llvm/llvm.mli
caml/llvm/llvm_ocaml.c
6563c879964c3bcf5c77d40da8d4c807adf605aa 14-Oct-2011 Torok Edwin <edwintorok@gmail.com> 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
caml/llvm/llvm.ml
caml/llvm/llvm.mli
caml/llvm/llvm_ocaml.c
31116410de16f435d8c76c53e3d6b95fa812cd2c 14-Oct-2011 Torok Edwin <edwintorok@gmail.com> 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
caml/llvm/llvm_ocaml.c
ff12c99d131789ccb9e8739963f4d8e0e95667d4 06-Oct-2011 Torok Edwin <edwintorok@gmail.com> ocaml/C bindings: type->isSized()

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@141288 91177308-0d34-0410-b5e6-96231b3b80d8
caml/llvm/llvm.ml
caml/llvm/llvm.mli
caml/llvm/llvm_ocaml.c
4917ec9ec775d7bc7fbc3362b4c576c32b7617f4 06-Oct-2011 Torok Edwin <edwintorok@gmail.com> add binding to read icmp predicate

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@141287 91177308-0d34-0410-b5e6-96231b3b80d8
caml/llvm/llvm.ml
caml/llvm/llvm.mli
caml/llvm/llvm_ocaml.c
4f661ab0fb87f97c4a12912249c3c366df882102 06-Oct-2011 Torok Edwin <edwintorok@gmail.com> 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
caml/llvm/llvm.ml
caml/llvm/llvm.mli
caml/llvm/llvm_ocaml.c
c44943ed4f4f2d44b6668e6b51eb355f8310660c 06-Oct-2011 Torok Edwin <edwintorok@gmail.com> C/OCaml API to retrieve struct name.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@141285 91177308-0d34-0410-b5e6-96231b3b80d8
caml/llvm/llvm.ml
caml/llvm/llvm.mli
caml/llvm/llvm_ocaml.c
624c5edcd485a210faa61113f38938bdb6a0cc58 06-Oct-2011 Torok Edwin <edwintorok@gmail.com> ocaml bindings: add llvm_ipo based on IPO.h

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@141284 91177308-0d34-0410-b5e6-96231b3b80d8
caml/transforms/Makefile
caml/transforms/ipo/Makefile
caml/transforms/ipo/ipo_ocaml.c
caml/transforms/ipo/llvm_ipo.ml
caml/transforms/ipo/llvm_ipo.mli
48488a64fadb2f99706029e51ae4c06fcfac5cdb 03-Oct-2011 Torok Edwin <edwintorok@gmail.com> attempt to fix ocaml bindings: landing pads

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@140991 91177308-0d34-0410-b5e6-96231b3b80d8
caml/llvm/llvm.ml
caml/llvm/llvm.mli
caml/llvm/llvm_ocaml.c
e1686b08e4b9c570197633afc09f4fe32d664f0d 10-Aug-2011 Peter Collingbourne <peter@pcc.me.uk> 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
caml/llvm/llvm.ml
caml/llvm/llvm.mli
caml/llvm/llvm_ocaml.c
e2721f75503d9195d02b8d2dc4d196b9256873e9 31-Jul-2011 Benjamin Kramer <benny.kra@googlemail.com> Remove InvalidateStructLayoutInfo from the ocaml bindings.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@136582 91177308-0d34-0410-b5e6-96231b3b80d8
caml/target/llvm_target.ml
caml/target/llvm_target.mli
caml/target/target_ocaml.c
7c72c927c5c26806651113d9ee1dfb7aa5cb62c2 09-Jul-2011 Nick Lewycky <nicholas@mxc.ca> 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
caml/llvm/llvm.ml
caml/llvm/llvm.mli
caml/llvm/llvm_ocaml.c
01b4ccb6f7f59373c397274b82b3d65701336c03 09-Feb-2011 Erick Tryzelaar <idadesub@users.sourceforge.net> Fix compiling the ocaml kaleidoscope tutorials

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@125202 91177308-0d34-0410-b5e6-96231b3b80d8
caml/Makefile.ocaml
a156efdf71bc668093e31593713694cf076db895 23-Dec-2010 Torok Edwin <edwintorok@gmail.com> 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
caml/bitreader/llvm_bitreader.mli
caml/executionengine/llvm_executionengine.mli
caml/llvm/llvm.mli
c9f1cddc5170ad882e04eb5901adc7964aec2417 08-Oct-2010 Eric Christopher <echristo@apple.com> Try to fix ocaml bindings.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@116021 91177308-0d34-0410-b5e6-96231b3b80d8
caml/transforms/scalar/llvm_scalar_opts.ml
caml/transforms/scalar/llvm_scalar_opts.mli
caml/transforms/scalar/scalar_opts_ocaml.c
26bb406c167c79f514d3e43290978d0d1b207c47 15-Sep-2010 Duncan Sands <baldrick@free.fr> Remove the Ada bindings which are unmaintained and unused. The project which
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
da/analysis/llvm_analysis-binding.ads
da/analysis/llvm_analysis.ads
da/analysis/llvm_analysis_wrap.cxx
da/bitreader/llvm_bit_reader-binding.ads
da/bitreader/llvm_bit_reader.ads
da/bitreader/llvm_bitreader_wrap.cxx
da/bitwriter/llvm_bit_writer-binding.ads
da/bitwriter/llvm_bit_writer.ads
da/bitwriter/llvm_bitwriter_wrap.cxx
da/executionengine/llvm_execution_engine-binding.ads
da/executionengine/llvm_execution_engine.ads
da/executionengine/llvm_executionengine_wrap.cxx
da/llvm.gpr
da/llvm/llvm-binding.ads
da/llvm/llvm.ads
da/llvm/llvm_link_time_optimizer-binding.ads
da/llvm/llvm_link_time_optimizer.ads
da/llvm/llvm_linktimeoptimizer_wrap.cxx
da/llvm/llvm_wrap.cxx
da/target/llvm_target-binding.ads
da/target/llvm_target.ads
da/target/llvm_target_wrap.cxx
da/transforms/llvm_transforms-binding.ads
da/transforms/llvm_transforms.ads
da/transforms/llvm_transforms_wrap.cxx
bb811a244567aa8a1522203f15588f4d001b7353 10-Sep-2010 Dale Johannesen <dalej@apple.com> 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
caml/llvm/llvm_ocaml.c
13ba2f9714185cf93531ab51addebf63ee256e81 28-Aug-2010 Benjamin Kramer <benny.kra@googlemail.com> Remove unions from the ocaml bindings.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@112363 91177308-0d34-0410-b5e6-96231b3b80d8
caml/llvm/llvm.ml
caml/llvm/llvm.mli
caml/llvm/llvm_ocaml.c
4e34d502727df36cc2caa59307953444b1ee9914 24-Aug-2010 Bill Wendling <isanbard@gmail.com> - Add the LinkerPrivateWeakDefAutoLinkage to the Ada bindings.
- 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
da/llvm/llvm.ads
d6850b0f37e2bfdb189452562c00faa24dc32574 20-Aug-2010 Bob Wilson <bob.wilson@apple.com> Fix a typo.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@111627 91177308-0d34-0410-b5e6-96231b3b80d8
caml/llvm/llvm.mli
f7af931930dfab74b8a72b195e53df34b4ea2480 20-Aug-2010 Erick Tryzelaar <idadesub@users.sourceforge.net> 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
caml/llvm/llvm.ml
caml/llvm/llvm.mli
caml/llvm/llvm_ocaml.c
e12741055015ef5b98e1225834fcece0a3f04029 20-Aug-2010 Erick Tryzelaar <idadesub@users.sourceforge.net> 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
caml/llvm/llvm_ocaml.c
5e721d768254a920b78b9129d79a84c0163cb3f4 01-Jul-2010 Bill Wendling <isanbard@gmail.com> Implement the "linker_private_weak" linkage type. This will be used for
Objective-C metadata types which should be marked as "weak", but which the
linker will remove upon final linkage. However, this linkage isn't specific to
Objective-C.

For example, the "objc_msgSend_fixup_alloc" symbol is defined like this:

.globl l_objc_msgSend_fixup_alloc
.weak_definition l_objc_msgSend_fixup_alloc
.section __DATA, __objc_msgrefs, coalesced
.align 3
l_objc_msgSend_fixup_alloc:
.quad _objc_msgSend_fixup
.quad L_OBJC_METH_VAR_NAME_1

This is different from the "linker_private" linkage type, because it can't have
the metadata defined with ".weak_definition".

Currently only supported on Darwin platforms.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@107433 91177308-0d34-0410-b5e6-96231b3b80d8
da/llvm/llvm.ads
07d317711781d8c9268f7d6afcf1ba7eadf1d127 30-Jun-2010 Bill Wendling <isanbard@gmail.com> Revert r107205 and r107207.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@107215 91177308-0d34-0410-b5e6-96231b3b80d8
da/llvm/llvm.ads
207855cff9b4811004b9720f28a5bd0adf3784b7 29-Jun-2010 Bill Wendling <isanbard@gmail.com> Introducing the "linker_weak" linkage type. This will be used for Objective-C
metadata types which should be marked as "weak", but which the linker will
remove upon final linkage. For example, the "objc_msgSend_fixup_alloc" symbol is
defined like this:

.globl l_objc_msgSend_fixup_alloc
.weak_definition l_objc_msgSend_fixup_alloc
.section __DATA, __objc_msgrefs, coalesced
.align 3
l_objc_msgSend_fixup_alloc:
.quad _objc_msgSend_fixup
.quad L_OBJC_METH_VAR_NAME_1

This is different from the "linker_private" linkage type, because it can't have
the metadata defined with ".weak_definition".


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@107205 91177308-0d34-0410-b5e6-96231b3b80d8
da/llvm/llvm.ads
0941534c712d77243d9dda5e8c1d927563b4edff 10-Apr-2010 Chris Lattner <sabre@nondot.org> 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
caml/llvm/llvm.ml
caml/llvm/llvm.mli
caml/llvm/llvm_ocaml.c
49457b81589c6a3ef384caa8fdf1463ad2ada7c7 08-Mar-2010 Erick Tryzelaar <idadesub@users.sourceforge.net> Add OCaml tutorial to the examples.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@97966 91177308-0d34-0410-b5e6-96231b3b80d8
caml/Makefile.ocaml
e623050048e56a512e77c28b69925e7dc1efa6ad 06-Mar-2010 Erick Tryzelaar <idadesub@users.sourceforge.net> Add a LLVMWriteBitcodeToFD that exposes the raw_fd_ostream options.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@97858 91177308-0d34-0410-b5e6-96231b3b80d8
caml/bitwriter/bitwriter_ocaml.c
caml/bitwriter/llvm_bitwriter.ml
caml/bitwriter/llvm_bitwriter.mli
7eb4beb4cd545c78e911add2c4497c0d1b4cf1ee 04-Mar-2010 Erick Tryzelaar <idadesub@users.sourceforge.net> Expose the rest of the llvm-c scalar opts to ocaml.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@97685 91177308-0d34-0410-b5e6-96231b3b80d8
caml/transforms/scalar/llvm_scalar_opts.ml
caml/transforms/scalar/llvm_scalar_opts.mli
caml/transforms/scalar/scalar_opts_ocaml.c
9c7c566efe4b942ed8597156bf66e9abf98c79b5 04-Mar-2010 Erick Tryzelaar <idadesub@users.sourceforge.net> Rename some ocaml functions.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@97684 91177308-0d34-0410-b5e6-96231b3b80d8
caml/executionengine/executionengine_ocaml.c
caml/executionengine/llvm_executionengine.ml
caml/executionengine/llvm_executionengine.mli
7b3afb4547c943565e9c5740dd60de3bce5a2793 04-Mar-2010 Erick Tryzelaar <idadesub@users.sourceforge.net> Expose the external functions for ocaml's execution engine as an optimization.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@97683 91177308-0d34-0410-b5e6-96231b3b80d8
caml/executionengine/llvm_executionengine.mli
4ad188ba8dde52201c16d46ec6558e32c0dd4805 04-Mar-2010 Erick Tryzelaar <idadesub@users.sourceforge.net> 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
caml/llvm/llvm.ml
caml/llvm/llvm.mli
6bd7730426ccb80e3444e0ca8c2c4e607e53defd 03-Mar-2010 Erick Tryzelaar <idadesub@users.sourceforge.net> Use the ocaml tag 0 since we are just returning an option value.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@97612 91177308-0d34-0410-b5e6-96231b3b80d8
caml/executionengine/executionengine_ocaml.c
df75eb64a7e34083051315cfed02d1559084d4cf 03-Mar-2010 Erick Tryzelaar <idadesub@users.sourceforge.net> 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
caml/llvm/llvm.mli
0dd27da1841ca50d00aad3465f4f9b6a646fd64e 03-Mar-2010 Erick Tryzelaar <idadesub@users.sourceforge.net> Expose the optimization level for the jit in ocaml.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@97610 91177308-0d34-0410-b5e6-96231b3b80d8
caml/executionengine/executionengine_ocaml.c
caml/executionengine/llvm_executionengine.ml
caml/executionengine/llvm_executionengine.mli
16609f3c5c26ba34603ae0d7ebab86fb11a72722 03-Mar-2010 Erick Tryzelaar <idadesub@users.sourceforge.net> Remove module providers from ocaml.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@97609 91177308-0d34-0410-b5e6-96231b3b80d8
caml/bitreader/bitreader_ocaml.c
caml/bitreader/llvm_bitreader.ml
caml/bitreader/llvm_bitreader.mli
caml/executionengine/executionengine_ocaml.c
caml/executionengine/llvm_executionengine.ml
caml/executionengine/llvm_executionengine.mli
caml/llvm/llvm.ml
caml/llvm/llvm.mli
caml/llvm/llvm_ocaml.c
705443ffd3f67018c1ec387014262566502a9ee3 02-Mar-2010 Erick Tryzelaar <idadesub@users.sourceforge.net> Add support for use to ocaml.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@97586 91177308-0d34-0410-b5e6-96231b3b80d8
caml/llvm/llvm.ml
caml/llvm/llvm.mli
caml/llvm/llvm_ocaml.c
b65c5f2ec347db8342cb7e42d072b0088b74fa73 28-Feb-2010 Erick Tryzelaar <idadesub@users.sourceforge.net> 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
caml/llvm/llvm.ml
caml/llvm/llvm.mli
caml/llvm/llvm_ocaml.c
6ba5c56cf5b1609ec4af45f4901118865a8ed9b6 28-Feb-2010 Erick Tryzelaar <idadesub@users.sourceforge.net> Add support for global aliases to ocaml.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@97413 91177308-0d34-0410-b5e6-96231b3b80d8
caml/llvm/llvm.ml
caml/llvm/llvm.mli
caml/llvm/llvm_ocaml.c
ce89b4e66f7ec82b2b621c94b072f0b22827a3cd 28-Feb-2010 Erick Tryzelaar <idadesub@users.sourceforge.net> 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
caml/llvm/llvm.ml
caml/llvm/llvm.mli
caml/llvm/llvm_ocaml.c
5b0a7741ad262315d6365250a2da2edb8ba37e69 28-Feb-2010 Erick Tryzelaar <idadesub@users.sourceforge.net> Add support for getting a null pointer.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@97380 91177308-0d34-0410-b5e6-96231b3b80d8
caml/llvm/llvm.ml
caml/llvm/llvm.mli
d80ce75687c22e63d746d732b4e28fd5a1207a9d 28-Feb-2010 Erick Tryzelaar <idadesub@users.sourceforge.net> 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
caml/llvm/llvm.ml
caml/llvm/llvm.mli
caml/llvm/llvm_ocaml.c
68bab9833db8d524398f7feee1ce4bda9df320ab 28-Feb-2010 Erick Tryzelaar <idadesub@users.sourceforge.net> Add replace_all_uses_with to ocaml.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@97378 91177308-0d34-0410-b5e6-96231b3b80d8
caml/llvm/llvm.ml
caml/llvm/llvm.mli
8e130b1d0d53346e05d0a1161a52c6d62de163c4 28-Feb-2010 Erick Tryzelaar <idadesub@users.sourceforge.net> 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
caml/llvm/llvm.ml
caml/llvm/llvm.mli
caml/llvm/llvm_ocaml.c
c59286bff1cca8c4fa15f390c9002db94117614e 28-Feb-2010 Erick Tryzelaar <idadesub@users.sourceforge.net> 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
caml/llvm/llvm.ml
caml/llvm/llvm.mli
caml/llvm/llvm_ocaml.c
46c80e0c5653e11ada7cebcb46f9a8f7df758e41 28-Feb-2010 Erick Tryzelaar <idadesub@users.sourceforge.net> 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
caml/llvm/llvm.ml
caml/llvm/llvm.mli
caml/llvm/llvm_ocaml.c
19f047f5f6c44d1cd5681f9314b3ff5e7bae122d 28-Feb-2010 Erick Tryzelaar <idadesub@users.sourceforge.net> 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
caml/llvm/llvm.ml
caml/llvm/llvm.mli
caml/llvm/llvm_ocaml.c
1940dd10dd6b79e3332f384756c268b85d0ad400 28-Feb-2010 Erick Tryzelaar <idadesub@users.sourceforge.net> 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
caml/llvm/llvm.ml
caml/llvm/llvm.mli
caml/llvm/llvm_ocaml.c
628b76ecb326d104d2a00c47990c26b22ca9fd42 28-Feb-2010 Erick Tryzelaar <idadesub@users.sourceforge.net> 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
caml/llvm/llvm_ocaml.c
d2b4aff4bca23ff5dadf180281a74902a18fcf73 28-Feb-2010 Erick Tryzelaar <idadesub@users.sourceforge.net> 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
caml/llvm/llvm.ml
caml/llvm/llvm.mli
caml/llvm/llvm_ocaml.c
70b7007307caf79a256f56404e72ece27d85a857 27-Feb-2010 Jeffrey Yasskin <jyasskin@google.com> Fix the ocaml bindings for the bitcode reader.
llvm_get_module_provider() was returning a value of the wrong type.



git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@97290 91177308-0d34-0410-b5e6-96231b3b80d8
caml/bitreader/bitreader_ocaml.c
1430425539fd8004e47ab664c5e5fe5dc23c6d58 16-Feb-2010 Erick Tryzelaar <idadesub@users.sourceforge.net> Fix some ocaml documentation

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@96323 91177308-0d34-0410-b5e6-96231b3b80d8
caml/llvm/llvm.mli
caml/llvm/llvm_ocaml.c
c3c3be582de556f2a199f9154ec48f00be8eb077 09-Feb-2010 Chris Lattner <sabre@nondot.org> 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
caml/llvm/llvm_ocaml.c
570a4a5d9ca31f276a67502d1e0533d59d331fea 06-Feb-2010 Jakob Stoklund Olesen <stoklund@2pi.dk> 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
caml/llvm/llvm.ml
caml/llvm/llvm.mli
dd7da4f368c7e1139ef78f36ef173a8b8f8f1c61 24-Jan-2010 Chris Lattner <sabre@nondot.org> 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
caml/llvm/llvm.ml
caml/llvm/llvm.mli
263d989a719c1864862fc91f59193a6c2b55ca48 16-Jan-2010 Erick Tryzelaar <idadesub@users.sourceforge.net> 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
caml/llvm/llvm_ocaml.c
606a1d1f5984f20e79b0d2a2d38c121907426810 15-Jan-2010 Eric Christopher <echristo@apple.com> Remove the InlineHint attribute. There are no current or planned
users.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@93558 91177308-0d34-0410-b5e6-96231b3b80d8
caml/llvm/llvm.ml
caml/llvm/llvm.mli
3994b4b05e02736c98744647d1d495e77c844413 18-Dec-2009 Bob Wilson <bob.wilson@apple.com> Fix another parallel make race condition.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@91709 91177308-0d34-0410-b5e6-96231b3b80d8
caml/Makefile.ocaml
f24bfa7f794300e6889191e18d79f27db2829421 28-Sep-2009 Erick Tryzelaar <idadesub@users.sourceforge.net> Expose the rest of the attribute settings.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@82965 91177308-0d34-0410-b5e6-96231b3b80d8
caml/llvm/llvm.ml
caml/llvm/llvm.mli
4aee0410003d873db0d5f76c34ccba7d2d828799 28-Sep-2009 Erick Tryzelaar <idadesub@users.sourceforge.net> Fix a bug in ocaml bindings that has incorrect linkage options.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@82964 91177308-0d34-0410-b5e6-96231b3b80d8
caml/llvm/llvm.ml
caml/llvm/llvm.mli
46262684285cd7baf74425610228ac8b4547dab1 14-Sep-2009 Erick Tryzelaar <idadesub@users.sourceforge.net> Expose initializing the native target for the execution engine.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@81800 91177308-0d34-0410-b5e6-96231b3b80d8
caml/executionengine/executionengine_ocaml.c
caml/executionengine/llvm_executionengine.ml
caml/executionengine/llvm_executionengine.mli
ae77a201488fc439bfdfa6314b947a1f5457b701 11-Sep-2009 Bob Wilson <bob.wilson@apple.com> Fix pr4820: Don't run llvm-config during "make clean" since it may have
already been removed.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@81547 91177308-0d34-0410-b5e6-96231b3b80d8
caml/Makefile.ocaml
52248ff682e13315e5be08824bdd1d340e02d610 31-Aug-2009 Erick Tryzelaar <idadesub@users.sourceforge.net> Fix header comment for bindings/ocaml/llvm/Makefile.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@80526 91177308-0d34-0410-b5e6-96231b3b80d8
caml/llvm/Makefile
b02b87882788e57e180c6b903a37ced0db1ce828 19-Aug-2009 Erick Tryzelaar <idadesub@users.sourceforge.net> Convert the rest of the ocaml types and functions to use context.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@79430 91177308-0d34-0410-b5e6-96231b3b80d8
caml/llvm/llvm.ml
caml/llvm/llvm.mli
caml/llvm/llvm_ocaml.c
6793dd9769047706acf34420586716450344fb66 19-Aug-2009 Erick Tryzelaar <idadesub@users.sourceforge.net> Add the ocaml binding to LLVMBuildAggregateRet.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@79414 91177308-0d34-0410-b5e6-96231b3b80d8
caml/llvm/llvm_ocaml.c
5371aa2a1c9a4eeecffdb9ab7b2175732e49475b 19-Aug-2009 Erick Tryzelaar <idadesub@users.sourceforge.net> Allow passing around LLVMContext in ocaml.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@79410 91177308-0d34-0410-b5e6-96231b3b80d8
caml/bitreader/bitreader_ocaml.c
caml/bitreader/llvm_bitreader.ml
caml/bitreader/llvm_bitreader.mli
caml/llvm/llvm.ml
caml/llvm/llvm.mli
caml/llvm/llvm_ocaml.c
e1b80b6946183a167b566f674235177338469a26 18-Aug-2009 Edward O'Callaghan <eocallaghan@auroraux.org> LLVM Ada language bindings. Credit to Rod Kay and the AuroraUX team.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@79295 91177308-0d34-0410-b5e6-96231b3b80d8
da/analysis/llvm_analysis-binding.ads
da/analysis/llvm_analysis.ads
da/analysis/llvm_analysis_wrap.cxx
da/bitreader/llvm_bit_reader-binding.ads
da/bitreader/llvm_bit_reader.ads
da/bitreader/llvm_bitreader_wrap.cxx
da/bitwriter/llvm_bit_writer-binding.ads
da/bitwriter/llvm_bit_writer.ads
da/bitwriter/llvm_bitwriter_wrap.cxx
da/executionengine/llvm_execution_engine-binding.ads
da/executionengine/llvm_execution_engine.ads
da/executionengine/llvm_executionengine_wrap.cxx
da/llvm.gpr
da/llvm/llvm-binding.ads
da/llvm/llvm.ads
da/llvm/llvm_link_time_optimizer-binding.ads
da/llvm/llvm_link_time_optimizer.ads
da/llvm/llvm_linktimeoptimizer_wrap.cxx
da/llvm/llvm_wrap.cxx
da/target/llvm_target-binding.ads
da/target/llvm_target.ads
da/target/llvm_target_wrap.cxx
da/transforms/llvm_transforms-binding.ads
da/transforms/llvm_transforms.ads
da/transforms/llvm_transforms_wrap.cxx
45d6ac2cc13f7881687c2d7f03f9b9892fd85e6e 17-Aug-2009 Erick Tryzelaar <idadesub@users.sourceforge.net> Expose creating constant ints and floats from strings to ocaml.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@79214 91177308-0d34-0410-b5e6-96231b3b80d8
caml/llvm/llvm.ml
caml/llvm/llvm.mli
caml/llvm/llvm_ocaml.c
5c1c2082968ff4c36063ed09c4eea772eb808b6a 16-Aug-2009 Erick Tryzelaar <idadesub@users.sourceforge.net> Add an llvm-c function that lets you insert an instruction with a name.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@79163 91177308-0d34-0410-b5e6-96231b3b80d8
caml/llvm/llvm.ml
caml/llvm/llvm.mli
caml/llvm/llvm_ocaml.c
1b42cfd1ca03e48835e8e4c91c5dbb598030257f 16-Aug-2009 Erick Tryzelaar <idadesub@users.sourceforge.net> Expose most of the Constant creation functions to ocaml.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@79162 91177308-0d34-0410-b5e6-96231b3b80d8
caml/llvm/llvm.ml
caml/llvm/llvm.mli
caml/llvm/llvm_ocaml.c
e0f8bf6cbe1bee904021a8ae45008e3703dde283 16-Aug-2009 Erick Tryzelaar <idadesub@users.sourceforge.net> Expose most of the IRBuilder functionality to ocaml.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@79161 91177308-0d34-0410-b5e6-96231b3b80d8
caml/llvm/llvm.ml
caml/llvm/llvm.mli
caml/llvm/llvm_ocaml.c
86c9d6b33b16d90df9cc651a2590dee3d8918522 10-Aug-2009 Erick Tryzelaar <idadesub@users.sourceforge.net> Fix comment in llvm.mli.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@78591 91177308-0d34-0410-b5e6-96231b3b80d8
caml/llvm/llvm.mli
2b526fec6a03be58f56e885af6b53c197973e573 10-Aug-2009 Erick Tryzelaar <idadesub@users.sourceforge.net> Fix docstring for ocaml binding's const_float.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@78589 91177308-0d34-0410-b5e6-96231b3b80d8
caml/llvm/llvm.mli
32eaeca34fe1e6080a2916e04c89874f0b273e31 21-Jul-2009 Bob Wilson <bob.wilson@apple.com> Reorder the "Metadata" entry to match the C bindings.
This fixes a regression in the vmcore.ml dejagnu test.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@76657 91177308-0d34-0410-b5e6-96231b3b80d8
caml/llvm/llvm.ml
caml/llvm/llvm.mli
4b1511b027ce0b648b3379f2891816c25b46f515 18-Jul-2009 Reid Kleckner <reid@kleckner.net> Add EngineBuilder to ExecutionEngine in favor of the five optional argument EE::create().

Also a test commit.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@76276 91177308-0d34-0410-b5e6-96231b3b80d8
caml/executionengine/llvm_executionengine.mli
e46161f10c3e0c640b22e446b873df8b01413f52 24-Jun-2009 Bob Wilson <bob.wilson@apple.com> Fix the Ocaml bindings for the ExecutionEngine: with the change to build
libraries instead of relinked objects, the interpreter, JIT, and native
target libraries were not being linked in to an ocaml program using the
ExecutionEngine.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@74117 91177308-0d34-0410-b5e6-96231b3b80d8
caml/executionengine/executionengine_ocaml.c
1d97ca85add3b5f3ff19370c7ab903e2ed4dbe7a 24-Jun-2009 Chris Lattner <sabre@nondot.org> remove dead makefile flags.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@74064 91177308-0d34-0410-b5e6-96231b3b80d8
caml/analysis/Makefile
caml/bitreader/Makefile
caml/bitwriter/Makefile
caml/executionengine/Makefile
caml/llvm/Makefile
caml/target/Makefile
7a0370f66ab5739f42ffe822f33494e0de9b182b 30-May-2009 Nick Lewycky <nicholas@mxc.ca> Give embedded metadata its own type instead of relying on EmptyStructTy.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@72610 91177308-0d34-0410-b5e6-96231b3b80d8
caml/llvm/llvm.ml
caml/llvm/llvm.mli
2f82376c485f07dd9bfd6f563f6e194843c5060c 22-May-2009 Duncan Sands <baldrick@free.fr> Hopefully fix the build for people with ocaml.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@72254 91177308-0d34-0410-b5e6-96231b3b80d8
caml/llvm/llvm.ml
ef854af5bd231ae0c059eb4f07d13352d2a50a9d 21-May-2009 Duncan Sands <baldrick@free.fr> Add a getAlignOf helper for getting the ABI alignment of a
type as a target independent constant expression. I confess
that I didn't check that this method works as intended (though
I did test the equivalent hand-written IR a little). But what
could possibly go wrong!


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@72213 91177308-0d34-0410-b5e6-96231b3b80d8
caml/llvm/llvm.mli
777d2306b36816a53bc1ae1244c0dc7d998ae691 09-May-2009 Duncan Sands <baldrick@free.fr> Rename PaddedSize to AllocSize, in the hope that this
will make it more obvious what it represents, and stop
it being confused with the StoreSize.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@71349 91177308-0d34-0410-b5e6-96231b3b80d8
caml/target/llvm_target.mli
e149e9960ba0726f4b084763f7ef95afa12d9a88 06-May-2009 Duncan Sands <baldrick@free.fr> OCaml parameter attribute bindings from PR2752.
Incomplete, but better than nothing.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@71081 91177308-0d34-0410-b5e6-96231b3b80d8
caml/llvm/llvm.ml
caml/llvm/llvm.mli
caml/llvm/llvm_ocaml.c
610079287ef50721548a0399c126076be3a9a508 30-Apr-2009 Bill Wendling <isanbard@gmail.com> Fix the JIT bindings for ocaml.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@70454 91177308-0d34-0410-b5e6-96231b3b80d8
caml/executionengine/executionengine_ocaml.c
14b9ed13e79d4b8fe97e2215e7ccf095a40463fd 13-Apr-2009 Nick Lewycky <nicholas@mxc.ca> Fix ocaml bindings; add "available_externally" linkage type.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@68945 91177308-0d34-0410-b5e6-96231b3b80d8
caml/llvm/llvm.ml
caml/llvm/llvm.mli
46c95bbe0616fc37cb56866a57939487f45eca00 06-Mar-2009 Bob Wilson <bob.wilson@apple.com> Fix a parallel make race condition by swapping the order of -I directories.
The .cmi files are generated in $(ObjDir) and then copied to $(OcamlDir).
The ocamldep output references the .cmi files in $(ObjDir), so make kicks
off a dependent compile as soon as the local copy is generated. If the
copy to $(OcamlDir) is not complete at that point, the compiler will read
the partially copied file and complain about a "Corrupted compiled
interface". Searching $(ObjDir) first avoids this.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@66217 91177308-0d34-0410-b5e6-96231b3b80d8
caml/Makefile.ocaml
a15dc035a6d4153bece7a067e037e5d6f5d58b16 26-Feb-2009 Nick Lewycky <nicholas@mxc.ca> Remove libtool.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@65517 91177308-0d34-0410-b5e6-96231b3b80d8
caml/Makefile.ocaml
ceb4d1aecb9deffe59b3dcdc9a783ffde8477be9 12-Jan-2009 Duncan Sands <baldrick@free.fr> Rename getABITypeSize to getTypePaddedSize, as
suggested by Chris.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@62099 91177308-0d34-0410-b5e6-96231b3b80d8
caml/target/llvm_target.mli
07cabf6102800aa701bc4d1bd282fafb63b8a416 30-Aug-2008 Gordon Henriksen <gordonhenriksen@mac.com> PR2731: C and Ocaml bindings for setTailCall and isTailCall.

Based on patch by Giorgos Korfiatis.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@55570 91177308-0d34-0410-b5e6-96231b3b80d8
caml/llvm/llvm.ml
caml/llvm/llvm.mli
caml/llvm/llvm_ocaml.c
5eca075b74d62c621b160aa216b4cd50829a2cc7 17-Aug-2008 Gordon Henriksen <gordonhenriksen@mac.com> Rename some GC classes so that their roll will hopefully be clearer.

In particular, Collector was confusing to implementors. Several
thought that this compile-time class was the place to implement
their runtime GC heap. Of course, it doesn't even exist at runtime.
Specifically, the renames are:

Collector -> GCStrategy
CollectorMetadata -> GCFunctionInfo
CollectorModuleMetadata -> GCModuleInfo
CollectorRegistry -> GCRegistry
Function::getCollector -> getGC (setGC, hasGC, clearGC)

Several accessors and nested types have also been renamed to be
consistent. These changes should be obvious.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@54899 91177308-0d34-0410-b5e6-96231b3b80d8
caml/llvm/llvm.ml
caml/llvm/llvm.mli
caml/llvm/llvm_ocaml.c
f068263cbc523a3d80f08735d92b347680707aa0 09-Aug-2008 Gordon Henriksen <gordonhenriksen@mac.com> Delete a redundant binding, LLVMHasInitializer.

Please use !LLVMIsDeclaration instead.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@54572 91177308-0d34-0410-b5e6-96231b3b80d8
caml/llvm/llvm.ml
caml/llvm/llvm.mli
21491edbf4027df4db559eb1a9aa8fbf3779cfab 09-Aug-2008 Gordon Henriksen <gordonhenriksen@mac.com> [PR-2610] Adding Ocaml bindings for Switch::addCase.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@54571 91177308-0d34-0410-b5e6-96231b3b80d8
caml/llvm/llvm.ml
caml/llvm/llvm.mli
caml/llvm/llvm_ocaml.c
c13c4d6a1bbc91a9e3bb9f964f32f3a999071070 08-Aug-2008 Gordon Henriksen <gordonhenriksen@mac.com> Fix the LLVMCreateJITCompiler C binding.

Evan broke it in r54523 by adding a parameter in the implementation without
updating the header correspondingly.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@54555 91177308-0d34-0410-b5e6-96231b3b80d8
caml/executionengine/executionengine_ocaml.c
caml/executionengine/llvm_executionengine.ml
caml/executionengine/llvm_executionengine.mli
83eaae19add8031b299fc657cb69ceb5bfa44ae4 19-May-2008 Gordon Henriksen <gordonhenriksen@mac.com> Remove a duplicative binding. Patch by Mahadevan R.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@51238 91177308-0d34-0410-b5e6-96231b3b80d8
caml/llvm/llvm_ocaml.c
89f6d88db334ba088672ae0753deb7d7b7509bac 13-Apr-2008 Duncan Sands <baldrick@free.fr> Merge LLVMBuilder and FoldingBuilder, calling
the result IRBuilder. Patch by Dominic Hamon.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@49604 91177308-0d34-0410-b5e6-96231b3b80d8
caml/llvm/llvm_ocaml.c
d6d018589cf3de22bc5d0b2b229e37cdb6afca61 31-Mar-2008 Erick Tryzelaar <idadesub@users.sourceforge.net> Expose Function::viewCFG and Function::viewCFGOnly to bindings.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@48982 91177308-0d34-0410-b5e6-96231b3b80d8
caml/analysis/analysis_ocaml.c
caml/analysis/llvm_analysis.ml
caml/analysis/llvm_analysis.mli
7c1483bc6f009318ce66c4d37d1ba930e01a6d13 27-Mar-2008 Erick Tryzelaar <idadesub@users.sourceforge.net> Expose ExecutionEngine::getTargetData() to c and ocaml bindings.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@48851 91177308-0d34-0410-b5e6-96231b3b80d8
caml/executionengine/Makefile
caml/executionengine/llvm_executionengine.ml
caml/executionengine/llvm_executionengine.mli
033d778249e59548c495f39166a53fa80f48eb91 25-Mar-2008 Gordon Henriksen <gordonhenriksen@mac.com> Extend the builder interface to use the new instruction positioning code.

This adds support for instruction iterators, as well as rewriting the
builder code to use these new functions. This lets us eliminate the C
bindings for moving around the builder.

Patch by Erick Tryzelaar!


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@48774 91177308-0d34-0410-b5e6-96231b3b80d8
caml/llvm/llvm.ml
caml/llvm/llvm.mli
caml/llvm/llvm_ocaml.c
f440691a20eff24cf59ac14e10057234ae182dbe 23-Mar-2008 Gordon Henriksen <gordonhenriksen@mac.com> Another typo.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@48713 91177308-0d34-0410-b5e6-96231b3b80d8
caml/llvm/llvm_ocaml.c
224fceb41f993fbc954345f053dab4e8caf28329 23-Mar-2008 Gordon Henriksen <gordonhenriksen@mac.com> Fix a typo.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@48712 91177308-0d34-0410-b5e6-96231b3b80d8
caml/llvm/llvm.mli
4733be38930ae81716bba9ae75a8281bcb180634 23-Mar-2008 Gordon Henriksen <gordonhenriksen@mac.com> Objective Caml bindings for basic block, function, global, and arg iterators.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@48711 91177308-0d34-0410-b5e6-96231b3b80d8
caml/llvm/llvm.ml
caml/llvm/llvm.mli
caml/llvm/llvm_ocaml.c
69cf031ee33fc564c3888694cb1cd8ab5dae9fd2 20-Mar-2008 Gordon Henriksen <gordonhenriksen@mac.com> C and Objective Caml bindings for mem2reg and reg2mem.

Patch by Erick Tryzelaar.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@48602 91177308-0d34-0410-b5e6-96231b3b80d8
caml/transforms/scalar/llvm_scalar_opts.ml
caml/transforms/scalar/llvm_scalar_opts.mli
caml/transforms/scalar/scalar_opts_ocaml.c
dc1ce7bdc6e32e7a4c4a110caa32834730183c1b 19-Mar-2008 Gordon Henriksen <gordonhenriksen@mac.com> C and Objective Caml bindings for the various getParent methods of the IR.

Based on Erick Tryzelaar's patch.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@48523 91177308-0d34-0410-b5e6-96231b3b80d8
caml/llvm/llvm.ml
caml/llvm/llvm.mli
caml/llvm/llvm_ocaml.c
c3862636281692cfe8550c8fbf6683a28b72b0c7 17-Mar-2008 Bill Wendling <isanbard@gmail.com> Fix for "make install" of ocaml docs. Patch by Erick Tryzelaar!


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@48451 91177308-0d34-0410-b5e6-96231b3b80d8
caml/transforms/Makefile
3e0c83559397c87e06ef29c41385e7adc34573c2 16-Mar-2008 Gordon Henriksen <gordonhenriksen@mac.com> C and Objective Caml bindings for the TargetData class.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@48422 91177308-0d34-0410-b5e6-96231b3b80d8
caml/Makefile
caml/target/Makefile
caml/target/llvm_target.ml
caml/target/llvm_target.mli
caml/target/target_ocaml.c
41ba1546eb46030e9994ee14f8052a1981ae2c54 16-Mar-2008 Gordon Henriksen <gordonhenriksen@mac.com> C and Objective Caml bindings for several scalar transforms.

Patch originally by Erick Tryzelaar, but has been modified somewhat.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@48419 91177308-0d34-0410-b5e6-96231b3b80d8
caml/Makefile
caml/transforms/Makefile
caml/transforms/scalar/Makefile
caml/transforms/scalar/llvm_scalar_opts.ml
caml/transforms/scalar/llvm_scalar_opts.mli
caml/transforms/scalar/scalar_opts_ocaml.c
d78c0f5a7255e4347cbd82f7435c51401096652c 16-Mar-2008 Gordon Henriksen <gordonhenriksen@mac.com> C and Objective Caml bindings for PassManagers.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@48413 91177308-0d34-0410-b5e6-96231b3b80d8
caml/llvm/llvm.ml
caml/llvm/llvm.mli
caml/llvm/llvm_ocaml.c
606c5aa084041eb5ad60710728098eaf9c997315 15-Mar-2008 Gordon Henriksen <gordonhenriksen@mac.com> Minor documentation fix.

Patch by Erick Tryzelaar.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@48382 91177308-0d34-0410-b5e6-96231b3b80d8
caml/executionengine/executionengine_ocaml.c
af59b105bb3f9a31f1812e470eb9db28a8a1b491 15-Mar-2008 Gordon Henriksen <gordonhenriksen@mac.com> Expose Module::dump via C and Ocaml.

Patch by Erick Tryzelaar.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@48379 91177308-0d34-0410-b5e6-96231b3b80d8
caml/llvm/llvm.ml
caml/llvm/llvm_ocaml.c
3c5da81df86ec463c5604cb36d93e699a25c6b4d 15-Mar-2008 Gordon Henriksen <gordonhenriksen@mac.com> Expose Module::dump via C and Ocaml.

Patch by Erick Tryzelaar.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@48378 91177308-0d34-0410-b5e6-96231b3b80d8
caml/llvm/llvm.mli
f368dadd9425de65fea4283daef5d197e98cc1cd 10-Mar-2008 Gordon Henriksen <gordonhenriksen@mac.com> Refresh Makefile.ocaml in objdir if it is modified in srcdir.

Patch by Erick Tryzelaar!

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@48150 91177308-0d34-0410-b5e6-96231b3b80d8
caml/Makefile.ocaml
7252dc0efc16111f1eed60d5e0810e5f8663b457 10-Mar-2008 Gordon Henriksen <gordonhenriksen@mac.com> Refresh Makefile.ocaml in objdir if it is modified in srcdir.

Patch by Erick Tryzelaar!

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@48149 91177308-0d34-0410-b5e6-96231b3b80d8
caml/Makefile
b04776696359e54153e20c426419fe54b6766473 10-Mar-2008 Gordon Henriksen <gordonhenriksen@mac.com> Adding ocamldoc generation.

Patch by Erick Tryzelaar.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@48147 91177308-0d34-0410-b5e6-96231b3b80d8
caml/Makefile
caml/Makefile.ocaml
a523380c6b5ad1d53dc7b38e9aee6bc9868d18c5 10-Mar-2008 Gordon Henriksen <gordonhenriksen@mac.com> Formatting improvements.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@48146 91177308-0d34-0410-b5e6-96231b3b80d8
caml/llvm/llvm.mli
3b646de03668fed630f4e3fa9df56a7332a905e4 09-Mar-2008 Gordon Henriksen <gordonhenriksen@mac.com> This patch cleans up the OCaml bindings so that they format nicely with
ocamldoc. It does not yet hook into the build system, though.

Patch by Erick Tryzelaar!

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@48095 91177308-0d34-0410-b5e6-96231b3b80d8
caml/analysis/llvm_analysis.mli
caml/bitreader/llvm_bitreader.mli
caml/bitwriter/llvm_bitwriter.mli
caml/executionengine/llvm_executionengine.mli
caml/llvm/llvm.ml
caml/llvm/llvm.mli
bbf1c514bd832bf1306fe3e87221fd78bbc306ef 07-Mar-2008 Gordon Henriksen <gordonhenriksen@mac.com> Cleanup some comments in the OCaml bindings.

Patch by Erick Tryzelaar.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@48014 91177308-0d34-0410-b5e6-96231b3b80d8
caml/llvm/llvm.ml
caml/llvm/llvm.mli
caml/llvm/llvm_ocaml.c
4b169cd1ebf96d8ed71505a1e1bde3764747361a 07-Mar-2008 Gordon Henriksen <gordonhenriksen@mac.com> Fix a typo. 'make clean' in bindings/ocaml would leave an output.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@48012 91177308-0d34-0410-b5e6-96231b3b80d8
caml/Makefile.ocaml
e6074a027fd78939cc69a8c5db72f789b4e1b2c7 04-Mar-2008 Gordon Henriksen <gordonhenriksen@mac.com> Fix a typo noticed by Erick Tryzelaar,

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@47886 91177308-0d34-0410-b5e6-96231b3b80d8
caml/Makefile.ocaml
9e7aba2739fb3edb3ddcf04c5d36c7c1cccb0581 06-Jan-2008 Gordon Henriksen <gordonhenriksen@mac.com> Modify Makefile.rules to allow makefiles to prepend to C.Flags and
fiends. Change Makefile.ocaml to not touch CFLAGS.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@45663 91177308-0d34-0410-b5e6-96231b3b80d8
caml/Makefile.ocaml
632146044083683a987260599fca3a717b7e38a4 04-Jan-2008 Gordon Henriksen <gordonhenriksen@mac.com> Fix a typo in llvm.mli noticed by Alain Frisch.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@45585 91177308-0d34-0410-b5e6-96231b3b80d8
caml/llvm/llvm.mli
96a6931c0ced19636c9ace95755034c93ce5da86 04-Jan-2008 Gordon Henriksen <gordonhenriksen@mac.com> Quote a path in the Ocaml makefile which is likely to include spaces on Windows.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@45580 91177308-0d34-0410-b5e6-96231b3b80d8
caml/Makefile.ocaml
a9d059693b0bfdaa27bad71c2b0769beaf6ee7dd 30-Dec-2007 Gordon Henriksen <gordonhenriksen@mac.com> Trying r45451 again, but this time warning-free on 3.10.x.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@45452 91177308-0d34-0410-b5e6-96231b3b80d8
caml/bitreader/bitreader_ocaml.c
caml/executionengine/executionengine_ocaml.c
caml/llvm/llvm_ocaml.c
309298955a6cfa3020ef932a1df47d8965f8fea5 30-Dec-2007 Gordon Henriksen <gordonhenriksen@mac.com> Remove some lines that are nonportable to Ocaml 3.06.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@45451 91177308-0d34-0410-b5e6-96231b3b80d8
caml/bitreader/bitreader_ocaml.c
caml/executionengine/executionengine_ocaml.c
caml/llvm/llvm_ocaml.c
234d529e582963ad4b5d83b911cd057fe99d1435 29-Dec-2007 Chris Lattner <sabre@nondot.org> remove attribution from a variety of miscellaneous files.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@45425 91177308-0d34-0410-b5e6-96231b3b80d8
caml/analysis/analysis_ocaml.c
caml/analysis/llvm_analysis.ml
caml/analysis/llvm_analysis.mli
caml/bitreader/bitreader_ocaml.c
caml/bitreader/llvm_bitreader.ml
caml/bitreader/llvm_bitreader.mli
caml/bitwriter/bitwriter_ocaml.c
caml/bitwriter/llvm_bitwriter.ml
caml/bitwriter/llvm_bitwriter.mli
caml/executionengine/executionengine_ocaml.c
caml/executionengine/llvm_executionengine.ml
caml/executionengine/llvm_executionengine.mli
caml/llvm/llvm.ml
caml/llvm/llvm.mli
caml/llvm/llvm_ocaml.c
cc0928ff22d9f3e8f2930874f6727db8c700ec35 29-Dec-2007 Gordon Henriksen <gordonhenriksen@mac.com> Bindings for instruction calling conventions.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@45422 91177308-0d34-0410-b5e6-96231b3b80d8
caml/llvm/llvm.ml
caml/llvm/llvm.mli
caml/llvm/llvm_ocaml.c
57360d1f1cede3b26744d0ce3ade814fcc0f332d 29-Dec-2007 Chris Lattner <sabre@nondot.org> remove attributions from the rest of the llvm makefiles.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@45416 91177308-0d34-0410-b5e6-96231b3b80d8
akefile
caml/Makefile
caml/Makefile.ocaml
caml/analysis/Makefile
caml/bitreader/Makefile
caml/bitwriter/Makefile
caml/executionengine/Makefile
caml/llvm/Makefile
a353ffa7e556bfd2864474911174da691117f691 27-Dec-2007 Gordon Henriksen <gordonhenriksen@mac.com> Adding bindings for target triple and data layout.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@45369 91177308-0d34-0410-b5e6-96231b3b80d8
caml/llvm/llvm.ml
caml/llvm/llvm.mli
caml/llvm/llvm_ocaml.c
a09a89983bf51aa70d3067282e4817ec3057eb51 26-Dec-2007 Gordon Henriksen <gordonhenriksen@mac.com> Adding an uninitialized builder constructor to the Ocaml bindings.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@45362 91177308-0d34-0410-b5e6-96231b3b80d8
caml/llvm/llvm.ml
caml/llvm/llvm.mli
caml/llvm/llvm_ocaml.c
4e20a09b6fcf616f1a7bbe0dba4b5fa133b8a5e5 25-Dec-2007 Gordon Henriksen <gordonhenriksen@mac.com> Disabling -g for ocaml builds; it's not downwards compatible.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@45352 91177308-0d34-0410-b5e6-96231b3b80d8
caml/Makefile.ocaml
15ac8b9e6dec8f60879331fe62e62c92e09bfdb6 23-Dec-2007 Gordon Henriksen <gordonhenriksen@mac.com> Fix some Ocaml GC errors noticed upon review.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@45336 91177308-0d34-0410-b5e6-96231b3b80d8
caml/executionengine/executionengine_ocaml.c
2e855e68d861224c9b61e2bc9cecad1536b1534b 23-Dec-2007 Gordon Henriksen <gordonhenriksen@mac.com> C and Ocaml bindings for ExecutionEngine (i.e., the JIT compiler).


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@45335 91177308-0d34-0410-b5e6-96231b3b80d8
caml/Makefile
caml/Makefile.ocaml
caml/bitreader/bitreader_ocaml.c
caml/executionengine/Makefile
caml/executionengine/executionengine_ocaml.c
caml/executionengine/llvm_executionengine.ml
caml/executionengine/llvm_executionengine.mli
caml/llvm/llvm_ocaml.c
1475142b93a618da72ec471e5ad7c1510c2feb37 20-Dec-2007 Gordon Henriksen <gordonhenriksen@mac.com> Use a module to group calling convention values, too.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@45236 91177308-0d34-0410-b5e6-96231b3b80d8
caml/llvm/llvm.ml
caml/llvm/llvm.mli
404a1942e43ca967700cc2608eb97b863add2677 19-Dec-2007 Gordon Henriksen <gordonhenriksen@mac.com> Using modules to group enumerations in Ocaml bindings.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@45229 91177308-0d34-0410-b5e6-96231b3b80d8
caml/llvm/llvm.ml
caml/llvm/llvm.mli
caml/llvm/llvm_ocaml.c
da1435f86ebc9886dd7704294e01d192d79e069c 19-Dec-2007 Gordon Henriksen <gordonhenriksen@mac.com> Adding bindings for memory buffers and module providers. Switching
to exceptions rather than variants for error handling in Ocaml.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@45226 91177308-0d34-0410-b5e6-96231b3b80d8
caml/analysis/analysis_ocaml.c
caml/bitreader/bitreader_ocaml.c
caml/bitreader/llvm_bitreader.ml
caml/bitreader/llvm_bitreader.mli
caml/llvm/llvm.ml
caml/llvm/llvm.mli
caml/llvm/llvm_ocaml.c
57cebeec7ba08b55f29f5bf98ad0a3a17e9d0c71 17-Dec-2007 Gordon Henriksen <gordonhenriksen@mac.com> C and Ocaml bindings for address spaces, for that burgeoning market
for Ocaml-based compilers targeting embedded devices. :)

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@45096 91177308-0d34-0410-b5e6-96231b3b80d8
caml/llvm/llvm.ml
caml/llvm/llvm.mli
caml/llvm/llvm_ocaml.c
1ae6135fa37eb061499d079b9b33dc82dcc1283f 12-Dec-2007 Gordon Henriksen <gordonhenriksen@mac.com> Add (very basic) bindings for ModuleProvider.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@44899 91177308-0d34-0410-b5e6-96231b3b80d8
caml/llvm/llvm.ml
caml/llvm/llvm.mli
caml/llvm/llvm_ocaml.c
bbc6597f02d108f32b5bdc7711cc67386196017b 11-Dec-2007 Gordon Henriksen <gordonhenriksen@mac.com> Adding Ocaml bindings for the bitreader as requested by Sarah
Thompson. Usage should be something like this:

open Llvm
open Llvm_bitreader

match read_bitcode_file fn with
| Bitreader_failure msg ->
prerr_endline msg
| Bitreader_success m ->
...;
dispose_module m

Compile with: ocamlc llvm.cma llvm_bitreader.cma
ocamlopt llvm.cmxa llvm_bitreader.cmxa


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@44824 91177308-0d34-0410-b5e6-96231b3b80d8
caml/Makefile
caml/bitreader/Makefile
caml/bitreader/bitreader_ocaml.c
caml/bitreader/llvm_bitreader.ml
caml/bitreader/llvm_bitreader.mli
80a75bfae980df96f969f1c05b0c4a80ce975240 10-Dec-2007 Gordon Henriksen <gordonhenriksen@mac.com> Adding a collector name attribute to Function in the IR. These
methods are new to Function:

bool hasCollector() const;
const std::string &getCollector() const;
void setCollector(const std::string &);
void clearCollector();

The assembly representation is as such:

define void @f() gc "shadow-stack" { ...

The implementation uses an on-the-side table to map Functions to
collector names, such that there is no overhead. A StringPool is
further used to unique collector names, which are extremely
likely to be unique per process.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@44769 91177308-0d34-0410-b5e6-96231b3b80d8
caml/llvm/llvm.ml
caml/llvm/llvm.mli
caml/llvm/llvm_ocaml.c
75e290f67aa7af3c0be993df4845c0defaf6ffa3 08-Dec-2007 Gordon Henriksen <gordonhenriksen@mac.com> Fix bug in constructing Ocaml option types in the bindings.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@44704 91177308-0d34-0410-b5e6-96231b3b80d8
caml/analysis/analysis_ocaml.c
caml/llvm/llvm_ocaml.c
516276edd4adadf8d521ae6ba29713dacc353c0a 03-Dec-2007 Gordon Henriksen <gordonhenriksen@mac.com> Track dependencies when creating symlinks to LLVM libraries next
to the ocaml bindings. This is required on Windows where 'ln -sf'
actually creates a copy. Thanks to Alain Frisch for noticing this.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@44547 91177308-0d34-0410-b5e6-96231b3b80d8
caml/Makefile.ocaml
0465fb5663a0108399df4c19db1afb4516328964 01-Dec-2007 Gordon Henriksen <gordonhenriksen@mac.com> Adding ocamldoc-style comments for the Ocaml bindings.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@44494 91177308-0d34-0410-b5e6-96231b3b80d8
caml/analysis/llvm_analysis.ml
caml/analysis/llvm_analysis.mli
caml/bitwriter/llvm_bitwriter.mli
caml/llvm/llvm.ml
caml/llvm/llvm.mli
caml/llvm/llvm_ocaml.c
ed29a28464d1b19d3e043a4cf1e95eedca745842 12-Oct-2007 Gordon Henriksen <gordonhenriksen@mac.com> Fix ocaml bindings for picky linkers. :)

Thanks to Török Edvin for helping to track this down.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@42927 91177308-0d34-0410-b5e6-96231b3b80d8
caml/Makefile.ocaml
2618a6c1122d5d2007787fb56156be44b21ab32a 08-Oct-2007 Gordon Henriksen <gordonhenriksen@mac.com> C and Objective Caml bindings for PHINode::addIncoming etc.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@42760 91177308-0d34-0410-b5e6-96231b3b80d8
caml/llvm/llvm.ml
caml/llvm/llvm.mli
caml/llvm/llvm_ocaml.c
633360c9d9312cd159ab4ef98e918924a06cfdbd 08-Oct-2007 Gordon Henriksen <gordonhenriksen@mac.com> Fixed downrev Ocaml compatibility.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@42744 91177308-0d34-0410-b5e6-96231b3b80d8
caml/llvm/llvm_ocaml.c
6d6203dff3560a2cc3ac8ec620ac3b105b0c7cc7 08-Oct-2007 Gordon Henriksen <gordonhenriksen@mac.com> C and Objective Caml bindings for getFunction and getNamedGlobal. Also enhanced
the Objective Caml 'declare_*' functions to behave more or less like
getOrInsertFunction.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@42740 91177308-0d34-0410-b5e6-96231b3b80d8
caml/llvm/llvm.ml
caml/llvm/llvm.mli
caml/llvm/llvm_ocaml.c
c84c16be9b29b4f805b92bfc2d93e2dfaa952f8f 07-Oct-2007 Gordon Henriksen <gordonhenriksen@mac.com> C and Objective Caml bindings for GlobalVariable::isConstant.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@42736 91177308-0d34-0410-b5e6-96231b3b80d8
caml/llvm/llvm.ml
caml/llvm/llvm.mli
caml/llvm/llvm_ocaml.c
1cf08fddc7413076dedad58dbb8d8d67e69a490f 07-Oct-2007 Gordon Henriksen <gordonhenriksen@mac.com> C and Objective Caml bindings for PATypeHolder.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@42713 91177308-0d34-0410-b5e6-96231b3b80d8
caml/llvm/llvm.ml
caml/llvm/llvm.mli
caml/llvm/llvm_ocaml.c
c0491ac8b6c24a7d0db8c0a60f76cfb1d66f84ab 06-Oct-2007 Gordon Henriksen <gordonhenriksen@mac.com> Bindings for the verifier.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@42707 91177308-0d34-0410-b5e6-96231b3b80d8
caml/Makefile
caml/Makefile.ocaml
caml/analysis/Makefile
caml/analysis/analysis_ocaml.c
caml/analysis/llvm_analysis.ml
caml/analysis/llvm_analysis.mli
caml/bitwriter/Makefile
caml/llvm/Makefile
d8be2154b38ea623f2320b26c9e1a40be0d0206b 06-Oct-2007 Gordon Henriksen <gordonhenriksen@mac.com> Deleting some unnecessary glue.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@42702 91177308-0d34-0410-b5e6-96231b3b80d8
caml/llvm/llvm.ml
caml/llvm/llvm.mli
caml/llvm/llvm_ocaml.c
957f9fe1cce0957bcde4a1093da83e17aaec6764 06-Oct-2007 Gordon Henriksen <gordonhenriksen@mac.com> Adopting a uniform naming convention for type constructors in
bindings (part le deux).

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@42701 91177308-0d34-0410-b5e6-96231b3b80d8
caml/llvm/llvm.ml
caml/llvm/llvm.mli
caml/llvm/llvm_ocaml.c
81a788176ecf158432af2b208b0a85321e5ec74a 06-Oct-2007 Gordon Henriksen <gordonhenriksen@mac.com> Adopting a uniform naming convention for type constructors in bindings.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@42698 91177308-0d34-0410-b5e6-96231b3b80d8
caml/llvm/llvm_ocaml.c
e3b989d4a4ba47f77d5d38c35ff17e9673d9f87b 06-Oct-2007 Gordon Henriksen <gordonhenriksen@mac.com> Adopting a uniform naming convention for constant constructors in bindings.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@42697 91177308-0d34-0410-b5e6-96231b3b80d8
caml/llvm/llvm.ml
caml/llvm/llvm.mli
caml/llvm/llvm_ocaml.c
4647569fe7706e76135a08ca0e5f90a447ccc5b4 06-Oct-2007 Gordon Henriksen <gordonhenriksen@mac.com> Adding C and Ocaml bindings for ConstantExpr.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@42696 91177308-0d34-0410-b5e6-96231b3b80d8
caml/llvm/llvm.ml
caml/llvm/llvm.mli
caml/llvm/llvm_ocaml.c
88cc699942f7f972ef9bc3afa1df0a44d059e1d8 06-Oct-2007 Gordon Henriksen <gordonhenriksen@mac.com> Wrapping Value::dump.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@42668 91177308-0d34-0410-b5e6-96231b3b80d8
caml/llvm/llvm.ml
caml/llvm/llvm.mli
caml/llvm/llvm_ocaml.c
3b802476d24a6b8c7d1e645f99b4c25ef6e97809 04-Oct-2007 Gordon Henriksen <gordonhenriksen@mac.com> Do use the actual ocaml stdlib (not the install dir) to find the
caml/*.h headers.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@42599 91177308-0d34-0410-b5e6-96231b3b80d8
caml/Makefile.ocaml
1d4e0782ba9761e3c664de53b837b74c0c818ff1 02-Oct-2007 Gordon Henriksen <gordonhenriksen@mac.com> Providing --with-ocaml-libdir for ./configure. The default is the
stdlib if it's beneath --prefix, and is libdir/ocaml otherwise.

If someone has a better way than this to test whether $B is a path
within $A, I'd love to hear it:

if test "$A" \< "$B" -a "$B" \< "${A}~"


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@42532 91177308-0d34-0410-b5e6-96231b3b80d8
caml/Makefile.ocaml
caml/bitwriter/llvm_bitwriter.mli
6530e9d8e6dfc8f16fe509701967e4ade99fae6c 02-Oct-2007 Gordon Henriksen <gordonhenriksen@mac.com> Add explicit --enable-bindings option to configure.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@42526 91177308-0d34-0410-b5e6-96231b3b80d8
akefile
06737056944683c6b02c405d710de9fd9b0f0e69 27-Sep-2007 Gordon Henriksen <gordonhenriksen@mac.com> Remove debugging.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@42385 91177308-0d34-0410-b5e6-96231b3b80d8
caml/llvm/llvm_ocaml.c
46abf91f7378fb7bb118d66fe6d69b5d3af1e9d5 26-Sep-2007 Gordon Henriksen <gordonhenriksen@mac.com> Added C and Ocaml bindings for functions, basic blocks, and
instruction creation. No support yet for instruction introspection.

Also eliminated allocas from the Ocaml bindings for portability,
and avoided unnecessary casts.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@42367 91177308-0d34-0410-b5e6-96231b3b80d8
caml/Makefile.ocaml
caml/bitwriter/Makefile
caml/llvm/llvm.ml
caml/llvm/llvm.mli
caml/llvm/llvm_ocaml.c
ab4456f10a72f3a7c73dac0e95578b9b7e4250b8 23-Sep-2007 Gordon Henriksen <gordonhenriksen@mac.com> Fix srcdir <> objdir builds with ocaml 2.10. Downrev versions don't care whether
'dir' exists in 'ocamldep -I dir ...', but recent ones demand that it actually
exists.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@42245 91177308-0d34-0410-b5e6-96231b3b80d8
caml/Makefile.ocaml
a8c3660c1a4be5d4887f1899bc3c8e62b875c6c0 20-Sep-2007 Gordon Henriksen <gordonhenriksen@mac.com> Incorporating review feedback for GC verifier patch.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@42163 91177308-0d34-0410-b5e6-96231b3b80d8
caml/Makefile.ocaml
caml/bitwriter/bitwriter_ocaml.c
caml/llvm/llvm_ocaml.c
ab8588bf3cef0bd79f6a83608447cb007af8900b 20-Sep-2007 Gabor Greif <ggreif@gmail.com> use typenames equivalent to
(u)intval, because latter are not
present in older caml/mlvalues.h
(e.g. 2004/07/07, 1.48.6.1)

Using this as a workaround for now,
until --without-ocaml works
or we settle on a better solution


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@42160 91177308-0d34-0410-b5e6-96231b3b80d8
caml/llvm/llvm_ocaml.c
9dbf8ed140666d7e26a586a91f3c5c16339151aa 19-Sep-2007 Gabor Greif <ggreif@gmail.com> include alloca.h if available. this helps Solaris, but intnat and uintnat types are still undefined, causing errors

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@42129 91177308-0d34-0410-b5e6-96231b3b80d8
caml/llvm/llvm_ocaml.c
344be5fbecec9908bab611eafeae0549ba3be6d7 18-Sep-2007 Gordon Henriksen <gordonhenriksen@mac.com> Tests of the ocaml (and thus C) bindings for constants.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@42101 91177308-0d34-0410-b5e6-96231b3b80d8
caml/llvm/llvm.ml
caml/llvm/llvm.mli
caml/llvm/llvm_ocaml.c
8ef426baa36639458f6777309db25c1768dc9c8a 18-Sep-2007 Gordon Henriksen <gordonhenriksen@mac.com> Adding ocaml language bindings for the vmcore and bitwriter libraries. These are
built atop the C language bindings, and user programs can link with them as
such:

# Bytecode
ocamlc -cc g++ llvm.cma llvmbitwriter.cma -o example example.ml
# Native
ocamlopt -cc g++ llvm.cmxa llvmbitwriter.cmxa -o example.opt example.ml

The vmcore.ml test exercises most/all of the APIs thus far bound. Unfortunately,
they're not yet numerous enough to write hello world. But:

$ cat example.ml
(* example.ml *)

open Llvm
open Llvm_bitwriter

let _ =
let filename = Sys.argv.(1) in
let m = create_module filename in

let v = make_int_constant i32_type 42 false in
let g = define_global "hello_world" v m in

if not (write_bitcode_file m filename) then exit 1;

dispose_module m;

$ ocamlc -cc g++ llvm.cma llvm_bitwriter.cma -o example example.ml
File "example.ml", line 11, characters 6-7:
Warning Y: unused variable g.
$ ./example example.bc
$ llvm-dis < example.bc
; ModuleID = '<stdin>'
@hello_world = global i32 42 ; <i32*> [#uses=0]

The ocaml test cases provide effective tests for the C interfaces.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@42093 91177308-0d34-0410-b5e6-96231b3b80d8
akefile
EADME.txt
caml/Makefile
caml/bitwriter/Makefile
caml/bitwriter/bitwriter_ocaml.c
caml/bitwriter/llvm_bitwriter.ml
caml/bitwriter/llvm_bitwriter.mli
caml/llvm/Makefile
caml/llvm/llvm.ml
caml/llvm/llvm.mli
caml/llvm/llvm_ocaml.c
0908d49c22775d20a88f595845b515f669d528f7 18-Sep-2007 Gordon Henriksen <gordonhenriksen@mac.com> git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@42090 91177308-0d34-0410-b5e6-96231b3b80d8
caml/Makefile.ocaml