Peter Zotov
9a62ec7308
[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
2013-11-05 09:13:39 +00:00
Peter Zotov
4ebe64ae7e
[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
2013-11-04 01:39:42 +00:00
Peter Zotov
6b8416192a
[OCaml] Documentation
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@193967 91177308-0d34-0410-b5e6-96231b3b80d8
2013-11-04 01:39:31 +00:00
Peter Zotov
8a3bdd6a3f
[OCaml] Implement missing LLVMCore APIs
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@193966 91177308-0d34-0410-b5e6-96231b3b80d8
2013-11-04 01:39:26 +00:00
Peter Zotov
e5de63c7de
[OCaml] Formatting
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@193965 91177308-0d34-0410-b5e6-96231b3b80d8
2013-11-04 01:39:18 +00:00
Peter Zotov
f00a9e0f79
[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
2013-11-03 08:27:45 +00:00
Peter Zotov
88d74c3093
[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
2013-11-03 08:27:37 +00:00
Peter Zotov
9d33bf70c2
[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
2013-11-03 08:27:32 +00:00
Peter Zotov
1185582dfd
[OCaml] Implement Llvm_vectorize bindings
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@193950 91177308-0d34-0410-b5e6-96231b3b80d8
2013-11-03 08:27:22 +00:00
Peter Zotov
fed0b34142
[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
2013-11-03 08:27:08 +00:00
Peter Zotov
30288ac402
[OCaml] Llvm_scalar_opts: add missing transforms
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@193946 91177308-0d34-0410-b5e6-96231b3b80d8
2013-11-03 07:54:17 +00:00
Peter Zotov
630109d30c
[OCaml] Llvm_ipo: add missing transforms
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@193945 91177308-0d34-0410-b5e6-96231b3b80d8
2013-11-03 07:54:08 +00:00
Sylvestre Ledru
9fd6ef28a3
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
2013-11-01 02:29:13 +00:00
Sylvestre Ledru
40a461d547
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
2013-11-01 01:14:24 +00:00
Sylvestre Ledru
3d841cb9d3
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
2013-11-01 01:10:58 +00:00
Sylvestre Ledru
e239d20d36
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
2013-11-01 00:30:02 +00:00
Sylvestre Ledru
dfc58e3bcf
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
2013-11-01 00:26:01 +00:00
Michael Gottesman
abaa85d88d
[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
2013-09-11 01:38:12 +00:00
Michael Gottesman
73c382f7fd
[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
2013-09-11 01:17:38 +00:00
Michael Gottesman
e23fa984f5
[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
2013-09-11 01:01:40 +00:00
Michael Gottesman
7dfa4bc471
[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
2013-09-11 00:52:47 +00:00
Michael Gottesman
f532d44830
[python-bindings] Export OpCode from core.py.
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@190468 91177308-0d34-0410-b5e6-96231b3b80d8
2013-09-11 00:41:07 +00:00
Michael Gottesman
a1e366058b
[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
2013-09-11 00:41:05 +00:00
Michael Gottesman
7400a858be
[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
2013-09-11 00:41:02 +00:00
Michael Gottesman
f495a26792
Fixed typo.
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@190459 91177308-0d34-0410-b5e6-96231b3b80d8
2013-09-11 00:27:23 +00:00
Michael Gottesman
37a8807323
[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
2013-09-11 00:23:14 +00:00
Michael Gottesman
6a63cd1281
[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
2013-09-11 00:23:10 +00:00
Michael Gottesman
8184ca673b
[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
2013-09-11 00:23:08 +00:00
Michael Gottesman
699f8c3524
[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
2013-09-11 00:23:05 +00:00
Michael Gottesman
86942d20b9
[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
2013-09-10 06:58:00 +00:00
Michael Gottesman
653212fdd1
[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
2013-09-10 06:57:57 +00:00
Bill Wendling
0c25b8f07e
We're in 3.4 land now.
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@181350 91177308-0d34-0410-b5e6-96231b3b80d8
2013-05-07 20:31:28 +00:00
Andrew Kaylor
d2755af8bd
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
2013-04-29 17:49:40 +00:00
Andrew Kaylor
2f5640d637
Fixing OCAML bindings for MCJIT
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@180232 91177308-0d34-0410-b5e6-96231b3b80d8
2013-04-25 00:03:58 +00:00
Gregory Szorc
fdddf77171
[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
2012-12-01 21:57:30 +00:00
Anders Waldenborg
17cfe87c39
[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
2012-11-20 22:27:55 +00:00
Micah Villmow
28ce1cc183
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
2012-10-19 20:36:22 +00:00
Micah Villmow
e2c207db1d
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
2012-10-08 17:06:25 +00:00
Micah Villmow
791cfc211a
Move TargetData to DataLayout.
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@165403 91177308-0d34-0410-b5e6-96231b3b80d8
2012-10-08 16:39:34 +00:00
Nuno Lopes
4d00161e0a
add support for ocaml 3.12
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@163096 91177308-0d34-0410-b5e6-96231b3b80d8
2012-09-02 14:42:56 +00:00
Bill Wendling
df6c55155c
Remove tabs.
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@160482 91177308-0d34-0410-b5e6-96231b3b80d8
2012-07-19 00:23:13 +00:00
Anders Waldenborg
e3295cc5be
[python] Add negative MemoryBuffer testcase
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@153248 91177308-0d34-0410-b5e6-96231b3b80d8
2012-03-22 11:23:52 +00:00
Anders Waldenborg
a8d873e178
[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
2012-03-21 08:34:58 +00:00
Anders Waldenborg
3595954130
[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
2012-03-21 08:18:19 +00:00
Gregory Szorc
92a3e9d63a
[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
2012-03-11 02:32:56 +00:00
Gregory Szorc
309a2c4e3b
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
2012-03-10 21:44:03 +00:00
Gregory Szorc
0b3aae906f
[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
2012-03-10 21:05:05 +00:00
Gregory Szorc
d3ac784fbb
[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
2012-03-10 21:01:14 +00:00
Gregory Szorc
b7487d4edc
[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
2012-03-10 05:50:56 +00:00
Gregory Szorc
61e22cd85c
[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
2012-03-10 04:41:24 +00:00
Gregory Szorc
07c32218f4
[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
2012-03-09 18:56:33 +00:00
Gregory Szorc
5ae04279e0
[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
2012-03-09 09:07:35 +00:00
Benjamin Kramer
efde86753d
ocaml bindings: landing pad is now the last opcode.
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@149997 91177308-0d34-0410-b5e6-96231b3b80d8
2012-02-07 18:58:19 +00:00
Jim Grosbach
c48d4dc8a9
Tidy up. s/Low Level Virtual Machine/LLVM/.
...
LLVM isn't an acronym anymore.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@148985 91177308-0d34-0410-b5e6-96231b3b80d8
2012-01-25 22:00:23 +00:00
Bob Wilson
eaf0608891
Update OCaml bindings for the new half float type.
...
Patch by Jonathan Ragan-Kelley!
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@147314 91177308-0d34-0410-b5e6-96231b3b80d8
2011-12-28 18:51:08 +00:00
Dylan Noblesmith
9421406aad
drop unneeded config.h includes
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@147197 91177308-0d34-0410-b5e6-96231b3b80d8
2011-12-22 23:04:07 +00:00
Daniel Dunbar
4ab406d7fc
LLVMBuild: Remove trailing newline, which irked me.
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@146409 91177308-0d34-0410-b5e6-96231b3b80d8
2011-12-12 19:48:00 +00:00
Wojciech Matyjewicz
6f274a5e81
Minor fixes in Makefiles for the OCaml bindings:
...
1. Interface files (.mli) are installed before compiled interface
files (.cmi) to preserve timestamp relation.
2. install-meta should use $(OcamlDir) instead of $(ObjDir).
3. Declared some targets as .PHONY.
Patch by Christophe Raffalli.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@144183 91177308-0d34-0410-b5e6-96231b3b80d8
2011-11-09 12:00:39 +00:00
Daniel Dunbar
a3a2dfd4a2
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
2011-11-03 18:53:17 +00:00
Torok Edwin
ff616cb440
OCaml bindings: add some missing functions and testcases.
...
The C bindings exposed some APIs that weren't covered by the OCaml bindings
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@141997 91177308-0d34-0410-b5e6-96231b3b80d8
2011-10-14 20:38:33 +00:00
Torok Edwin
0be167bab2
OCaml bindings: fix attributes to use all 32 bits
...
OCaml's int is limited to 31 bits on 32-bit architectures, so use Int32
explicitly.
Also add an unpack_attr, and {function,param,instr}_attr functions to read
the attributes.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@141996 91177308-0d34-0410-b5e6-96231b3b80d8
2011-10-14 20:38:24 +00:00
Torok Edwin
8da43bf60e
OCaml bindings: add icmp_predicate
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@141995 91177308-0d34-0410-b5e6-96231b3b80d8
2011-10-14 20:38:19 +00:00
Torok Edwin
2c4ae181c4
OCaml bindings: fix infinite recursion on string_of_lltype
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@141994 91177308-0d34-0410-b5e6-96231b3b80d8
2011-10-14 20:38:14 +00:00
Torok Edwin
6b228e506f
bindings: named struct support
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@141993 91177308-0d34-0410-b5e6-96231b3b80d8
2011-10-14 20:38:08 +00:00
Torok Edwin
4c4b71cec5
ocaml bindings: add findlib META support
...
This makes it easier to link against LLVM libs, especially if you are using
_oasis.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@141992 91177308-0d34-0410-b5e6-96231b3b80d8
2011-10-14 20:38:02 +00:00
Torok Edwin
3dd1674186
ocaml bindings: introduce classify_value
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@141991 91177308-0d34-0410-b5e6-96231b3b80d8
2011-10-14 20:37:56 +00:00
Torok Edwin
6563c87996
ocaml bindings: add getopcode for constant and instruction, and int64_of_const.
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@141990 91177308-0d34-0410-b5e6-96231b3b80d8
2011-10-14 20:37:49 +00:00
Torok Edwin
31116410de
bindings: tab and indentation fixes of my previous commits
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@141989 91177308-0d34-0410-b5e6-96231b3b80d8
2011-10-14 20:37:42 +00:00
Torok Edwin
ff12c99d13
ocaml/C bindings: type->isSized()
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@141288 91177308-0d34-0410-b5e6-96231b3b80d8
2011-10-06 12:13:28 +00:00
Torok Edwin
4917ec9ec7
add binding to read icmp predicate
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@141287 91177308-0d34-0410-b5e6-96231b3b80d8
2011-10-06 12:13:20 +00:00
Torok Edwin
4f661ab0fb
ocaml/C bindings: getmdstring, add num_op, get_op should work on metadata too
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@141286 91177308-0d34-0410-b5e6-96231b3b80d8
2011-10-06 12:13:11 +00:00
Torok Edwin
c44943ed4f
C/OCaml API to retrieve struct name.
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@141285 91177308-0d34-0410-b5e6-96231b3b80d8
2011-10-06 12:12:50 +00:00
Torok Edwin
624c5edcd4
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
2011-10-06 12:12:27 +00:00
Torok Edwin
48488a64fa
attempt to fix ocaml bindings: landing pads
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@140991 91177308-0d34-0410-b5e6-96231b3b80d8
2011-10-03 06:41:46 +00:00
Peter Collingbourne
e1686b08e4
Remove the build_unwind function from the OCaml bindings.
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@137193 91177308-0d34-0410-b5e6-96231b3b80d8
2011-08-10 01:10:17 +00:00
Benjamin Kramer
e2721f7550
Remove InvalidateStructLayoutInfo from the ocaml bindings.
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@136582 91177308-0d34-0410-b5e6-96231b3b80d8
2011-07-31 01:12:39 +00:00
Nick Lewycky
7c72c927c5
Update OCaml bindings. Opaque types are gone, type holders are gone and the
...
module operations that operate on type names are gone.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@134839 91177308-0d34-0410-b5e6-96231b3b80d8
2011-07-09 18:29:33 +00:00
Erick Tryzelaar
01b4ccb6f7
Fix compiling the ocaml kaleidoscope tutorials
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@125202 91177308-0d34-0410-b5e6-96231b3b80d8
2011-02-09 18:32:02 +00:00
Torok Edwin
a156efdf71
Fix OCaml bindings crash, PR8847.
...
See http://caml.inria.fr/mantis/view.php?id=4166
If we call only external functions from a module, then its 'let _' bindings
don't get executed, which means that the exceptions don't get registered for use
in the C code.
This in turn causes llvm_raise to call raise_with_arg() with a NULL pointer and
cause a segmentation fault.
The workaround is to declare all 'external' functions as 'val' in these .mli
files.
Also added a separate testcase (the testcase must call only external functions
for the bug to occur).
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@122497 91177308-0d34-0410-b5e6-96231b3b80d8
2010-12-23 15:49:26 +00:00
Eric Christopher
c9f1cddc51
Try to fix ocaml bindings.
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@116021 91177308-0d34-0410-b5e6-96231b3b80d8
2010-10-08 00:36:21 +00:00
Duncan Sands
26bb406c16
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
2010-09-15 08:17:10 +00:00
Dale Johannesen
bb811a2445
Add X86 MMX type to bitcode and Type.
...
(The Ada bindings probably need it too, but all the
obvious places to change say "do not edit this file".)
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@113618 91177308-0d34-0410-b5e6-96231b3b80d8
2010-09-10 20:55:01 +00:00
Benjamin Kramer
13ba2f9714
Remove unions from the ocaml bindings.
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@112363 91177308-0d34-0410-b5e6-96231b3b80d8
2010-08-28 09:47:42 +00:00
Bill Wendling
4e34d50272
- 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
2010-08-24 20:00:52 +00:00
Bob Wilson
d6850b0f37
Fix a typo.
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@111627 91177308-0d34-0410-b5e6-96231b3b80d8
2010-08-20 14:54:37 +00:00
Erick Tryzelaar
f7af931930
Expose LLVMSetOperand and LLVMGetNumOperands to llvm-c and ocaml.
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@111625 91177308-0d34-0410-b5e6-96231b3b80d8
2010-08-20 14:51:22 +00:00
Erick Tryzelaar
e127410550
Fix arguments to ocaml's llvm_params.
...
Thanks to Jianzhou Zhao for finding this.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@111624 91177308-0d34-0410-b5e6-96231b3b80d8
2010-08-20 14:51:16 +00:00
Bill Wendling
5e721d7682
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
2010-07-01 21:55:59 +00:00
Bill Wendling
07d3177117
Revert r107205 and r107207.
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@107215 91177308-0d34-0410-b5e6-96231b3b80d8
2010-06-29 22:34:52 +00:00
Bill Wendling
207855cff9
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
2010-06-29 21:24:00 +00:00
Chris Lattner
0941534c71
add attributes and module level asm to the ocaml bindings,
...
patch by Patrick Walton!
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@100932 91177308-0d34-0410-b5e6-96231b3b80d8
2010-04-10 17:52:58 +00:00
Erick Tryzelaar
49457b8158
Add OCaml tutorial to the examples.
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@97966 91177308-0d34-0410-b5e6-96231b3b80d8
2010-03-08 19:32:27 +00:00
Erick Tryzelaar
e623050048
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
2010-03-06 00:30:06 +00:00
Erick Tryzelaar
7eb4beb4cd
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
2010-03-03 23:51:34 +00:00
Erick Tryzelaar
9c7c566efe
Rename some ocaml functions.
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@97684 91177308-0d34-0410-b5e6-96231b3b80d8
2010-03-03 23:51:30 +00:00
Erick Tryzelaar
7b3afb4547
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
2010-03-03 23:51:28 +00:00
Erick Tryzelaar
4ad188ba8d
Expose alignment and stack alignment attributes to llvm-c and ocaml.
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@97682 91177308-0d34-0410-b5e6-96231b3b80d8
2010-03-03 23:51:25 +00:00
Erick Tryzelaar
6bd7730426
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
2010-03-02 23:59:08 +00:00
Erick Tryzelaar
df75eb64a7
Don't use an ocaml keyword in an ocamldoc comment.
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@97611 91177308-0d34-0410-b5e6-96231b3b80d8
2010-03-02 23:59:05 +00:00
Erick Tryzelaar
0dd27da184
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
2010-03-02 23:59:03 +00:00
Erick Tryzelaar
16609f3c5c
Remove module providers from ocaml.
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@97609 91177308-0d34-0410-b5e6-96231b3b80d8
2010-03-02 23:59:00 +00:00
Erick Tryzelaar
705443ffd3
Add support for use to ocaml.
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@97586 91177308-0d34-0410-b5e6-96231b3b80d8
2010-03-02 20:32:32 +00:00
Erick Tryzelaar
b65c5f2ec3
Add support getting the operands of a User to ocaml.
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@97414 91177308-0d34-0410-b5e6-96231b3b80d8
2010-02-28 20:45:03 +00:00
Erick Tryzelaar
6ba5c56cf5
Add support for global aliases to ocaml.
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@97413 91177308-0d34-0410-b5e6-96231b3b80d8
2010-02-28 20:44:58 +00:00
Erick Tryzelaar
ce89b4e66f
Add support for inserting inline asm to ocaml.
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@97412 91177308-0d34-0410-b5e6-96231b3b80d8
2010-02-28 20:44:53 +00:00
Erick Tryzelaar
5b0a7741ad
Add support for getting a null pointer.
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@97380 91177308-0d34-0410-b5e6-96231b3b80d8
2010-02-28 09:46:27 +00:00
Erick Tryzelaar
d80ce75687
Add a way to look up a type by it's name in a module.
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@97379 91177308-0d34-0410-b5e6-96231b3b80d8
2010-02-28 09:46:21 +00:00
Erick Tryzelaar
68bab9833d
Add replace_all_uses_with to ocaml.
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@97378 91177308-0d34-0410-b5e6-96231b3b80d8
2010-02-28 09:46:16 +00:00
Erick Tryzelaar
8e130b1d0d
Add support for global variables in an address space for llvm-c and ocaml.
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@97377 91177308-0d34-0410-b5e6-96231b3b80d8
2010-02-28 09:46:13 +00:00
Erick Tryzelaar
c59286bff1
Add indirect br support to llvm-c and ocaml.
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@97376 91177308-0d34-0410-b5e6-96231b3b80d8
2010-02-28 09:46:06 +00:00
Erick Tryzelaar
46c80e0c56
Add metadata functions to llvm-c and ocaml.
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@97375 91177308-0d34-0410-b5e6-96231b3b80d8
2010-02-28 09:45:59 +00:00
Erick Tryzelaar
19f047f5f6
Add the new builder arthmetic instructions to llvm-c and ocaml.
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@97372 91177308-0d34-0410-b5e6-96231b3b80d8
2010-02-28 05:51:43 +00:00
Erick Tryzelaar
1940dd10dd
Add the new union arthmetic instructions to llvm-c and ocaml.
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@97371 91177308-0d34-0410-b5e6-96231b3b80d8
2010-02-28 05:51:33 +00:00
Erick Tryzelaar
628b76ecb3
Fix incorrect uses of an ocaml llbuilder without extracting it from ocaml.
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@97368 91177308-0d34-0410-b5e6-96231b3b80d8
2010-02-28 05:51:16 +00:00
Erick Tryzelaar
d2b4aff4bc
Remove malloc and free from the ocaml bindings.
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@97367 91177308-0d34-0410-b5e6-96231b3b80d8
2010-02-28 05:51:09 +00:00
Jeffrey Yasskin
70b7007307
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
2010-02-27 00:25:18 +00:00
Erick Tryzelaar
1430425539
Fix some ocaml documentation
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@96323 91177308-0d34-0410-b5e6-96231b3b80d8
2010-02-16 03:45:17 +00:00
Chris Lattner
c3c3be582d
fix llvm_build_struct_gep for PR6167, patch by
...
Peter Hawkins!
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@95644 91177308-0d34-0410-b5e6-96231b3b80d8
2010-02-09 01:39:46 +00:00
Jakob Stoklund Olesen
570a4a5d9c
Reintroduce the InlineHint function attribute.
...
This time it's for real! I am going to hook this up in the frontends as well.
The inliner has some experimental heuristics for dealing with the inline hint.
When given a -respect-inlinehint option, functions marked with the inline
keyword are given a threshold just above the default for -O3.
We need some experiments to determine if that is the right thing to do.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@95466 91177308-0d34-0410-b5e6-96231b3b80d8
2010-02-06 01:16:28 +00:00
Chris Lattner
dd7da4f368
This corrects an error in the type of the Llvm.dispose_context function.
...
Patch by James Woodyatt!
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@94343 91177308-0d34-0410-b5e6-96231b3b80d8
2010-01-24 00:25:09 +00:00
Erick Tryzelaar
263d989a71
Fix bug 5992: O'Caml's llvm_create_module was treating the context as a string.
...
Thanks Andy Ray for catching this!
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@93588 91177308-0d34-0410-b5e6-96231b3b80d8
2010-01-15 23:49:16 +00:00
Eric Christopher
606a1d1f59
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
2010-01-15 21:36:30 +00:00
Bob Wilson
3994b4b05e
Fix another parallel make race condition.
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@91709 91177308-0d34-0410-b5e6-96231b3b80d8
2009-12-18 20:12:14 +00:00
Erick Tryzelaar
f24bfa7f79
Expose the rest of the attribute settings.
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@82965 91177308-0d34-0410-b5e6-96231b3b80d8
2009-09-28 04:42:47 +00:00
Erick Tryzelaar
4aee041000
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
2009-09-28 04:42:36 +00:00
Erick Tryzelaar
4626268428
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
2009-09-14 21:54:32 +00:00
Bob Wilson
ae77a20148
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
2009-09-11 18:42:18 +00:00
Erick Tryzelaar
52248ff682
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
2009-08-30 23:41:20 +00:00
Erick Tryzelaar
b02b878827
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
2009-08-19 17:32:24 +00:00
Erick Tryzelaar
6793dd9769
Add the ocaml binding to LLVMBuildAggregateRet.
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@79414 91177308-0d34-0410-b5e6-96231b3b80d8
2009-08-19 08:37:00 +00:00
Erick Tryzelaar
5371aa2a1c
Allow passing around LLVMContext in ocaml.
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@79410 91177308-0d34-0410-b5e6-96231b3b80d8
2009-08-19 06:40:29 +00:00
Edward O'Callaghan
e1b80b6946
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
2009-08-18 00:24:36 +00:00
Erick Tryzelaar
45d6ac2cc1
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
2009-08-16 23:37:03 +00:00
Erick Tryzelaar
5c1c208296
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
2009-08-16 02:20:57 +00:00
Erick Tryzelaar
1b42cfd1ca
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
2009-08-16 02:20:37 +00:00
Erick Tryzelaar
e0f8bf6cbe
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
2009-08-16 02:20:24 +00:00
Erick Tryzelaar
86c9d6b33b
Fix comment in llvm.mli.
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@78591 91177308-0d34-0410-b5e6-96231b3b80d8
2009-08-10 19:45:00 +00:00
Erick Tryzelaar
2b526fec6a
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
2009-08-10 19:44:45 +00:00
Bob Wilson
32eaeca34f
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
2009-07-21 21:52:57 +00:00
Reid Kleckner
4b1511b027
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
2009-07-18 00:42:18 +00:00
Bob Wilson
e46161f10c
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
2009-06-24 21:09:18 +00:00
Chris Lattner
1d97ca85ad
remove dead makefile flags.
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@74064 91177308-0d34-0410-b5e6-96231b3b80d8
2009-06-24 05:28:55 +00:00
Nick Lewycky
7a0370f66a
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
2009-05-30 05:06:04 +00:00
Duncan Sands
2f82376c48
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
2009-05-22 09:22:17 +00:00
Duncan Sands
ef854af5bd
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
2009-05-21 15:52:21 +00:00
Duncan Sands
777d2306b3
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
2009-05-09 07:06:46 +00:00
Duncan Sands
e149e9960b
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
2009-05-06 12:21:17 +00:00
Bill Wendling
610079287e
Fix the JIT bindings for ocaml.
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@70454 91177308-0d34-0410-b5e6-96231b3b80d8
2009-04-30 00:43:39 +00:00
Nick Lewycky
14b9ed13e7
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
2009-04-13 07:02:32 +00:00
Bob Wilson
46c95bbe06
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
2009-03-06 00:00:58 +00:00